< prev index next >

modules/javafx.graphics/src/main/native-glass/mac/GlassWindow.m

Print this page




 497             {
 498                 window->owner = getGlassWindow(env, jOwnerPtr)->nsWindow; // not retained (use weak reference?)
 499             }
 500         }
 501         else
 502         {
 503             if ((jOwnerPtr != 0L) && (jOwnerPtr != BROWSER_PARENT_ID))
 504             {
 505                 GlassEmbeddedWindow *parent = getGlassEmbeddedWindow(env, jOwnerPtr);
 506                 GlassEmbeddedWindow *ewindow = (GlassEmbeddedWindow*)window->nsWindow;
 507                 parent->child = ewindow; // not retained (use weak reference?)
 508 
 509                 ewindow->parent = parent; // not retained (use weak reference?)
 510             }
 511         }
 512         window->isResizable = NO;
 513         window->isDecorated = (jStyleMask&com_sun_glass_ui_Window_TITLED) != 0;
 514         /* 10.7 full screen window support */
 515         if ([NSWindow instancesRespondToSelector:@selector(toggleFullScreen:)]) {
 516             NSWindowCollectionBehavior behavior = [window->nsWindow collectionBehavior];
 517             if (window->isDecorated && !window->owner)
 518             {
 519                 // Only titled ownerless windows should have the Full Screen Toggle control
 520                 behavior |= (1 << 7) /* NSWindowCollectionBehaviorFullScreenPrimary */;
 521             }
 522             else
 523             {
 524                 // Other windows are only allowed to be shown together with a primary
 525                 // full screen window
 526                 behavior |= (1 << 8) /* NSWindowCollectionBehaviorFullScreenAuxiliary */;
 527             }
 528             [window->nsWindow setCollectionBehavior: behavior];
 529         }
 530 
 531         window->isTransparent = (jStyleMask & com_sun_glass_ui_Window_TRANSPARENT) != 0;
 532         if (window->isTransparent == YES)
 533         {
 534             [window->nsWindow setBackgroundColor:[NSColor clearColor]];
 535             [window->nsWindow setHasShadow:NO];
 536             [window->nsWindow setOpaque:NO];
 537         }
 538         else
 539         {




 497             {
 498                 window->owner = getGlassWindow(env, jOwnerPtr)->nsWindow; // not retained (use weak reference?)
 499             }
 500         }
 501         else
 502         {
 503             if ((jOwnerPtr != 0L) && (jOwnerPtr != BROWSER_PARENT_ID))
 504             {
 505                 GlassEmbeddedWindow *parent = getGlassEmbeddedWindow(env, jOwnerPtr);
 506                 GlassEmbeddedWindow *ewindow = (GlassEmbeddedWindow*)window->nsWindow;
 507                 parent->child = ewindow; // not retained (use weak reference?)
 508 
 509                 ewindow->parent = parent; // not retained (use weak reference?)
 510             }
 511         }
 512         window->isResizable = NO;
 513         window->isDecorated = (jStyleMask&com_sun_glass_ui_Window_TITLED) != 0;
 514         /* 10.7 full screen window support */
 515         if ([NSWindow instancesRespondToSelector:@selector(toggleFullScreen:)]) {
 516             NSWindowCollectionBehavior behavior = [window->nsWindow collectionBehavior];
 517             if ((jStyleMask&com_sun_glass_ui_Window_POPUP) == 0 && !window->owner)
 518             {
 519                 // Only ownerless windows should have the Full Screen Toggle control
 520                 behavior |= (1 << 7) /* NSWindowCollectionBehaviorFullScreenPrimary */;
 521             }
 522             else
 523             {
 524                 // Other windows are only allowed to be shown together with a primary
 525                 // full screen window
 526                 behavior |= (1 << 8) /* NSWindowCollectionBehaviorFullScreenAuxiliary */;
 527             }
 528             [window->nsWindow setCollectionBehavior: behavior];
 529         }
 530 
 531         window->isTransparent = (jStyleMask & com_sun_glass_ui_Window_TRANSPARENT) != 0;
 532         if (window->isTransparent == YES)
 533         {
 534             [window->nsWindow setBackgroundColor:[NSColor clearColor]];
 535             [window->nsWindow setHasShadow:NO];
 536             [window->nsWindow setOpaque:NO];
 537         }
 538         else
 539         {


< prev index next >