Changeset 81228 in vbox
- Timestamp:
- Oct 11, 2019 2:13:21 PM (5 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src
- Files:
-
- 6 edited
-
extradata/UIExtraDataDefs.cpp (modified) (1 diff)
-
extradata/UIExtraDataDefs.h (modified) (1 diff)
-
extradata/UIExtraDataManager.cpp (modified) (2 diffs)
-
extradata/UIExtraDataManager.h (modified) (1 diff)
-
medium/viso/UIVisoCreator.cpp (modified) (3 diffs)
-
medium/viso/UIVisoCreator.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.cpp
r80773 r81228 82 82 /* VISO Creator: */ 83 83 const char *UIExtraDataDefs::GUI_VISOCreator_RecentFolder = "GUI/VISOCreator/RecentFolder"; 84 const char *UIExtraDataDefs::GUI_VISOCreator_DialogGeometry = "GUI/VISOCreator/DialogGeometry";85 84 86 85 /* VirtualBox Manager: */ -
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h
r80773 r81228 154 154 /** Holds recent folder for VISO creation content. */ 155 155 SHARED_LIBRARY_STUFF extern const char *GUI_VISOCreator_RecentFolder; 156 /** Holds dialog geometry for VISO creation dialog. */157 SHARED_LIBRARY_STUFF extern const char *GUI_VISOCreator_DialogGeometry;158 156 /** @} */ 159 157 -
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp
r80773 r81228 1958 1958 << GUI_Input_SelectorShortcuts << GUI_Input_MachineShortcuts 1959 1959 << GUI_RecentFolderHD << GUI_RecentFolderCD << GUI_RecentFolderFD 1960 << GUI_VISOCreator_RecentFolder << GUI_VISOCreator_DialogGeometry1960 << GUI_VISOCreator_RecentFolder 1961 1961 << GUI_RecentListHD << GUI_RecentListCD << GUI_RecentListFD 1962 1962 << GUI_RestrictedNetworkAttachmentTypes … … 2691 2691 } 2692 2692 2693 QRect UIExtraDataManager::visoCreatorDialogGeometry(QWidget *pWidget, const QRect &defaultGeometry)2694 {2695 return dialogGeometry(GUI_VISOCreator_DialogGeometry, pWidget, defaultGeometry);2696 }2697 2698 void UIExtraDataManager::setVISOCreatorDialogGeometry(const QRect &geometry, bool fMaximized)2699 {2700 setDialogGeometry(GUI_VISOCreator_DialogGeometry, geometry, fMaximized);2701 }2702 2703 bool UIExtraDataManager::visoCreatorDialogShouldBeMaximized()2704 {2705 /* Get corresponding extra-data: */2706 const QStringList data = extraDataStringList(GUI_VISOCreator_DialogGeometry);2707 2708 /* Make sure 5th item has required value: */2709 return data.size() == 5 && data[4] == GUI_Geometry_State_Max;2710 }2711 2712 2693 QRect UIExtraDataManager::selectorWindowGeometry(QWidget *pWidget) 2713 2694 { -
trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h
r80773 r81228 302 302 /** Defines recent folder for VISO creation content as @a strValue. */ 303 303 void setVISOCreatorRecentFolder(const QString &strValue); 304 /** Returns the VISO creation dialog geometry. */305 QRect visoCreatorDialogGeometry(QWidget *pWidget, const QRect &defaultGeometry);306 /** Defines the VISO creation dialog geometry. */307 void setVISOCreatorDialogGeometry(const QRect &geometry, bool fMaximized);308 /** Returns whether the VISO creation dialog should be maximized. */309 bool visoCreatorDialogShouldBeMaximized();310 304 /** @} */ 311 305 -
trunk/src/VBox/Frontends/VirtualBox/src/medium/viso/UIVisoCreator.cpp
r79365 r81228 60 60 { 61 61 m_visoOptions.m_strVisoName = !strMachineName.isEmpty() ? strMachineName : "ad-hoc"; 62 loadSettings();63 62 prepareActions(); 64 63 prepareWidgets(); … … 67 66 manageEscapeShortCut(); 68 67 retranslateUi(); 69 }70 71 UIVisoCreator::~UIVisoCreator()72 {73 saveSettings();74 68 } 75 69 … … 573 567 m_pVerticalToolBar->addWidget(bottomSpacerWidget); 574 568 } 575 576 void UIVisoCreator::loadSettings()577 {578 const QRect desktopRect = gpDesktop->availableGeometry(this);579 int iDefaultWidth = desktopRect.width() / 2;580 int iDefaultHeight = desktopRect.height() * 3 / 4;581 582 QRect defaultGeometry(0, 0, iDefaultWidth, iDefaultHeight);583 QWidget *pParent = qobject_cast<QWidget*>(parent());584 if (pParent)585 defaultGeometry.moveCenter(pParent->geometry().center());586 587 /* Load geometry from extradata: */588 QRect geometry = gEDataManager->visoCreatorDialogGeometry(this, defaultGeometry);589 setDialogGeometry(geometry);590 }591 592 void UIVisoCreator::saveSettings() const593 {594 /* Save window geometry to extradata: */595 const QRect saveGeometry = geometry();596 #ifdef VBOX_WS_MAC597 /* darwinIsWindowMaximized expects a non-const QWidget*. thus const_cast: */598 QWidget *pw = const_cast<QWidget*>(qobject_cast<const QWidget*>(this));599 gEDataManager->setVISOCreatorDialogGeometry(saveGeometry, ::darwinIsWindowMaximized(pw));600 #else /* !VBOX_WS_MAC */601 gEDataManager->setVISOCreatorDialogGeometry(saveGeometry, isMaximized());602 #endif /* !VBOX_WS_MAC */603 }604 605 void UIVisoCreator::setDialogGeometry(const QRect &geometry)606 {607 #ifdef VBOX_WS_MAC608 /* Use the old approach for OSX: */609 move(geometry.topLeft());610 resize(geometry.size());611 #else /* VBOX_WS_MAC */612 /* Use the new approach for Windows/X11: */613 UICommon::setTopLevelGeometry(this, geometry);614 #endif /* !VBOX_WS_MAC */615 616 /* Maximize (if necessary): */617 if (gEDataManager->visoCreatorDialogShouldBeMaximized())618 showMaximized();619 } -
trunk/src/VBox/Frontends/VirtualBox/src/medium/viso/UIVisoCreator.h
r77518 r81228 50 50 51 51 UIVisoCreator(QWidget *pParent = 0, const QString& strMachineName = QString()); 52 ~UIVisoCreator();53 52 /** Returns the content of the .viso file. Each element of the list corresponds to a line in the .viso file. */ 54 53 QStringList entryList() const; … … 121 120 void manageEscapeShortCut(); 122 121 123 /** @name Save/Load dialog related extra data.124 * @{ */125 void loadSettings();126 void saveSettings() const;127 /** @} */128 void setDialogGeometry(const QRect &geometry);129 130 122 /** @name Main toolbar (and main menu) actions 131 123 * @{ */
Note:
See TracChangeset
for help on using the changeset viewer.

