VirtualBox

Changeset 57973 in vbox


Ignore:
Timestamp:
Sep 30, 2015 4:54:45 PM (9 years ago)
Author:
vboxsync
Message:

FE/Qt: Mac OS X: Hide Zoom botton for normal/scale-mode VM windows.

Location:
trunk/src/VBox/Frontends/VirtualBox/src
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm

    r57195 r57973  
    165165            [pButton setEnabled: NO];
    166166    }
     167}
     168
     169void darwinSetHideTitleButtonImpl(NativeNSWindowRef pWindow, CocoaWindowButtonType buttonType)
     170{
     171    NSButton *pButton = Nil;
     172    switch (buttonType)
     173    {
     174        case CocoaWindowButtonType_Close:            pButton = [pWindow standardWindowButton:NSWindowCloseButton]; break;
     175        case CocoaWindowButtonType_Miniaturize:      pButton = [pWindow standardWindowButton:NSWindowMiniaturizeButton]; break;
     176        case CocoaWindowButtonType_Zoom:             pButton = [pWindow standardWindowButton:NSWindowZoomButton]; break;
     177        case CocoaWindowButtonType_Toolbar:          pButton = [pWindow standardWindowButton:NSWindowToolbarButton]; break;
     178        case CocoaWindowButtonType_DocumentIcon:     pButton = [pWindow standardWindowButton:NSWindowDocumentIconButton]; break;
     179        case CocoaWindowButtonType_DocumentVersions: /*pButton = [pWindow standardWindowButton:NSWindowDocumentVersionsButton];*/ break;
     180        case CocoaWindowButtonType_FullScreen:       /*pButton = [pWindow standardWindowButton:NSWindowFullScreenButton];*/ break;
     181    }
     182    if (pButton != Nil)
     183        [pButton setHidden: YES];
    167184}
    168185
  • trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp

    r52751 r57973  
    7777    NOREF(pWidget);
    7878#endif /* !QT_MAC_USE_COCOA */
     79}
     80
     81void darwinSetHideTitleButton(QWidget *pWidget, CocoaWindowButtonType buttonType)
     82{
     83    ::darwinSetHideTitleButtonImpl(::darwinToNativeWindow(pWidget), buttonType);
    7984}
    8085
  • trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.h

    r55401 r57973  
    3838class QWidget;
    3939
     40/** Cocoa window button types. */
     41enum CocoaWindowButtonType
     42{
     43    CocoaWindowButtonType_Close,            // Since OS X 10.2
     44    CocoaWindowButtonType_Miniaturize,      // Since OS X 10.2
     45    CocoaWindowButtonType_Zoom,             // Since OS X 10.2
     46    CocoaWindowButtonType_Toolbar,          // Since OS X 10.2
     47    CocoaWindowButtonType_DocumentIcon,     // Since OS X 10.2
     48    CocoaWindowButtonType_DocumentVersions, // Since OS X 10.7
     49    CocoaWindowButtonType_FullScreen        // Since OS X 10.7
     50};
     51
    4052RT_C_DECLS_BEGIN
    4153
     
    5870void darwinSetShowsResizeIndicatorImpl(NativeNSWindowRef pWindow, bool fEnabled);
    5971void darwinSetHidesAllTitleButtonsImpl(NativeNSWindowRef pWindow);
     72void darwinSetHideTitleButtonImpl(NativeNSWindowRef pWindow, CocoaWindowButtonType buttonType);
    6073void darwinLabelWindow(NativeNSWindowRef pWindow, NativeNSImageRef pImage, bool fCenter);
    6174void darwinSetShowsWindowTransparentImpl(NativeNSWindowRef pWindow, bool fEnabled);
     
    228241void darwinSetShowsResizeIndicator(QWidget *pWidget, bool fEnabled);
    229242void darwinSetHidesAllTitleButtons(QWidget *pWidget);
     243void darwinSetHideTitleButton(QWidget *pWidget, CocoaWindowButtonType buttonType);
    230244void darwinSetShowsWindowTransparent(QWidget *pWidget, bool fEnabled);
    231245void darwinSetWindowHasShadow(QWidget *pWidget, bool fEnabled);
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp

    r57591 r57973  
    304304        ::darwinLabelWindow(this, &betaLabel, true);
    305305    }
     306
     307    /* No 'Zoom' button since El Capitan for now: */
     308    if (vboxGlobal().osRelease() >= MacOSXRelease_ElCapitan)
     309        darwinSetHideTitleButton(this, CocoaWindowButtonType_Zoom);
    306310#endif /* Q_WS_MAC */
    307311}
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp

    r57591 r57973  
    7070        ::darwinLabelWindow(this, &betaLabel, true);
    7171    }
     72
     73    /* No 'Zoom' button since El Capitan for now: */
     74    if (vboxGlobal().osRelease() >= MacOSXRelease_ElCapitan)
     75        darwinSetHideTitleButton(this, CocoaWindowButtonType_Zoom);
    7276}
    7377#endif /* Q_WS_MAC */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette