Platforms to show: All Mac Windows Linux Cross-Platform
Back to NSWindowMBS class.
NSWindowMBS.setFrame(frameRect as NSRectMBS)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 11.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
frameRect: The frame rectangle for the window, including the title bar.
Note that the window server limits window position coordinates to ±16,000 and sizes to 10,000.
See also:
- setFrame(frameRect as NSRectMBS, display as boolean)
- setFrame(frameRect as NSRectMBS, display as boolean, animated as boolean)
- SetFrame(left as Double, top as Double, width as Double, height as Double)
Some examples using this method:
NSWindowMBS.setFrame(frameRect as NSRectMBS, display as boolean)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 8.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The point 0/0 is on the bottom left position of the main screen.
display: Specifies whether the window redraws the views that need to be displayed. When true the window sends a displayIfNeeded message down its view hierarchy, thus redrawing all views.
See also:
NSWindowMBS.setFrame(frameRect as NSRectMBS, display as boolean, animated as boolean)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 11.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The point 0/0 is on the bottom left position of the main screen.
If animated is true, the change is animated.
See also:
NSWindowMBS.SetFrame(left as Double, top as Double, width as Double, height as Double)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The point 0/0 is on the bottom left position of the main screen.
See also:
NSWindowMBS.setFrameAutosaveName(name as String) as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 15.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Returns true when the frame name is set successfully; false when frameName is being used as an autosave name by another NSWindow object in the application (in which case the window's old name remains in effect).
If frameName isn't the empty string (""), the window's frame is saved as a user default (as described in saveFrameUsingName) each time the frame changes.
When the window has an autosave name, its frame data is written whenever the frame rectangle changes.
If there is a frame rectangle previously stored for frameName in the user defaults, the window's frame is set to this frame rectangle. That is, when you call this method with a previously used frameName, the window picks up the previously saved setting. For example, if you call setFrameAutosaveName for a window that is already onscreen, this method could cause the window to move to a different screen location. For this reason, it is generally better to call this method before the window is visible on screen.
Keep in mind that a window controller may change the window's position when it displays it if window cascading is turned on. To preclude the window controller from changing a window's position from the one saved in the defaults system, you must send setShouldCascadeWindows(false) to the window controller.
NSWindowMBS.setFrameFromString(s as String)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 15.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
If the window is not resizable, this method will not resize the window. The frame is constrained according to the window's minimum and maximum size settings. This method can cause a windowWillResize event.
NSWindowMBS.setFrameOrigin(point as NSPointMBS)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Note that the window server limits window position coordinates to ±16,000.
NSWindowMBS.setFrameTopLeftPoint(point as NSPointMBS)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Note that the window server limits window position coordinates to ±16,000; if necessary, adjust aPoint relative to the window's lower-left corner to account for this limit.
NSWindowMBS.setFrameUsingName(name as String, force as boolean = false) as boolean
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 15.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Returns true when frameName is read and the frame is set successfully; otherwise, false.
The frame is constrained according to the window's minimum and maximum size settings. This method causes a windowWillResize event.
NSWindowMBS.setRestorationClass
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 13.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The plugin provides a class to restore windows. See NSWindowRestoreHandlerMBS class.
The restoration class of a window is responsible for recreating not just the window but any other objects needed to manage the window. Therefore, the restoration class must be able to create (or find existing instances of) all of these objects at launch time in your application.
If you mark your windows as restorable, you must associate a restoration class with them.
Available in OS X v10.7 and later.
Some examples using this method:
NSWindowMBS.setTitleWithRepresentedFile(filename as folderitem)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
NSWindowMBS.setTitleWithRepresentedFilename(filename as string)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 8.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
NSWindowMBS.standardWindowButton(button as Integer) as Variant
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 12.1 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
button: The kind of standard window button to return.
Returns Window button in the window's view hierarchy of the kind identified by windowButtonKind; nil when such button is not in the window's view hierarchy.
Declared as Variant for reduced plugin dependencies.
Button constants: NSWindowCloseButton, NSWindowDocumentIconButton, NSWindowMiniaturizeButton, NSWindowToolbarButton and NSWindowZoomButton.
See also:
Some examples using this method:
NSWindowMBS.stringWithSavedFrame as String
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 15.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
A string representation of the window's frame rectangle in a format that can be used with a later setFrameFromString method.
NSWindowMBS.tabbedWindows as NSWindowMBS()
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 16.5 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Operations can then be done on each window, as necessary. For instance, iterating over each window in the group and calling performClose: will close the entire stack. The result will be nil when the window is not tabbed at all (not showing a tab bar), and non-nil with at least one object when the tab bar is shown. The order of items in the array is the same order as the tabs visually shown (leading to trailing).
Raises an exception when used on OS X 10.11 and older.
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 11.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Available on Mac OS X 10.7 or later.
If an application supports fullscreen, it should add a menu item to the View menu with toggleFullScreen as the action.
This method does not much if you don't mark a window to be the primary fullscreen window.
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 16.5 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Raises an exception when used on OS X 10.11 and older.
NSWindowMBS.toggleToolbarShown
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
NSWindowMBS.toolbarview as NSViewMBS
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 13.1 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Returns nil if there is no toolbar view.
NSWindowMBS.unregisterDraggedTypes
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 11.1 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 8.3 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The NSWindow implementation of this method does nothing more than post an NSWindowDidUpdateNotification notification to the default notification center. A subclass can override this method to perform specialized operations, but it should send an update message to super just before returning. For example, the NSMenu class implements this method to disable and enable menu commands.
An NSWindow object is automatically sent an update message on every pass through the event loop and before it's displayed onscreen. You can manually cause an update message to be sent to all visible NSWindow objects through the NSApplication updateWindows method.
NSWindowMBS.useOptimizedDrawing(value as boolean)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 9.6 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
value: If true, the window will optimize focusing and drawing for its views; if false, it will not, in which case, the window does not preserve the Z-ordering of overlapping views when an object explicitly sends lockFocus to a view and draws directly to it, instead of using the AppKit standard display mechanism.
The optimizations may prevent sibling subviews from being displayed in the correct order—which matters only if the subviews overlap. You should always set optimizedDrawing to true when there are no overlapping subviews within the window. The default is false.
NSWindowMBS.WindowHandle as Integer
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 8.2 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
Can be used with the CarbonWindowsEventsMBS class.
(for events like open and close)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
method | Cocoa | MBS MacBase Plugin | 8.4 | ✅ Yes | ❌ No | ❌ No | ✅ Yes | Desktop & iOS |
The items on this page are in the following plugins: MBS MacBase Plugin.