Prevent the close button of a window to show, 64 bit build ?

I have this small movable modal window I use for some preferences, and there seems to be no way to hide the red dot close button on the upper left corner. I switch off Close button but still, it shows. As a result people close the window with it instead of clicking OK, and they lose the defaults. As a temporary workaround I save the default when the window is closed, but I does not feel quite right.

I thought I could modify the code posted below to suppress the button instead of showing it, but NSClosableWindowMask is deprecated.

I will appreciate any idea.

OK. For the moment, I settled on the code below in Open, but I would prefer using something that is not deprecated. As usual, Apple documentation does not really help. They say it is deprecated, but fail to explain what replaces it. I would have hopped they put that in “see also” but all it does is redisplay the same page :frowning:

[code]#If TargetCocoa
Const NSTitledWindowMask = 1
Const NSClosableWindowMask = 0

Declare Sub setStyleMask Lib “Cocoa.framework” _
selector “setStyleMask:” (obj_id As Int64, mask As Int64)

setStyleMask(Self.Handle, NSTitledWindowMask Or NSClosableWindowMask)

Saving when clicking the close button is perfectly fine. But why is the option Close Button in the Inspector not working for you?

I would love to know why :smiley:

Nothing special about the window, which is a plain and simple movable modal.

Really weird. I tried to open a movable modal on 10.13.6 and the IDE’s button works as well as the styleMask declare.
Where is it that Apple says styleMask is deprecated? I found a deprecation mark only on StyleMaskTexturedBackground.