mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-24 21:58:51 +00:00
Fix image scaling value extract from XIB. * Headers/Additions/GNUstepGUI/GSXibLoading.h * Source/GSXibLoading.m * Source/GSXibLoader.m Add IB defined runtime attribute processing for XIB Patch by Marcian Lytwyn <gna@advcsi.com>. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38882 72102866-910b-0410-8b05-ffd578937521
148 lines
2.6 KiB
Objective-C
148 lines
2.6 KiB
Objective-C
#import <Foundation/NSObject.h>
|
|
#import <Foundation/NSKeyedArchiver.h>
|
|
#import "GNUstepGUI/GSXibElement.h"
|
|
#import "GNUstepGUI/GSXibLoading.h"
|
|
|
|
@interface IBAccessibilityAttribute : NSObject <NSCoding>
|
|
@end
|
|
|
|
@interface IBNSLayoutConstraint : NSObject <NSCoding>
|
|
@end
|
|
|
|
@interface IBLayoutConstant : NSObject <NSCoding>
|
|
@end
|
|
|
|
@implementation IBUserDefinedRuntimeAttribute
|
|
|
|
- (void) encodeWithCoder: (NSCoder *)coder
|
|
{
|
|
if([coder allowsKeyedCoding])
|
|
{
|
|
[coder encodeObject: typeIdentifier forKey: @"typeIdentifier"];
|
|
[coder encodeObject: keyPath forKey: @"keyPath"];
|
|
[coder encodeObject: value forKey: @"value"];
|
|
}
|
|
}
|
|
|
|
- (id) initWithCoder: (NSCoder *)coder
|
|
{
|
|
if([coder allowsKeyedCoding])
|
|
{
|
|
[self setTypeIdentifier: [coder decodeObjectForKey: @"typeIdentifier"]];
|
|
[self setKeyPath: [coder decodeObjectForKey: @"keyPath"]];
|
|
[self setValue: [coder decodeObjectForKey: @"value"]];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void) setTypeIdentifier: (NSString *)type
|
|
{
|
|
ASSIGN(typeIdentifier, type);
|
|
}
|
|
|
|
- (NSString *) typeIdentifier
|
|
{
|
|
return typeIdentifier;
|
|
}
|
|
|
|
- (void) setKeyPath: (NSString *)kpath
|
|
{
|
|
ASSIGN(keyPath, kpath);
|
|
}
|
|
|
|
- (NSString *) keyPath
|
|
{
|
|
return keyPath;
|
|
}
|
|
|
|
- (void) setValue: (id)val
|
|
{
|
|
ASSIGN(value, val);
|
|
}
|
|
|
|
- (id) value
|
|
{
|
|
return value;
|
|
}
|
|
|
|
@end
|
|
|
|
@implementation IBUserDefinedRuntimeAttributesPlaceholder
|
|
|
|
- (void) encodeWithCoder: (NSCoder *)coder
|
|
{
|
|
if([coder allowsKeyedCoding])
|
|
{
|
|
[coder encodeObject: name forKey: @"IBUserDefinedRuntimeAttributesPlaceholderName"];
|
|
[coder encodeObject: runtimeAttributes forKey: @"userDefinedRuntimeAttributes"];
|
|
}
|
|
}
|
|
|
|
- (id) initWithCoder: (NSCoder *)coder
|
|
{
|
|
if([coder allowsKeyedCoding])
|
|
{
|
|
[self setName: [coder decodeObjectForKey: @"IBUserDefinedRuntimeAttributesPlaceholderName"]];
|
|
[self setRuntimeAttributes: [coder decodeObjectForKey: @"userDefinedRuntimeAttributes"]];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
- (void) setName: (NSString *)value
|
|
{
|
|
ASSIGN(name, value);
|
|
}
|
|
|
|
- (NSString *) name
|
|
{
|
|
return name;
|
|
}
|
|
|
|
- (void) setRuntimeAttributes: (NSArray *)attrbutes
|
|
{
|
|
ASSIGN(runtimeAttributes, attrbutes);
|
|
}
|
|
|
|
- (NSArray *) runtimeAttributes
|
|
{
|
|
return runtimeAttributes;
|
|
}
|
|
|
|
@end
|
|
|
|
@implementation IBAccessibilityAttribute
|
|
|
|
- (void) encodeWithCoder: (NSCoder *)coder
|
|
{
|
|
}
|
|
|
|
- (id) initWithCoder: (NSCoder *)coder
|
|
{
|
|
return self;
|
|
}
|
|
|
|
@end
|
|
|
|
@implementation IBNSLayoutConstraint
|
|
- (void) encodeWithCoder: (NSCoder *)coder
|
|
{
|
|
// Do nothing...
|
|
}
|
|
|
|
- (id) initWithCoder: (NSCoder *)coder
|
|
{
|
|
return self;
|
|
}
|
|
@end
|
|
|
|
@implementation IBLayoutConstant
|
|
- (void) encodeWithCoder: (NSCoder *)coder
|
|
{
|
|
// Do nothing...
|
|
}
|
|
|
|
- (id) initWithCoder: (NSCoder *)coder
|
|
{
|
|
return self;
|
|
}
|
|
@end
|