Fix for issue #817 (Support for alignment and line break mode in NSTextField/CPTextField)

This commit is contained in:
Aparajita Fishman committed 2010-08-09 10:16:36 -04:00
1 parent 0adfd30ea3
commit dc6e7aefe4
3 files changed
+10 -12

No files matched your search

+7
View File
@@ -1145,6 +1145,7 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey",
CPTextFieldBezelStyleKey = "CPTextFieldBezelStyleKey",
CPTextFieldDrawsBackgroundKey = "CPTextFieldDrawsBackgroundKey",
CPTextFieldLineBreakModeKey = "CPTextFieldLineBreakModeKey",
CPTextFieldAlignmentKey = "CPTextFieldAlignmentKey",
CPTextFieldBackgroundColorKey = "CPTextFieldBackgroundColorKey",
CPTextFieldPlaceholderStringKey = "CPTextFieldPlaceholderStringKey";
@@ -1167,6 +1168,9 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey",
[self setDrawsBackground:[aCoder decodeBoolForKey:CPTextFieldDrawsBackgroundKey]];
[self setTextFieldBackgroundColor:[aCoder decodeObjectForKey:CPTextFieldBackgroundColorKey]];
[self setLineBreakMode:[aCoder decodeIntForKey:CPTextFieldLineBreakModeKey]];
[self setAlignment:[aCoder decodeIntForKey:CPTextFieldAlignmentKey]];
[self setPlaceholderString:[aCoder decodeObjectForKey:CPTextFieldPlaceholderStringKey]];
}
@@ -1189,6 +1193,9 @@ var CPTextFieldIsEditableKey = "CPTextFieldIsEditableKey",
[aCoder encodeObject:_textFieldBackgroundColor forKey:CPTextFieldBackgroundColorKey];
[aCoder encodeInt:[self lineBreakMode] forKey:CPTextFieldLineBreakModeKey];
[aCoder encodeInt:[self alignment] forKey:CPTextFieldAlignmentKey];
[aCoder encodeObject:_placeholderString forKey:CPTextFieldPlaceholderStringKey];
}
+1 -11
View File
@@ -67,19 +67,9 @@
_isContinuous = (flags & 0x00080100) ? YES : NO;
_wraps = (flags & 0x00100000) ? NO : YES;
_alignment = (flags2 & 0x1c000000) >> 26;
_lineBreakMode = (flags2 & 0x0E00) >> 9;
_controlSize = (flags2 & 0xE0000) >> 17;
switch ((flags2 & 0x00000F00) >> 8)
{
case 0: _lineBreakMode = CPLineBreakByWordWrapping; break;
case 2: _lineBreakMode = CPLineBreakByCharWrapping; break;
case 6: _lineBreakMode = CPLineBreakByTruncatingHead; break;
case 8: _lineBreakMode = CPLineBreakByTruncatingTail; break;
case 10: _lineBreakMode = CPLineBreakByTruncatingMiddle; break;
case 4:
default: _lineBreakMode = CPLineBreakByClipping; break;
}
_objectValue = [aCoder decodeObjectForKey:@"NSContents"];
_font = [aCoder decodeObjectForKey:@"NSSupport"];
}
+2 -1
View File
@@ -49,7 +49,8 @@
[self setBezelStyle:[cell bezelStyle]];
[self setDrawsBackground:[cell drawsBackground]];
//[self setLineBreakMode:???];
[self setLineBreakMode:[cell lineBreakMode]];
[self setAlignment:[cell alignment]];
[self setTextFieldBackgroundColor:[cell backgroundColor]];
[self setPlaceholderString:[cell placeholderString]];