Welcome to MSDN Blogs Sign in | Join | Help

Browse by Tags

All Tags » tsf   (RSS)
The TSF samples (long missing from MSDN) have finally been uploaded to the MSDN Code Gallery .  The documentation is also available (in plain-text form) in each sample.  MSDN’s web page should be updated soon to point to the code gallery. Read More...
Many people have emailed me asking about the TSF samples on MSDN.  They’re supposed to be on MSDN code gallery, although they don’t appear to be there. They are, however, part of the Windows SDK . After installation, you'll find them in %programfiles%\Microsoft Read More...
Well, for one thing, it’s not that great for grabbing the current selection in the foreground application. There are several problems here: 1) You have to get your text service loaded into the target application. This can be slow. 2) Once your text service Read More...
In an earlier post on keyboards , I talked briefly about text service categories.  I'd like to talk more about categories. TSF will make sure that at most one text service in any category is enabled at any given time. So, for example, you can enable Read More...
If you've tried to use the modified version of Scintilla that I described in my MSDN article , you will find that the zipped sources don't actually have the changes that I made. That was my fault; when I was packaging the sources, I had two versions of Read More...
I got caught by this recently. ITfCompartmentEventSink::OnChange means what it says. If you repeatedly store the same value into a global compartment, the event sinks will not fire. If you store a different value into the compartment, the event sinks Read More...
I've been working with compartments recently, and I've run across a few 'features' that tripped me up. I figure if I've run across them, others have too. Although MSDN says that you can put integers, BSTRs, and interface pointers into a compartment, you Read More...
I received an interesting email the other day asking about how to get the character code from the parameters passed to the ITfKeyEventSink::OnKeyDown method. The answer is that most keyboard related text services only work with a particular keyboard layout, Read More...
You might have noticed that I haven't really talked about text stores on this blog. That's because I've been working on an article for MSDN Magazine on just that very subject. It's in the July 2007 issue, and I just got my copy in the mail, so if you're Read More...
So how do you create the candidates from within the text service? Well, the first thing you need is the original input, and you need to know what text was created from the original input. Almost all text services (there might be a few that don't do this) Read More...
Kirby left a comment to my post on candidates asking when a text service should create an ITfCandidateList. The answer is that when the text service wants to show candidates (via a preserved key or other mechanism), it should show its modal UI, and quite Read More...
The TSF tour ends here, with a brief discussion of UI Elements in Vista If your text service wishes to be available in full-screen applications like games, it must implement ITfUIElement , and call the ITfUIElementMgr whenever the text service wants to Read More...
In Windows Vista, TSF added the ability to run in locations where it had previously been disabled. For example, TSF is now available on secure desktops, in full screen (DirectX) applications, and in MTA threads. However, text services have to be aware Read More...
If your text service supports multiple interpretations of the same input, and you wish to allow users to correct the initial interpretation (for dictation, we call this 'correction'; IMEs tend to call it 'reconversion'), your text service will need to Read More...
TSF allows text services to offer optional extension points through the ITfFunctionProvider interface. Indirection through the function provider allows text services to minimize memory usage and startup time by instantiating services when requested, rather Read More...
More Posts Next page »
 
Page view tracker