mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-23 16:20:46 +00:00
Source/NSMenuItem.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@13489 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
199b2da394
commit
87358ab5ec
2 changed files with 49 additions and 18 deletions
|
@ -1,3 +1,10 @@
|
|||
2002-04-17 Pierre-Yves Rivaille <pyrivail@ens-lyon.gt>
|
||||
|
||||
* Source/NSMenuItem.m:
|
||||
([NSMenuItem -initWithCoder:], [NSMenuItem -encodeWithCoder:])
|
||||
New encoding scheme. With the new scheme, menus can be loaded
|
||||
properly from a gorm file.
|
||||
|
||||
2002-04-16 Richard Frith-Macdonald <rfm@gnu.org>
|
||||
|
||||
* Source/NSPasteboard.m: Improve logging on server startup.
|
||||
|
|
|
@ -72,7 +72,7 @@ static Class imageClass;
|
|||
{
|
||||
if (self == [NSMenuItem class])
|
||||
{
|
||||
[self setVersion: 1];
|
||||
[self setVersion: 2];
|
||||
imageClass = [NSImage class];
|
||||
}
|
||||
}
|
||||
|
@ -448,32 +448,56 @@ static Class imageClass;
|
|||
[aCoder encodeObject: _offStateImage];
|
||||
[aCoder encodeObject: _mixedStateImage];
|
||||
[aCoder encodeValueOfObjCType: @encode(BOOL) at: &_changesState];
|
||||
[aCoder encodeConditionalObject: _target];
|
||||
[aCoder encodeValueOfObjCType: @encode(SEL) at: &_action];
|
||||
[aCoder encodeValueOfObjCType: "i" at: &_tag];
|
||||
[aCoder encodeConditionalObject: _representedObject];
|
||||
[aCoder encodeObject: _submenu];
|
||||
[aCoder encodeConditionalObject: _target];
|
||||
}
|
||||
|
||||
- (id) initWithCoder: (NSCoder*)aDecoder
|
||||
{
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_title];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_keyEquivalent];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_keyEquivalentModifierMask];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_mnemonicLocation];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_state];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_enabled];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_image];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_onStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_offStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_mixedStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_changesState];
|
||||
_target = [aDecoder decodeObject];
|
||||
[aDecoder decodeValueOfObjCType: @encode(SEL) at: &_action];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_tag];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_representedObject];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_submenu];
|
||||
int version = [aDecoder versionForClassName:
|
||||
@"NSMenuItem"];
|
||||
|
||||
if (version == 2)
|
||||
{
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_title];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_keyEquivalent];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_keyEquivalentModifierMask];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_mnemonicLocation];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_state];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_enabled];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_image];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_onStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_offStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_mixedStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_changesState];
|
||||
[aDecoder decodeValueOfObjCType: @encode(SEL) at: &_action];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_tag];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_representedObject];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_submenu];
|
||||
_target = [aDecoder decodeObject];
|
||||
}
|
||||
else
|
||||
{
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_title];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_keyEquivalent];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_keyEquivalentModifierMask];
|
||||
[aDecoder decodeValueOfObjCType: "I" at: &_mnemonicLocation];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_state];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_enabled];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_image];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_onStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_offStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_mixedStateImage];
|
||||
[aDecoder decodeValueOfObjCType: @encode(BOOL) at: &_changesState];
|
||||
_target = [aDecoder decodeObject];
|
||||
[aDecoder decodeValueOfObjCType: @encode(SEL) at: &_action];
|
||||
[aDecoder decodeValueOfObjCType: "i" at: &_tag];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_representedObject];
|
||||
[aDecoder decodeValueOfObjCType: @encode(id) at: &_submenu];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue