Add support for usesMultilineMode and fix wraps and scrolls in nib2cib

This commit is contained in:
Antoine Mercadal
2014-11-13 00:10:22 -08:00
parent 0c7b2ae702
commit e7cde2ca5f
2 changed files with 22 additions and 16 deletions
+18 -16
View File
@@ -51,6 +51,7 @@
int _lineBreakMode @accessors(readonly, getter=lineBreakMode);
CPFormatter _formatter @accessors(readonly, getter=formatter);
int _tag @accessors(readonly, getter=tag);
BOOL _usesSingleLineMode @accessors(readonly, getter=usesSingleLineMode);
}
- (id)initWithCoder:(CPCoder)aCoder
@@ -62,22 +63,23 @@
var flags = [aCoder decodeIntForKey:@"NSCellFlags"],
flags2 = [aCoder decodeIntForKey:@"NSCellFlags2"];
_state = (flags & 0x80000000) ? CPOnState : CPOffState;
_isHighlighted = (flags & 0x40000000) ? YES : NO;
_isEnabled = (flags & 0x20000000) ? NO : YES;
_isEditable = (flags & 0x10000000) ? YES : NO;
_isBordered = (flags & 0x00800000) ? YES : NO;
_isBezeled = (flags & 0x00400000) ? YES : NO;
_isSelectable = (flags & 0x00200000) ? YES : NO;
_isScrollable = (flags & 0x00100000) ? YES : NO;
_isContinuous = (flags & 0x00080100) ? YES : NO;
_scrolls = (flags & 0x00100000) && (flags & 0x00000040);
_wraps = (flags & 0x00100000 === 0) && (flags & 0x00000040 === 0);
_truncates = !(flags & 0x00100000) && (flags & 0x00000040);
_alignment = (flags2 & 0x1c000000) >> 26;
_lineBreakMode = (flags2 & 0x0E00) >> 9;
_controlSize = (flags2 & 0xE0000) >> 17;
_sendsActionOnEndEditing = (flags2 & 0x00400000) ? YES : NO;
_state = (flags & 0x80000000) ? CPOnState : CPOffState;
_isHighlighted = (flags & 0x40000000) ? YES : NO;
_isEnabled = (flags & 0x20000000) ? NO : YES;
_isEditable = (flags & 0x10000000) ? YES : NO;
_isBordered = (flags & 0x00800000) ? YES : NO;
_isBezeled = (flags & 0x00400000) ? YES : NO;
_isSelectable = (flags & 0x00200000) ? YES : NO;
_isScrollable = (flags & 0x00100000) ? YES : NO;
_isContinuous = (flags & 0x00080100) ? YES : NO;
_scrolls = (flags & 0x00100000) && (flags & 0x00000040) ? YES : NO;
_wraps = !(flags & 0x00100000) && !(flags & 0x00000040) ? YES : NO;
_truncates = (flags & 0x00100000) && !(flags & 0x00000040) ? YES : NO;
_alignment = (flags2 & 0x1c000000) >> 26;
_lineBreakMode = (flags2 & 0x0E00) >> 9;
_controlSize = (flags2 & 0xE0000) >> 17;
_sendsActionOnEndEditing = (flags2 & 0x00400000) ? YES : NO;
_usesSingleLineMode = (flags2 & 0xF4240) ? YES : NO;
_tag = [aCoder decodeIntForKey:@"NSTag"];
+4
View File
@@ -54,6 +54,10 @@
[self setPlaceholderString:[cell placeholderString]];
[self _setUsesSingleLineMode:[cell usesSingleLineMode]];
[self _setWraps:[cell wraps]];
[self _setScrolls:[cell scrolls]];
var textColor = [cell textColor],
defaultColor = [self currentValueForThemeAttribute:@"text-color"];