On Nov 6, 2011, at 8:39 AM, Nick wrote: > Keary, Douglas > Could you please give me a hint what methods to search for? > Basically I need an NSRange of the current line (or that part of it, whereb > the cursor is in, if the line is word-wrapped). Then I'll simply change this > substring's attributes. > Should i find the current text cursor's position (location) in text, and keep > invoking locationForGlyphAtIndex for every previous symbol to this cursor > location, up till I get the smallest value? > What's the right way here?
This is all theory, and I have not had to do this, but if it were me I would look at the methods with the words "lineFragment" in them will help isolate the line. I imagine that once you get the glyph nearest the insertion point, you should then be able to use lineFragmentUsedRectForGlyphAtIndex:effectiveRange: and passing its return value to -setSelectedRange:. That should at least get you close if it doesn't do the trick. Also, if you didn't notice from another responder, you can get the appropriate NSLayoutManager from the NSTextView itself. HTH, > 2011/11/4 Keary Suska <cocoa-...@esoteritech.com> > On Nov 4, 2011, at 7:19 AM, Nick wrote: > > > Hello > > Basically the question is about getting the NSRange of the line of > > NSTextView where the text input cursor is currently in. > > Word wraps are considered as legal 'new lines' - only one line should > > actually be highlighted. > > > > How could I do this (get an NSRange of a single line)? > > Cocoa's text handling system is a bit complex (you should read the > text-handling guide) but it shouldn't be too difficult. The object you > probably need to talk to is the appropriate NSLayoutManager (probably just > one) which belongs to the NSTextStorage of the NSTextView (whew!). That > should get you started. Keary Suska Esoteritech, Inc. "Demystifying technology for your home or business" _______________________________________________ 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 arch...@mail-archive.com