mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-23 03:21:04 +00:00
Add implementations of methods to generate constraints
This commit is contained in:
parent
d2f79dbec0
commit
b352d55e55
2 changed files with 71 additions and 10 deletions
|
@ -37,6 +37,10 @@ extern "C" {
|
|||
|
||||
@interface NSLayoutAnchor : NSObject <NSCoding, NSCopying>
|
||||
{
|
||||
NSString *_name;
|
||||
id _item;
|
||||
BOOL _hasAmbiguousLayout;
|
||||
NSArray *_constraintsAffectingLayout;
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintEqualToAnchor: (NSLayoutAnchor *)anchor;
|
||||
|
|
|
@ -33,52 +33,109 @@
|
|||
|
||||
- (NSLayoutConstraint *) constraintEqualToAnchor: (NSLayoutAnchor *)anchor
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: 0.0];
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintGreaterThanOrEqualToAnchor: (NSLayoutAnchor *)anchor
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationGreaterThanOrEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: 0.0];
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintLessThanOrEqualToAnchor: (NSLayoutAnchor *)anchor
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: 0.0];
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintEqualToAnchor: (NSLayoutAnchor *)anchor constant: (CGFloat)c
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationLessThanOrEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: 0.0];
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintGreaterThanOrEqualToAnchor: (NSLayoutAnchor *)anchor constant: (CGFloat)c
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationGreaterThanOrEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: c];
|
||||
}
|
||||
|
||||
- (NSLayoutConstraint *) constraintLessThanOrEqualToAnchor: (NSLayoutAnchor *)anchor constant: (CGFloat)c;
|
||||
{
|
||||
return nil;
|
||||
return [NSLayoutConstraint constraintWithItem: _item
|
||||
attribute: NSLayoutAttributeLeft
|
||||
relatedBy: NSLayoutRelationLessThanOrEqual
|
||||
toItem: [anchor item]
|
||||
attribute: NSLayoutAttributeLeft
|
||||
multiplier: 1.0
|
||||
constant: c];
|
||||
}
|
||||
|
||||
- (instancetype) init
|
||||
{
|
||||
self = [super init];
|
||||
if (self != nil)
|
||||
{
|
||||
_name = nil;
|
||||
_item = nil;
|
||||
_hasAmbiguousLayout = NO;
|
||||
_constraintsAffectingLayout = [[NSMutableArray alloc] init];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void) dealloc
|
||||
{
|
||||
RELEASE(_name);
|
||||
RELEASE(_item);
|
||||
RELEASE(_constraintsAffectingLayout);
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (NSString *) name
|
||||
{
|
||||
return nil;
|
||||
return _name;
|
||||
}
|
||||
|
||||
- (id) item
|
||||
{
|
||||
return nil;
|
||||
return _item;
|
||||
}
|
||||
|
||||
- (BOOL) hasAmbiguousLayout
|
||||
{
|
||||
return NO;
|
||||
return _hasAmbiguousLayout;
|
||||
}
|
||||
|
||||
- (NSArray *) constraintsAffectingLayout
|
||||
{
|
||||
return nil;
|
||||
return _constraintsAffectingLayout;
|
||||
}
|
||||
|
||||
- (id) initWithCoder: (NSCoder *)c
|
||||
|
|
Loading…
Reference in a new issue