I'm new in Mac OSx / Cocoa development. During the creation of my first app, I bumped into a few things, and one of which is my issue on the green + button which is intended for zooming purposes.
I'd like to know if it is possible to dynamically set the behavior of the zoom button of the app window? Am I not violating any rule from Apple's guidelines?
I want to specify the behavior of the button according to a specific user. Say, the user is allowed to have a zooming button, then the button should be enabled; otherwise, leave the button disabled.
In this case, when the app is launched, I am checking if the user is allowed to have an enabled zoom button. From here I want to customize the behavior of the window pertaining to the zoom button - whether it should be enabled or disabled according to the prior checking of the user's mode.
Thanks ahead for the help!
You can get a reference to that button with standardWindowButton:NSWindowZoomButton
, and then do whatever you can do with any NSButton
.
Update (in swift):
var button = view.window?.standardWindowButton(NSWindowButton.ZoomButton)
button?.enabled = false
In Swift 3, here is the easiest way to remove the ability:
var style = window.styleMask
style.remove(.resizable)
window.styleMask = style
I commonly do this in viewDidAppear
for view controllers in storyboards that have a window controller created for them automatically instead of one I can mess with.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With