I imagine it uses some API such as NSLayoutManager's:

- (NSUInteger)glyphIndexForPoint:(NSPoint)point inTextContainer: (NSTextContainer *)container fractionOfDistanceThroughGlyph:(CGFloat *)partialFraction


One you have the glyph index you can find the range of the word it belongs to.

One you have the string of the word it belongs to, you can look it up in dictionary.app using the Application Services API.


hth, though I am guessing to some extent.



G.





On 28 Apr 2008, at 3:55 pm, Ying Bian wrote:
Hi,



I am thinking of developing my own dictionary tool which can detects the
word

under the cursor and automatically (or when a modifier key is pressed) popup
a

translation window.



After researching for a while, I find it more tricky than I estimated.



The accessibility APIs may of help, but for text in a text view, the
returned information

is not enough to reproduce the layout and let me detect the "exact" word
over which the

mouse hovers.



There is a similar functionality in Lepoard (I am not sure if it exists
prior to 10.5):

in any cocoa-based applications, if you press Apple + Ctrl + D, the current
word under

cursor is automatically selected and translated in a popup window. It seems
to me not

implemented with accessibility APIs as it does not require to enable access
for assistive

devices in the Universal Access System Preference panel.



Then, how is this implemented?  I want to get some hints from this.



Thanks,

--
B.Y.
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/graham.cox%40bigpond.com

This email sent to [EMAIL PROTECTED]

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to