diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-disabled.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-disabled.png new file mode 100644 index 000000000..2caf2010e Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-disabled.png differ diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-highlighted.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-highlighted.png new file mode 100644 index 000000000..661b06627 Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed-highlighted.png differ diff --git a/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed.png b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed.png new file mode 100644 index 000000000..d1c739a8b Binary files /dev/null and b/AppKit/Themes/Aristo/Resources/check-box-bezel-mixed.png differ diff --git a/AppKit/Themes/Aristo/ThemeDescriptors.j b/AppKit/Themes/Aristo/ThemeDescriptors.j index 4729ecb1e..25cfccaba 100644 --- a/AppKit/Themes/Aristo/ThemeDescriptors.j +++ b/AppKit/Themes/Aristo/ThemeDescriptors.j @@ -449,6 +449,41 @@ return button; } ++ (CPRadioButton)themedMixedCheckBoxButton +{ + button = [self themedCheckBoxButton]; + + [button setAllowsMixedState:YES]; + [button setState:CPMixedState]; + + var mixedSelectedColor = + PatternColor([[CPThreePartImage alloc] initWithImageSlices: + [ + [_CPCibCustomResource imageResourceWithName:"check-box-bezel-mixed-highlighted.png" size:CGSizeMake(15.0, 16.0)], nil, nil + ] + isVertical:NO]), + + mixedDisabledColor = + PatternColor([[CPThreePartImage alloc] initWithImageSlices: + [ + [_CPCibCustomResource imageResourceWithName:"check-box-bezel-mixed-disabled.png" size:CGSizeMake(15.0, 16.0)], nil, nil + ] + isVertical:NO]), + + mixedColor = + PatternColor([[CPThreePartImage alloc] initWithImageSlices: + [ + [_CPCibCustomResource imageResourceWithName:"check-box-bezel-mixed.png" size:CGSizeMake(15.0, 16.0)], nil, nil + ] + isVertical:NO]); + + [button setValue:mixedSelectedColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeState("mixed")|CPThemeStateHighlighted]; + [button setValue:mixedColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeState("mixed")]; + [button setValue:mixedDisabledColor forThemeAttribute:@"bezel-color" inState:CPThemeStateBordered|CPThemeState("mixed")|CPThemeStateDisabled]; + + return button; +} + + (CPPopUpButton)themedSegmentedControl { var segmentedControl = [[CPSegmentedControl alloc] initWithFrame:CGRectMake(0.0, 0.0, 0.0, 24.0)];