mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-05-31 05:50:48 +00:00
Implemented handling of writing directions. These are needed for the
upcoming new RTFProducer. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@16551 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
091eec6d4c
commit
23014ff1dc
1 changed files with 36 additions and 0 deletions
|
@ -127,6 +127,22 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
return defaultStyle;
|
||||
}
|
||||
|
||||
+ (void) initialize
|
||||
{
|
||||
if (self == [NSParagraphStyle class])
|
||||
{
|
||||
/* Set the class version to 2, as the writing direction is now
|
||||
stored in the encoding */
|
||||
[self setVersion: 2];
|
||||
}
|
||||
}
|
||||
|
||||
+ (NSWritingDirection) defaultWritingDirectionForLanguage: (NSString*) language
|
||||
{
|
||||
// FIXME
|
||||
return NSWritingDirectionNaturalDirection;
|
||||
}
|
||||
|
||||
- (void) dealloc
|
||||
{
|
||||
if (self == defaultStyle)
|
||||
|
@ -150,6 +166,7 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
_minimumLineHeight = 0.0;
|
||||
_paragraphSpacing = 0.0;
|
||||
_tailIndent = 0.0;
|
||||
_baseDirection = NSWritingDirectionNaturalDirection;
|
||||
_tabStops = [[NSMutableArray allocWithZone: [self zone]]
|
||||
initWithCapacity: 12];
|
||||
return self;
|
||||
|
@ -240,6 +257,11 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
return _lineBreakMode;
|
||||
}
|
||||
|
||||
- (NSWritingDirection) baseWritingDirection
|
||||
{
|
||||
return _baseDirection;
|
||||
}
|
||||
|
||||
- (id) copyWithZone: (NSZone*)aZone
|
||||
{
|
||||
if (NSShouldRetainWithZone (self, aZone) == YES)
|
||||
|
@ -306,6 +328,11 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
}
|
||||
}
|
||||
|
||||
if ([aCoder versionForClassName: @"NSParagraphStyle"] >= 2)
|
||||
{
|
||||
[aCoder decodeValueOfObjCType: @encode(int) at: &_baseDirection];
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
|
@ -349,6 +376,8 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
count: count
|
||||
at: types];
|
||||
}
|
||||
|
||||
[aCoder encodeValueOfObjCType: @encode(int) at: &_baseDirection];
|
||||
}
|
||||
|
||||
|
||||
|
@ -370,6 +399,7 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
C(_maximumLineHeight);
|
||||
C(_alignment);
|
||||
C(_lineBreakMode);
|
||||
C(_baseDirection);
|
||||
#undef C
|
||||
|
||||
return [_tabStops isEqualToArray: other->_tabStops];
|
||||
|
@ -443,6 +473,11 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
_maximumLineHeight = aFloat;
|
||||
}
|
||||
|
||||
- (void) setBaseWritingDirection: (NSWritingDirection)direction
|
||||
{
|
||||
_baseDirection = direction;
|
||||
}
|
||||
|
||||
- (void) addTabStop: (NSTextTab*)anObject
|
||||
{
|
||||
unsigned count = [_tabStops count];
|
||||
|
@ -506,6 +541,7 @@ static NSParagraphStyle *defaultStyle = nil;
|
|||
_minimumLineHeight = p->_minimumLineHeight;
|
||||
_paragraphSpacing = p->_paragraphSpacing;
|
||||
_tailIndent = p->_tailIndent;
|
||||
_baseDirection = p->_baseDirection;
|
||||
}
|
||||
|
||||
- (id) copyWithZone: (NSZone*)aZone
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue