It is in the documentation, see https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSSegmentedControl_Class/#//apple_ref/c/tdef/NSSegmentStyle
This is the list for 10.10 (copied from NSSegmentedControl.h): typedef NS_ENUM(NSInteger, NSSegmentStyle) { NSSegmentStyleAutomatic = 0, NSSegmentStyleRounded = 1, NSSegmentStyleRoundRect = 3, NSSegmentStyleTexturedSquare = 4, NSSegmentStyleSmallSquare = 6, NSSegmentStyleSeparated NS_ENUM_AVAILABLE_MAC(10_10) = 8, NSSegmentStyleTexturedRounded NS_ENUM_AVAILABLE_MAC(10_5) = 2, NSSegmentStyleCapsule NS_ENUM_AVAILABLE_MAC(10_5) = 5 } NS_ENUM_AVAILABLE_MAC(10_5); I am running the code on OSX 10.10.5, and the control looks ok (i.e. it *does* have the style NSSegmentStyleSeparated). It seems to me like the old check was left in NSUserInterfaceTheme .m (like maybe case missing in a switch?). Jacek On Wed, Aug 26, 2015 at 6:20 PM, Thaddeus Cooper <tcoo...@nomoreboxes.com> wrote: > I just checked the documentation and did not see NSSegmentStyleSeparated in > the list of NSSegmentStyle enums. Here is the list: > > enum { > NSSegmentStyleAutomatic = 0, > NSSegmentStyleRounded = 1, > NSSegmentStyleTexturedRounded = 2, > NSSegmentStyleRoundRect = 3, > NSSegmentStyleTexturedSquare = 4, > NSSegmentStyleCapsule = 5, > NSSegmentStyleSmallSquare = 6, > NSSegmentStyleSeparated = 8, > }; > > I would be willing to bet that the method that is asserting is checking to > make sure that the segment style is one of the nine that are defined in the > list of enums. The fact that it only does that check when using auto layout > seems like a bug to me. I’d file a bug with Apple. > > Thaddeus O. Cooper > (tcoo...@nomoreboxes.com) > > > >> On Aug 26, 2015, at 6:38 AM, Jacek Oleksy <jole...@opera.com> wrote: >> >> Nope, I am still getting the exception. >> >> J. >> >> On Wed, Aug 26, 2015 at 3:31 PM, Ken Thomases <k...@codeweavers.com> wrote: >>> On Aug 26, 2015, at 7:04 AM, Jacek Oleksy <jole...@opera.com> wrote: >>> >>>> I want to set NSSegmentStyleSeparated on my NSSegmentedControl >>>> (managed by autolayout). However, when I create constraints for the >>>> parent view, I get an exception: >>>> >>>> Assertion failure in -[NSSegmentedControl ns_widgetType], >>>> /SourceCache/AppKit/AppKit-1348.17/Layout.subproj/NSUserInterfaceTheme.m:398 >>>> >>>> An uncaught exception was raised >>>> What kind of segmented control are we! >>>> >>>> Example code: >>>> >>>> (in WindowController) >>>> - (void)windowDidLoad { >>>> [super windowDidLoad]; >>>> NSSegmentedControl* segmentedControl = [[NSSegmentedControl alloc] init]; >>>> [segmentedControl setSegmentCount:2]; >>>> [segmentedControl setTranslatesAutoresizingMaskIntoConstraints:NO]; >>>> segmentedControl.segmentStyle = NSSegmentStyleSeparated; >>>> [self.window.contentView addSubview:segmentedControl]; >>>> NSString* constraint = @"|-[segmentedControl]-|"; >>>> NSDictionary* views = NSDictionaryOfVariableBindings(segmentedControl); >>>> NSArray* constraints = [NSLayoutConstraint >>>> constraintsWithVisualFormat:constraint >>>> options:NSLayoutFormatDirectionLeadingToTrailing >>>> metrics:nil >>>> views:views]; >>>> [self.window.contentView addConstraints:constraints]; >>>> } >>>> >>>> The exception is raised in "addConstraints:". >>>> Everything is fine if I do not change segmentStyle. It also works fine >>>> if I change segment style *after* adding constraints, but then I get >>>> the exception e.g. when dragging window to external display. >>>> >>>> Any ideas? >>> >>> This is a shot in the dark, but: does it help to initialize with >>> -initWithFrame: instead of -init? (You can pass NSZeroRect.) >>> >>> Regards, >>> Ken >>> >> _______________________________________________ >> >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/cocoa-dev/tcooper%40nomoreboxes.com >> >> This email sent to tcoo...@nomoreboxes.com >> > _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com