Re: How to Truncate lines in NSScrollView/NSClipView/NSTextView Combo
Re: How to Truncate lines in NSScrollView/NSClipView/NSTextView Combo
- Subject: Re: How to Truncate lines in NSScrollView/NSClipView/NSTextView Combo
- From: Dave <email@hidden>
- Date: Mon, 25 Apr 2016 17:08:08 +0100
I tried the following:
myTextView = [self documentView];
[[[myTextView textStorage] mutableString] appendString:theString];
myRange = NSMakeRange(0,[[[myTextView textStorage] mutableString] length] - 1);
[[myTextView textStorage] addAttribute:NSParagraphStyleAttributeName value:[NSNumber numberWithInt:NSLineBreakByTruncatingTail] range:myRange];
But this results in nothing being displayed in the ScrollView/TextView.
I thought of appending an Attributed string to the Text Storage, but I can’t find a method that accepts an Attributed String, so not sure how I’m supposed to just set it to NOT wrap!
If anyone knows the secret please let me know!
Cheers
Dave
> On 25 Apr 2016, at 16:34, Dave <email@hidden> wrote:
>
> Hi Bill,
>
> I’m familiar with NSAttributedString and friends. I had thought that there was a higher level interface to it as it seems like a common thing to want to do.
>
> Basically my ScrollView is just a scrolling line log similar to XCode’s NSLog window. I’m just appending an NSString to the Document View like this:
>
> myTextView = [self documentView];
> [[[myTextView textStorage] mutableString] appendString:theString];
>
> Should I convert “theString” to a NSAttributedString and then set the attributes of this string, or set the attributes of [[[myTextView textStorage] mutableString] ? The reason I ask is because the TextView can get large and I’m not sure if setting the attributes each time would slow things down?
>
> Thanks a lot,
> All the Best
> Dave
>
>
>
>> On 25 Apr 2016, at 12:28, Bill Cheeseman <email@hidden> wrote:
>>
>>
>>> On Apr 25, 2016, at 6:48 AM, Dave <email@hidden> wrote:
>>>
>>> I can’t believe its this hard to set wrapping or not and I can’t find real info on this from searching either.
>>
>> For your purposes, the key point is that NSTextStorage is a subclass of NSMutableAttributedString, which is in turn a subclass of NSAttributedString. You should be looking at methods like NSMutableAttributedString's -setAttributes:range:. Basically, you start by creating a dictionary of formatting attributes, then you provide it to -setAttributes:range: with the range of characters to which you want those attributes applied. That's why they're called "attributed" strings -- they are strings with formatting attributes.
>>
>> Look at the introduction to the NSAttributedString technical reference document, the NSAttributedString AppKit Additions reference document, Text Attribute Programming Topics, and the Attributed String Programming Guide. The "Paragraph Attributes" section of the Text Attribute Programming Topics is especially pertinent to your question, including its cross reference to the much more detailed Ruler and Paragraph Style Programming Topics.
>>
>> --
>>
>> Bill Cheeseman - email@hidden
>>
>
>
> _______________________________________________
>
> Cocoa-dev mailing list (email@hidden)
>
> 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:
>
> This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden