Truncate outline menu label

This commit is contained in:
1024jp 2016-01-26 18:33:37 +09:00
parent 004f29ba51
commit 0ef0108333
2 changed files with 6 additions and 0 deletions

View File

@ -37,6 +37,7 @@ develop
- Improve encoding compatibility check.
- Better error message on file opening.
- Take a safety measure for in case the key binding setting file is corrupt.
- Truncate outline label in the navigation bar by appending ellipsis if it overflows.
- On El Capitan, make option control of the document open panel visible.

View File

@ -162,6 +162,11 @@ static const NSTimeInterval kDuration = 0.25;
NSMutableDictionary<NSString *, id> *attrs = [NSMutableDictionary dictionary];
NSMutableParagraphStyle *paragraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
[paragraphStyle setLineBreakMode:NSLineBreakByTruncatingMiddle];
[paragraphStyle setTighteningFactorForTruncation:0]; // don't tighten
attrs[NSParagraphStyleAttributeName] = paragraphStyle;
NSFontTraitMask fontTrait = [outlineItem[CEOutlineItemStyleBoldKey] boolValue] ? NSBoldFontMask : 0;
fontTrait |= [outlineItem[CEOutlineItemStyleItalicKey] boolValue] ? NSItalicFontMask : 0;
NSFont *font = [[NSFontManager sharedFontManager] convertFont:defaultFont toHaveTrait:fontTrait];