void UIMachineWindowNormal::prepareVisualState() { /* Call to base-class: */ UIMachineWindow::prepareVisualState(); #ifdef VBOX_GUI_WITH_CUSTOMIZATIONS1 /* Customer request: The background has to go black: */ QPalette palette(centralWidget()->palette()); palette.setColor(centralWidget()->backgroundRole(), Qt::black); centralWidget()->setPalette(palette); centralWidget()->setAutoFillBackground(true); setAutoFillBackground(true); #endif /* VBOX_GUI_WITH_CUSTOMIZATIONS1 */ #ifdef VBOX_WS_MAC /* Beta label? */ if (vboxGlobal().isBeta()) { QPixmap betaLabel = ::betaLabel(QSize(100, 16)); ::darwinLabelWindow(this, &betaLabel, true); } /* For 'Yosemite' and above: */ if (vboxGlobal().osRelease() >= MacOSXRelease_Yosemite) { /* Enable fullscreen support for every screen which requires it: */ if (darwinScreensHaveSeparateSpaces() || m_uScreenId == 0) darwinEnableFullscreenSupport(this); /* Register 'Zoom' button to use our full-screen: */ UICocoaApplication::instance()->registerCallbackForStandardWindowButton(this, StandardWindowButtonType_Zoom, UIMachineWindow::handleStandardWindowButtonCallback); } #endif /* VBOX_WS_MAC */ }
void UIMachineWindowFullscreen::prepareVisualState() { /* Call to base-class: */ UIMachineWindow::prepareVisualState(); /* The background has to go black: */ QPalette palette(centralWidget()->palette()); palette.setColor(centralWidget()->backgroundRole(), Qt::black); centralWidget()->setPalette(palette); centralWidget()->setAutoFillBackground(true); setAutoFillBackground(true); #if defined(Q_WS_WIN) || defined(Q_WS_X11) /* Prepare mini-toolbar: */ prepareMiniToolbar(); #endif /* Q_WS_WIN || Q_WS_X11 */ #ifdef Q_WS_MAC /* Native fullscreen stuff on ML and next: */ if (vboxGlobal().osRelease() > MacOSXRelease_Lion) { /* Make sure this window has fullscreen logic: */ UIMachineLogicFullscreen *pFullscreenLogic = qobject_cast<UIMachineLogicFullscreen*>(machineLogic()); AssertPtrReturnVoid(pFullscreenLogic); /* Enable fullscreen support for every screen which requires it: */ if (pFullscreenLogic->screensHaveSeparateSpaces() || m_uScreenId == 0) darwinEnableFullscreenSupport(this); /* Enable transience support for other screens: */ else darwinEnableTransienceSupport(this); /* Register to native fullscreen notifications: */ UICocoaApplication::instance()->registerToNotificationOfWindow("NSWindowWillEnterFullScreenNotification", this, UIMachineWindow::handleNativeNotification); UICocoaApplication::instance()->registerToNotificationOfWindow("NSWindowDidEnterFullScreenNotification", this, UIMachineWindow::handleNativeNotification); UICocoaApplication::instance()->registerToNotificationOfWindow("NSWindowWillExitFullScreenNotification", this, UIMachineWindow::handleNativeNotification); UICocoaApplication::instance()->registerToNotificationOfWindow("NSWindowDidExitFullScreenNotification", this, UIMachineWindow::handleNativeNotification); UICocoaApplication::instance()->registerToNotificationOfWindow("NSWindowDidFailToEnterFullScreenNotification", this, UIMachineWindow::handleNativeNotification); } #endif /* Q_WS_MAC */ }
void UIMachineWindowScale::prepareVisualState() { /* Call to base-class: */ UIMachineWindow::prepareVisualState(); /* Beta label? */ if (vboxGlobal().isBeta()) { QPixmap betaLabel = ::betaLabel(QSize(100, 16)); ::darwinLabelWindow(this, &betaLabel, true); } /* For 'Yosemite' and above: */ if (vboxGlobal().osRelease() >= MacOSXRelease_Yosemite) { /* Enable fullscreen support for every screen which requires it: */ if (darwinScreensHaveSeparateSpaces() || m_uScreenId == 0) darwinEnableFullscreenSupport(this); /* Register 'Zoom' button to use our full-screen: */ UICocoaApplication::instance()->registerCallbackForStandardWindowButton(this, StandardWindowButtonType_Zoom, UIMachineWindow::handleStandardWindowButtonCallback); } }