Getting NSToolbar Height From an NSWindow in Swift
Adapted from this old Apple example:
import Cocoa
extension NSWindow {
func toolbarHeight() -> CGFloat {
var toolbar: NSToolbar?
var toolbarHeight = CGFloat(0.0)
var windowFrame: NSRect
toolbar = self.toolbar
if let toolbar = toolbar {
if toolbar.visible {
windowFrame = NSWindow.contentRectForFrameRect(self.frame, styleMask: self.styleMask)
toolbarHeight = NSHeight(windowFrame) - NSHeight(self.contentView.frame)
}
}
return toolbarHeight
}
}
If you find that this code is returning 0
but you're positive you have an NSToolbar
, check that Full Size Content View
isn't selected in the attributes inspector of your storyboard.