diff --git a/AppKit/CPRuleEditor/_CPRuleEditorPopUpButton.j b/AppKit/CPRuleEditor/_CPRuleEditorPopUpButton.j index 8a3a15370..69f64f9c6 100644 --- a/AppKit/CPRuleEditor/_CPRuleEditorPopUpButton.j +++ b/AppKit/CPRuleEditor/_CPRuleEditorPopUpButton.j @@ -40,24 +40,33 @@ else if (CPBrowserIsEngine(CPInternetExplorerBrowserEngine)) CPInteger radius; } +- (void)_sharedInit +{ + [self setBordered:NO]; + + var style = _DOMElement.style; + style.border = "1px solid " + BORDER_COLOR; + style[GRADIENT_PROPERTY] = GRADIENT_NORMAL; +} + - (id)initWithFrame:(CGRect)aFrame { if (self = [super initWithFrame:aFrame]) - { - [self setTextColor:[CPColor colorWithWhite:101 / 255 alpha:1]]; - [self setBordered:NO]; + [self _sharedInit]; - var style = _DOMElement.style; - style.border = "1px solid " + BORDER_COLOR; - style[GRADIENT_PROPERTY] = GRADIENT_NORMAL; - } + return self; +} +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super initWithCoder:aCoder]; + [self _sharedInit]; + return self; } - (id)hitTest:(CPPoint)point { - var slice = [self superview]; if (!CPRectContainsPoint([self frame], point) || ![self sliceIsEditable]) return nil; @@ -66,7 +75,8 @@ else if (CPBrowserIsEngine(CPInternetExplorerBrowserEngine)) - (BOOL)sliceIsEditable { - return [[self superview] isEditable]; + var superview = [self superview]; + return ![superview isKindOfClass:[_CPRuleEditorViewSlice]] || [superview isEditable]; } - (BOOL)trackMouse:(CPEvent)theEvent @@ -126,23 +136,28 @@ else if (CPBrowserIsEngine(CPInternetExplorerBrowserEngine)) CPInteger radius; } +- (void)_sharedInit +{ + [self setBordered:NO]; + + var style = _DOMElement.style; + style.border = "1px solid " + BORDER_COLOR; + style[GRADIENT_PROPERTY] = GRADIENT_NORMAL; +} + - (id)initWithFrame:(CGRect)aFrame { - self = [super initWithFrame:aFrame]; - if (self) - { - [self setFont:[CPFont boldFontWithName:@"Apple Symbol" size:12.0]]; - [self setTextColor:[CPColor colorWithWhite:150/255 alpha:1]]; - [self setAlignment:CPCenterTextAlignment]; - [self setAutoresizingMask:CPViewMinXMargin]; - [self setImagePosition:CPImageOnly]; - [self setBordered:NO]; + if (self = [super initWithFrame:aFrame]) + [self _sharedInit]; - var style = _DOMElement.style; - style.border = "1px solid " + BORDER_COLOR; - style[GRADIENT_PROPERTY] = GRADIENT_NORMAL; - } + return self; +} +- (id)initWithCoder:(CPCoder)aCoder +{ + self = [super initWithCoder:aCoder]; + [self _sharedInit]; + return self; } diff --git a/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j b/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j index 29f432cc7..c0345d1b2 100644 --- a/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j +++ b/AppKit/CPRuleEditor/_CPRuleEditorViewSliceRow.j @@ -54,26 +54,36 @@ var CONTROL_HEIGHT = 16., [center addObserver:self selector:@selector(_textDidChange:) name:CPControlTextDidChangeNotification object:nil]; } -- (CPButton)_createAddRowButton +- (CPButton)_createRowButton { var button = [[_CPRuleEditorButton alloc] initWithFrame:CGRectMakeZero()]; - [button setImage:[_ruleEditor _addImage]]; + [button setFont:[CPFont boldFontWithName:@"Apple Symbol" size:12.0]]; + [button setTextColor:[CPColor colorWithWhite:150/255 alpha:1]]; + [button setAlignment:CPCenterTextAlignment]; + [button setAutoresizingMask:CPViewMinXMargin]; + [button setImagePosition:CPImageOnly]; + + return button; +} +- (CPButton)_createAddRowButton +{ + var button = [self _createRowButton]; + + [button setImage:[_ruleEditor _addImage]]; [button setAction:@selector(_addOption:)]; [button setTarget:self]; - [button setAutoresizingMask:CPViewMinXMargin]; return button; } - (CPButton)_createDeleteRowButton { - var button = [[_CPRuleEditorButton alloc] initWithFrame:CGRectMakeZero()]; - [button setImage:[_ruleEditor _removeImage]]; + var button = [self _createRowButton]; + [button setImage:[_ruleEditor _removeImage]]; [button setAction:@selector(_deleteOption:)]; [button setTarget:self]; - [button setAutoresizingMask:CPViewMinXMargin]; return button; } @@ -93,6 +103,7 @@ var CONTROL_HEIGHT = 16., rect = CGRectMake(0, 0, (width - width % 40) + 80, CONTROL_HEIGHT); var popup = [[_CPRuleEditorPopUpButton alloc] initWithFrame:rect]; + [popup setTextColor:[CPColor colorWithWhite:101 / 255 alpha:1]]; [popup setValue:font forThemeAttribute:@"font"]; var count = [itemsArray count];