From 9fa56531c62bf751fda7a2dffd96baa0d6be17d7 Mon Sep 17 00:00:00 2001 From: Francisco Ryan Tolmasky I Date: Mon, 22 Dec 2008 15:10:20 -0800 Subject: [PATCH] Updated nib2cib to support new window styles. Reviewed by me. --- Tools/nib2cib/NSAppKit.j | 1 + Tools/nib2cib/NSWindowTemplate.j | 30 ++++++++++++++++++------------ 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/Tools/nib2cib/NSAppKit.j b/Tools/nib2cib/NSAppKit.j index d35bcc452..a71b12979 100644 --- a/Tools/nib2cib/NSAppKit.j +++ b/Tools/nib2cib/NSAppKit.j @@ -52,6 +52,7 @@ function CP_NSMapClassName(aClassName) { case @"NSApplication": return @"CPApplication"; case @"NSObject": return @"CPObject"; + case @"NSPanel": return @"CPPanel"; case @"NSView": return @"CPView"; case @"NSWindow": return @"CPWindow"; diff --git a/Tools/nib2cib/NSWindowTemplate.j b/Tools/nib2cib/NSWindowTemplate.j index 3f96196e0..b2a27ad62 100644 --- a/Tools/nib2cib/NSWindowTemplate.j +++ b/Tools/nib2cib/NSWindowTemplate.j @@ -23,6 +23,15 @@ @import +var NSBorderlessWindowMask = 0x00, + NSTitledWindowMask = 0x01, + NSClosableWindowMask = 0x02, + NSMiniaturizableWindowMask = 0x04, + NSResizableWindowMask = 0x08, + NSUtilityWindowMask = 0x10, + NSTexturedBackgroundWindowMask = 0x100, + NSHUDBackgroundWindowMask = 0x2000; + @implementation _CPCibWindowTemplate (NSCoding) - (id)NS_initWithCoder:(CPCoder)aCoder @@ -52,18 +61,15 @@ // Flip Y coordinate _windowRect.origin.y = _screenRect.size.height - _windowRect.origin.y - _windowRect.size.height; - // Only window style so far is CPHUDBackgroundWindowMask - _windowStyleMask |= CPHUDBackgroundWindowMask; - - // Adjust size for HUD window - FIXME: in CPWindow.j - if (_windowStyleMask & CPHUDBackgroundWindowMask) - { - CPLog.warn("Adjusting window rect."); - _windowRect.origin.x -= 7.0; - _windowRect.origin.y -= 30.0; - _windowRect.size.width += 14.0; - _windowRect.size.height += 40.0; - } + if (_windowStyleMask === NSBorderlessWindowMask) + _windowStyleMask = CPBorderlessWindowMask; + + else + _windowStyleMask = (_windowStyleMask & NSTitledWindowMask ? CPTitledWindowMask : 0) | + (_windowStyleMask & NSMiniaturizableWindowMask ? CPMiniaturizableWindowMask : 0) | + (_windowStyleMask & NSResizableWindowMask ? CPResizableWindowMask : 0) | + (_windowStyleMask & NSTexturedBackgroundWindowMask ? NSTexturedBackgroundWindowMask : 0) | + (_windowStyleMask & NSHUDBackgroundWindowMask ? CPHUDBackgroundWindowMask : 0); /*if (![_windowClass isEqualToString:@"NSPanel"]) _windowRect.origin.y -= [NSMainMenuView menuHeight]; // compensation for the additional menu bar