summaryrefslogtreecommitdiff
path: root/src/VBox/Frontends/VirtualBox/src
diff options
context:
space:
mode:
Diffstat (limited to 'src/VBox/Frontends/VirtualBox/src')
-rw-r--r--src/VBox/Frontends/VirtualBox/src/UIMediumTypeChangeDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxAboutDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxFBQGL.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxGLSupportInfo.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxLicenseViewer.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxMedium.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxSnapshotDetailsDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxTakeSnapshotDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp465
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIAdvancedSlider.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIArrowSplitter.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIDialogButtonBox.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIFileDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QILabel.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QILabelSeparator.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QILineEdit.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIListView.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIMainDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIRichToolButton.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QISplitter.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIStateIndicator.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIStatusBar.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QITreeView.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QITreeWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIWidgetValidator.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/extensions/QIWizard.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/COMDefs.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIExtraDataEventHandler.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIImageTools.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.cpp67
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.h10
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.cpp7
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.h10
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp103
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h6
-rw-r--r--src/VBox/Frontends/VirtualBox/src/globals/VBoxUtils.h52
-rw-r--r--src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/main.cpp5
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIDownloader.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIDownloaderAdditions.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.cpp149
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.h75
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIDownloaderUserManual.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UINetworkManager.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.cpp193
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.h (renamed from src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.h)89
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp266
-rw-r--r--src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.h106
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/DarwinKeyboard.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/DockIconPreview.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaApplication.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaSpecialControls.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin_cocoa.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/UIWindowMenuManager.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.m2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/tstDarwinKeyboard.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/darwin/vmstarter.mm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.asm2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/win/UIDesktopServices_win.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/win/VBoxUtils-win.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/win/VirtualBox.rc2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/x11/UIDesktopServices_x11.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxX11Helper.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/platform/x11/XKeyboard-new.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/precomp.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIConsoleEventHandler.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferDirectDraw.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQGL.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQImage.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQuartz2D.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferSDL.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp13
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp7
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp9
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachineMenuBar.cpp5
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachineShortcuts.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp7
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp9
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp7
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/UIVMCloseDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineViewFullscreen.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/normal/UIKeyboardHandlerNormal.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp10
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineViewNormal.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp29
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h5
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/scale/UIKeyboardHandlerScale.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineLogicScale.cpp10
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIKeyboardHandlerSeamless.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineViewSeamless.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIActionPoolSelector.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UISelectorShortcuts.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIVMDesktop.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIVMItem.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIVMListView.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIVMPreviewWindow.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.cpp24
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.h3
-rw-r--r--src/VBox/Frontends/VirtualBox/src/selector/VBoxSnapshotsWgt.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/UISettingsDefs.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp30
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/UISettingsPage.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsSelector.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsExtension.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsGeneral.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsLanguage.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetails.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.h2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsAudio.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsGeneral.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsParallel.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSF.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSFDetails.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSerial.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSystem.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp23
-rw-r--r--src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceExportEditorWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceImportEditorWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIBar.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIBootTable.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIHotKeyEditor.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UILineTextEdit.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIPopupBox.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UIProgressDialog.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/UISpecialControls.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxGuestRAMSlider.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxMediaComboBox.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorButton.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/widgets/VBoxWarningPane.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UICloneVMWizard.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIExportApplianceWzd.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIImportApplianceWzd.cpp2
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.cpp40
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.h11
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp17
-rw-r--r--src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp2
187 files changed, 1312 insertions, 858 deletions
diff --git a/src/VBox/Frontends/VirtualBox/src/UIMediumTypeChangeDialog.cpp b/src/VBox/Frontends/VirtualBox/src/UIMediumTypeChangeDialog.cpp
index f1fdbf071..af9b02a6d 100644
--- a/src/VBox/Frontends/VirtualBox/src/UIMediumTypeChangeDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/UIMediumTypeChangeDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMediumTypeChangeDialog.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMediumTypeChangeDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxAboutDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxAboutDlg.cpp
index d1a9c7915..543bb3595 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxAboutDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxAboutDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxAboutDlg.cpp 37762 2011-07-04 12:55:46Z vboxsync $ */
+/* $Id: VBoxAboutDlg.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp
index 0e35a5fd4..654a9ed99 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxFBOverlay.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxFBOverlay.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxFBOverlay.cpp $ */
/** @file
* VBoxFBOverlay implementation
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxFBQGL.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxFBQGL.cpp
index d449a70b9..793e3854e 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxFBQGL.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxFBQGL.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxFBQGL.cpp 29794 2010-05-25 16:06:59Z vboxsync $ */
+/* $Id: VBoxFBQGL.cpp $ */
/** @file
* VBoxFBQGL Opengl-based FrameBuffer implementation
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxGLSupportInfo.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxGLSupportInfo.cpp
index fcded7777..67d603d5b 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxGLSupportInfo.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxGLSupportInfo.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxGLSupportInfo.cpp 36386 2011-03-24 06:51:19Z vboxsync $ */
+/* $Id: VBoxGLSupportInfo.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.cpp
index 0c661da47..e46ad71d1 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxGlobalSettings.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxGlobalSettings.cpp 37544 2011-06-17 13:54:47Z vboxsync $ */
+/* $Id: VBoxGlobalSettings.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxLicenseViewer.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxLicenseViewer.cpp
index 41823d738..1e6d537dc 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxLicenseViewer.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxLicenseViewer.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxLicenseViewer.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxLicenseViewer.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp
index ff11788b7..8763837f2 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxMediaManagerDlg.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxMediaManagerDlg.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxMedium.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxMedium.cpp
index 1e8d38f94..8963715e3 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxMedium.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxMedium.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxMedium.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxMedium.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotDetailsDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotDetailsDlg.cpp
index 0d7071dea..75264e300 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotDetailsDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotDetailsDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxSnapshotDetailsDlg.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxSnapshotDetailsDlg.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxTakeSnapshotDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxTakeSnapshotDlg.cpp
index bf621c3c2..430341b67 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxTakeSnapshotDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxTakeSnapshotDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxTakeSnapshotDlg.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxTakeSnapshotDlg.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp
deleted file mode 100644
index f135c261b..000000000
--- a/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp
+++ /dev/null
@@ -1,465 +0,0 @@
-/** @file
- *
- * VBox frontends: Qt4 GUI ("VirtualBox"):
- * VBoxUpdateDlg class implementation
- */
-
-/*
- * Copyright (C) 2006-2011 Oracle Corporation
- *
- * This file is part of VirtualBox Open Source Edition (OSE), as
- * available from http://www.virtualbox.org. This file is free software;
- * you can redistribute it and/or modify it under the terms of the GNU
- * General Public License (GPL) as published by the Free Software
- * Foundation, in version 2 as it comes in the "COPYING" file of the
- * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
- * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
- */
-
-#ifdef VBOX_WITH_PRECOMPILED_HEADERS
-#include "precomp.h"
-#else /* !VBOX_WITH_PRECOMPILED_HEADERS */
-/* Global includes */
-#include <QNetworkAccessManager>
-#include <QNetworkReply>
-/* Local includes */
-#include "VBoxUpdateDlg.h"
-#include "VBoxGlobal.h"
-#include "UIMessageCenter.h"
-#include "UIIconPool.h"
-#include "VBoxUtils.h"
-#endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
-
-/**
- * This class is used to store VBox version data.
- */
-class VBoxVersion
-{
-public:
-
- VBoxVersion(const QString &strVersion)
- : x(0), y(0), z(0)
- {
- QStringList versionStack = strVersion.split('.');
- if (versionStack.size() > 0)
- x = versionStack[0].toInt();
- if (versionStack.size() > 1)
- y = versionStack[1].toInt();
- if (versionStack.size() > 2)
- z = versionStack[2].toInt();
- }
-
- bool operator<(const VBoxVersion &other) const
- {
- return (x < other.x) ||
- (x == other.x && y < other.y) ||
- (x == other.x && y == other.y && z < other.z);
- }
-
- QString toString() const
- {
- return QString("%1.%2.%3").arg(x).arg(y).arg(z);
- }
-
-private:
-
- int x;
- int y;
- int z;
-};
-
-/* VBoxUpdateData stuff: */
-QList<UpdateDay> VBoxUpdateData::m_dayList = QList<UpdateDay>();
-
-void VBoxUpdateData::populate()
-{
- m_dayList.clear();
-
- /* To avoid re-translation complexity all
- * have to be retranslated separately: */
-
- /* Separately retranslate each day: */
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("1 day"), "1 d");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("2 days"), "2 d");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("3 days"), "3 d");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("4 days"), "4 d");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("5 days"), "5 d");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("6 days"), "6 d");
-
- /* Separately retranslate each week */
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("1 week"), "1 w");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("2 weeks"), "2 w");
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("3 weeks"), "3 w");
-
- /* Separately retranslate each month */
- m_dayList << UpdateDay(VBoxUpdateDlg::tr("1 month"), "1 m");
-}
-
-QStringList VBoxUpdateData::list()
-{
- QStringList result;
- for (int i = 0; i < m_dayList.size(); ++i)
- result << m_dayList[i].val;
- return result;
-}
-
-VBoxUpdateData::VBoxUpdateData(const QString &strData)
- : m_strData(strData)
- , m_periodIndex(Period1Day)
- , m_branchIndex(BranchStable)
-{
- decode();
-}
-
-VBoxUpdateData::VBoxUpdateData(PeriodType periodIndex, BranchType branchIndex)
- : m_strData(QString())
- , m_periodIndex(periodIndex)
- , m_branchIndex(branchIndex)
-{
- encode();
-}
-
-bool VBoxUpdateData::isNecessary()
-{
- return m_periodIndex != PeriodNever && QDate::currentDate() >= m_date;
-}
-
-bool VBoxUpdateData::isNoNeedToCheck()
-{
- return m_periodIndex == PeriodNever;
-}
-
-QString VBoxUpdateData::data() const
-{
- return m_strData;
-}
-
-VBoxUpdateData::PeriodType VBoxUpdateData::periodIndex() const
-{
- return m_periodIndex;
-}
-
-QString VBoxUpdateData::date() const
-{
- return m_periodIndex == PeriodNever ? VBoxUpdateDlg::tr("Never")
- : m_date.toString(Qt::LocaleDate);
-}
-
-VBoxUpdateData::BranchType VBoxUpdateData::branchIndex() const
-{
- return m_branchIndex;
-}
-
-QString VBoxUpdateData::branchName() const
-{
- switch (m_branchIndex)
- {
- case BranchStable:
- return "stable";
- case BranchAllRelease:
- return "allrelease";
- case BranchWithBetas:
- return "withbetas";
- }
- return QString();
-}
-
-void VBoxUpdateData::decode()
-{
- /* Parse standard values: */
- if (m_strData == "never")
- m_periodIndex = PeriodNever;
- /* Parse other values: */
- else
- {
- QStringList parser(m_strData.split(", ", QString::SkipEmptyParts));
-
- /* Parse 'period' value: */
- if (parser.size() > 0)
- {
- if (m_dayList.isEmpty())
- populate();
- PeriodType index = (PeriodType)m_dayList.indexOf(UpdateDay(QString(), parser[0]));
- m_periodIndex = index == PeriodUndefined ? Period1Day : index;
- }
-
- /* Parse 'date' value: */
- if (parser.size() > 1)
- {
- QDate date = QDate::fromString(parser[1], Qt::ISODate);
- m_date = date.isValid() ? date : QDate::currentDate();
- }
-
- /* Parse 'branch' value: */
- if (parser.size() > 2)
- {
- QString branch(parser[2]);
- m_branchIndex = branch == "withbetas" ? BranchWithBetas :
- branch == "allrelease" ? BranchAllRelease : BranchStable;
- }
- }
-}
-
-void VBoxUpdateData::encode()
-{
- /* Encode standard values: */
- if (m_periodIndex == PeriodNever)
- m_strData = "never";
- /* Encode other values: */
- else
- {
- /* Encode 'period' value: */
- if (m_dayList.isEmpty())
- populate();
- QString remindPeriod = m_dayList[m_periodIndex].key;
-
- /* Encode 'date' value: */
- m_date = QDate::currentDate();
- QStringList parser(remindPeriod.split(' '));
- if (parser[1] == "d")
- m_date = m_date.addDays(parser[0].toInt());
- else if (parser[1] == "w")
- m_date = m_date.addDays(parser[0].toInt() * 7);
- else if (parser[1] == "m")
- m_date = m_date.addMonths(parser[0].toInt());
- QString remindDate = m_date.toString(Qt::ISODate);
-
- /* Encode 'branch' value: */
- QString branchValue = m_branchIndex == BranchWithBetas ? "withbetas" :
- m_branchIndex == BranchAllRelease ? "allrelease" : "stable";
-
- /* Composite m_strData: */
- m_strData = QString("%1, %2, %3").arg(remindPeriod, remindDate, branchValue);
- }
-}
-
-/* VBoxUpdateDlg stuff: */
-bool VBoxUpdateDlg::isNecessary()
-{
- VBoxUpdateData data(vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateDate));
- return data.isNecessary();
-}
-
-VBoxUpdateDlg::VBoxUpdateDlg(VBoxUpdateDlg **ppSelf, bool fForceRun, QWidget *pParent)
- : QIWithRetranslateUI<QDialog>(pParent)
- , m_ppSelf(ppSelf)
- , m_pNetworkManager(new QNetworkAccessManager(this))
- , m_url("http://update.virtualbox.org/query.php")
- , m_fForceRun(fForceRun)
-{
- /* Store external pointer to this dialog: */
- *m_ppSelf = this;
-
- /* Apply UI decorations: */
- Ui::VBoxUpdateDlg::setupUi(this);
-
- /* Apply window icons: */
- setWindowIcon(UIIconPool::iconSetFull(QSize(32, 32), QSize(16, 16),
- ":/refresh_32px.png", ":/refresh_16px.png"));
-
- /* Setup other connections: */
- connect(mBtnCheck, SIGNAL(clicked()), this, SLOT(search()));
- connect(mBtnFinish, SIGNAL(clicked()), this, SLOT(accept()));
- connect(this, SIGNAL(sigDelayedAcception()), this, SLOT(accept()), Qt::QueuedConnection);
-
- /* Setup initial condition: */
- mPbCheck->setMinimumWidth(mLogoUpdate->width() + mLogoUpdate->frameWidth() * 2);
- mPbCheck->hide();
- mTextSuccessInfo->hide();
- mTextFailureInfo->hide();
- mTextNotFoundInfo->hide();
-
- /* Retranslate string constants: */
- retranslateUi();
-}
-
-VBoxUpdateDlg::~VBoxUpdateDlg()
-{
- /* Erase dialog handle in config file: */
- vboxGlobal().virtualBox().SetExtraData(VBoxDefs::GUI_UpdateDlgWinID, QString());
-
- /* Erase external pointer to this dialog: */
- *m_ppSelf = 0;
-}
-
-void VBoxUpdateDlg::retranslateUi()
-{
- /* Translate uic generated strings: */
- Ui::VBoxUpdateDlg::retranslateUi(this);
-
- /* For wizard update: */
- if (!isHidden())
- {
- setWindowTitle(tr("VirtualBox Update Wizard"));
-
- mPageUpdateHdr->setText(tr("Check for Updates"));
- mBtnCheck->setText(tr("Chec&k"));
- mBtnCancel->setText(tr("Cancel"));
-
- mPageFinishHdr->setText(tr("Summary"));
- mBtnFinish->setText(tr("&Close"));
-
- mTextUpdateInfo->setText(tr("<p>This wizard will connect to the VirtualBox "
- "web-site and check if a newer version of "
- "VirtualBox is available.</p><p>Use the "
- "<b>Check</b> button to check for a new version "
- "now or the <b>Cancel</b> button if you do not "
- "want to perform this check.</p><p>You can run "
- "this wizard at any time by choosing <b>Check "
- "for Updates...</b> from the <b>Help</b> menu.</p>"));
-
- mTextSuccessInfo->setText(tr("<p>A new version of VirtualBox has been released! "
- "Version <b>%1</b> is available at "
- "<a href=\"http://www.virtualbox.org/\">virtualbox.org</a>.</p>"
- "<p>You can download this version using the link:</p>"
- "<p><a href=%2>%3</a></p>"));
-
- mTextFailureInfo->setText(tr("<p>Unable to obtain the new version information "
- "due to the following network error:</p><p><b>%1</b></p>"));
-
- mTextNotFoundInfo->setText(tr("You are already running the most recent version of VirtualBox."));
- }
-}
-
-void VBoxUpdateDlg::accept()
-{
- /* Recalculate new update data: */
- VBoxUpdateData oldData(vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateDate));
- VBoxUpdateData newData(oldData.periodIndex(), oldData.branchIndex());
- vboxGlobal().virtualBox().SetExtraData(VBoxDefs::GUI_UpdateDate, newData.data());
- /* Call to base-class: */
- QDialog::accept();
-}
-
-void VBoxUpdateDlg::search()
-{
- /* Calculate the count of checks left: */
- int cCount = 1;
- QString strCount = vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateCheckCount);
- if (!strCount.isEmpty())
- {
- bool ok = false;
- int c = strCount.toLongLong(&ok);
- if (ok) cCount = c;
- }
-
- /* Compose query: */
- QUrl url(m_url);
- url.addQueryItem("platform", vboxGlobal().virtualBox().GetPackageType());
- /* Branding: Check whether we have a local branding file which tells us our version suffix "FOO"
- (e.g. 3.06.54321_FOO) to identify this installation */
- if (vboxGlobal().brandingIsActive())
- {
- url.addQueryItem("version", QString("%1_%2_%3").arg(vboxGlobal().virtualBox().GetVersion())
- .arg(vboxGlobal().virtualBox().GetRevision())
- .arg(vboxGlobal().brandingGetKey("VerSuffix")));
- }
- else
- {
- /* Use hard coded version set by VBOX_VERSION_STRING: */
- url.addQueryItem("version", QString("%1_%2").arg(vboxGlobal().virtualBox().GetVersion())
- .arg(vboxGlobal().virtualBox().GetRevision()));
- }
- url.addQueryItem("count", QString::number(cCount));
- url.addQueryItem("branch", VBoxUpdateData(vboxGlobal().virtualBox().
- GetExtraData(VBoxDefs::GUI_UpdateDate)).branchName());
- QString strUserAgent(QString("VirtualBox %1 <%2>")
- .arg(vboxGlobal().virtualBox().GetVersion())
- .arg(vboxGlobal().platformInfo()));
-
- /* Show progress bar: */
- mPbCheck->show();
-
- /* Setup GET request: */
- QNetworkRequest request;
- request.setUrl(url);
- request.setRawHeader("User-Agent", strUserAgent.toAscii());
- QNetworkReply *pReply = m_pNetworkManager->get(request);
- connect(pReply, SIGNAL(finished()), this, SLOT(sltHandleReply()));
- connect(pReply, SIGNAL(sslErrors(QList<QSslError>)), pReply, SLOT(ignoreSslErrors()));
-}
-
-void VBoxUpdateDlg::sltHandleReply()
-{
- /* Get corresponding network reply object: */
- QNetworkReply *pReply = qobject_cast<QNetworkReply*>(sender());
- /* And ask it for suicide: */
- pReply->deleteLater();
-
- /* Hide progress bar: */
- mPbCheck->hide();
-
- /* Handle normal result: */
- if (pReply->error() == QNetworkReply::NoError)
- {
- /* Deserialize incoming data: */
- QString strResponseData(pReply->readAll());
-
- /* Newer version of necessary package found: */
- if (strResponseData.indexOf(QRegExp("^\\d+\\.\\d+\\.\\d+ \\S+$")) == 0)
- {
- QStringList response = strResponseData.split(" ", QString::SkipEmptyParts);
-
- /* For background update: */
- if (isHidden())
- {
- msgCenter().showUpdateSuccess(vboxGlobal().mainWindow(), response[0], response[1]);
- acceptLater();
- }
- /* For wizard update: */
- else
- {
- mTextSuccessInfo->setText(mTextSuccessInfo->text().arg(response[0], response[1], response[1]));
- mTextSuccessInfo->show();
- mPageStack->setCurrentIndex(1);
- }
- }
- /* No newer version of necessary package found: */
- else
- {
- /* For background update: */
- if (isHidden())
- {
- if (m_fForceRun)
- msgCenter().showUpdateNotFound(vboxGlobal().mainWindow());
- acceptLater();
- }
- /* For wizard update: */
- else
- {
- mTextNotFoundInfo->show();
- mPageStack->setCurrentIndex(1);
- }
- }
-
- /* Save left count of checks: */
- int cCount = 1;
- QString strCount = vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateCheckCount);
- if (!strCount.isEmpty())
- {
- bool ok = false;
- int c = strCount.toLongLong(&ok);
- if (ok) cCount = c;
- }
- vboxGlobal().virtualBox().SetExtraData(VBoxDefs::GUI_UpdateCheckCount, QString("%1").arg((qulonglong)cCount + 1));
- }
- /* Handle errors: */
- else
- {
- /* For background update: */
- if (isHidden())
- {
- if (m_fForceRun)
- msgCenter().showUpdateFailure(vboxGlobal().mainWindow(), pReply->errorString());
- acceptLater();
- }
- /* For wizard update: */
- else
- {
- mTextFailureInfo->setText(mTextFailureInfo->text().arg(pReply->errorString()));
- mTextFailureInfo->show();
- mPageStack->setCurrentIndex(1);
- }
- }
-}
-
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp
index 80c249bb3..dfa5be24d 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxVMInformationDlg.cpp 35761 2011-01-28 13:19:26Z vboxsync $ */
+/* $Id: VBoxVMInformationDlg.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp b/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp
index 8c17ea424..448e026d5 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxVMLogViewer.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: VBoxVMLogViewer.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIAdvancedSlider.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIAdvancedSlider.cpp
index d4f9bee6b..5a69aeac6 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIAdvancedSlider.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIAdvancedSlider.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIAdvancedSlider.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIAdvancedSlider.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp
index 987ad299d..773adb8c6 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIArrowButtonPress.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: QIArrowButtonPress.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp
index 4075a22ee..062cefb99 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIArrowButtonSwitch.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: QIArrowButtonSwitch.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowSplitter.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowSplitter.cpp
index 64bf62196..b55758ff9 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowSplitter.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowSplitter.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIArrowSplitter.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIArrowSplitter.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIDialog.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIDialog.cpp
index 527bda80d..46f10cb1c 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIDialog.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogButtonBox.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogButtonBox.cpp
index b372a1283..84cfca887 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogButtonBox.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogButtonBox.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIDialogButtonBox.cpp 30356 2010-06-22 08:42:22Z vboxsync $ */
+/* $Id: QIDialogButtonBox.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIFileDialog.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIFileDialog.cpp
index ace6753bd..9ff1008bd 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIFileDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIFileDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIFileDialog.cpp 37629 2011-06-24 12:46:48Z vboxsync $ */
+/* $Id: QIFileDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QILabel.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QILabel.cpp
index 4e51505e5..3898d7d63 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QILabel.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QILabel.cpp
@@ -1,4 +1,4 @@
-/* $Id: QILabel.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: QILabel.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QILabelSeparator.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QILabelSeparator.cpp
index 2f1fc1de9..a0ebcfb7f 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QILabelSeparator.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QILabelSeparator.cpp
@@ -1,4 +1,4 @@
-/* $Id: QILabelSeparator.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QILabelSeparator.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QILineEdit.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QILineEdit.cpp
index fc5c311c2..42eaf8e20 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QILineEdit.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QILineEdit.cpp
@@ -1,4 +1,4 @@
-/* $Id: QILineEdit.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QILineEdit.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIListView.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIListView.cpp
index 6e4023e25..54ff879f1 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIListView.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIListView.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIListView.cpp 34064 2010-11-15 11:12:37Z vboxsync $ */
+/* $Id: QIListView.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIMainDialog.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIMainDialog.cpp
index c1b5ead58..8f8355028 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIMainDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIMainDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIMainDialog.cpp 35131 2010-12-15 13:19:00Z vboxsync $ */
+/* $Id: QIMainDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp
index 7846abcee..10df2e2d7 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIMessageBox.cpp 38373 2011-08-09 10:25:57Z vboxsync $ */
+/* $Id: QIMessageBox.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIRichToolButton.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIRichToolButton.cpp
index 5f41fd837..fe776077d 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIRichToolButton.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIRichToolButton.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIRichToolButton.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIRichToolButton.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QISplitter.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QISplitter.cpp
index 9af79a277..4ebdf9b29 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QISplitter.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QISplitter.cpp
@@ -1,4 +1,4 @@
-/* $Id: QISplitter.cpp 30868 2010-07-16 09:42:12Z vboxsync $ */
+/* $Id: QISplitter.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIStateIndicator.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIStateIndicator.cpp
index 15ea3531b..5cbb21073 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIStateIndicator.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIStateIndicator.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIStateIndicator.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: QIStateIndicator.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIStatusBar.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIStatusBar.cpp
index 42cea93de..6aa7bde06 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIStatusBar.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIStatusBar.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIStatusBar.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIStatusBar.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp
index fb51a5b79..964cf5d1f 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QITableView.cpp
@@ -1,4 +1,4 @@
-/* $Id: QITableView.cpp 31533 2010-08-10 13:08:56Z vboxsync $ */
+/* $Id: QITableView.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QITreeView.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QITreeView.cpp
index 2ab67624b..7c42e72bf 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QITreeView.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QITreeView.cpp
@@ -1,4 +1,4 @@
-/* $Id: QITreeView.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QITreeView.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QITreeWidget.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QITreeWidget.cpp
index af057d911..e03966a78 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QITreeWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QITreeWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: QITreeWidget.cpp 37610 2011-06-23 12:26:14Z vboxsync $ */
+/* $Id: QITreeWidget.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIWidgetValidator.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIWidgetValidator.cpp
index e8d54ec65..012c4aa75 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIWidgetValidator.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIWidgetValidator.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIWidgetValidator.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: QIWidgetValidator.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/extensions/QIWizard.cpp b/src/VBox/Frontends/VirtualBox/src/extensions/QIWizard.cpp
index 85ebfeade..d2bfaa7f0 100644
--- a/src/VBox/Frontends/VirtualBox/src/extensions/QIWizard.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/extensions/QIWizard.cpp
@@ -1,4 +1,4 @@
-/* $Id: QIWizard.cpp 35234 2010-12-20 09:40:31Z vboxsync $ */
+/* $Id: QIWizard.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/COMDefs.cpp b/src/VBox/Frontends/VirtualBox/src/globals/COMDefs.cpp
index 3543defcf..3eee51917 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/COMDefs.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/COMDefs.cpp
@@ -1,4 +1,4 @@
-/* $Id: COMDefs.cpp 37015 2011-05-09 14:11:00Z vboxsync $ */
+/* $Id: COMDefs.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
index 322765f04..910c6b0dd 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIActionPool.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIActionPool.cpp 38355 2011-08-08 15:27:10Z vboxsync $ */
+/* $Id: UIActionPool.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIExtraDataEventHandler.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIExtraDataEventHandler.cpp
index 936d27425..24d7763bb 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIExtraDataEventHandler.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIExtraDataEventHandler.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIExtraDataEventHandler.cpp 35722 2011-01-26 16:37:16Z vboxsync $ */
+/* $Id: UIExtraDataEventHandler.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp
index 1ce6a6bf8..7caaf05d5 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIIconPool.cpp 30206 2010-06-15 15:41:05Z vboxsync $ */
+/* $Id: UIIconPool.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIImageTools.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIImageTools.cpp
index fa4e996f1..5a94870b5 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIImageTools.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIImageTools.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIImageTools.cpp 35424 2011-01-07 13:05:41Z vboxsync $ */
+/* $Id: UIImageTools.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp
index 90e27ec8a..b6356c483 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIMainEventListener.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMainEventListener.cpp 37712 2011-06-30 14:11:14Z vboxsync $ */
+/* $Id: UIMainEventListener.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.cpp
index 622cf89b0..fe5dc163f 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMessageCenter.cpp 38337 2011-08-08 09:05:36Z vboxsync $ */
+/* $Id: UIMessageCenter.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -21,6 +21,7 @@
#include <QDir>
#include <QDesktopWidget>
#include <QFileInfo>
+#include <QLocale>
#include <QThread>
#ifdef Q_WS_MAC
# include <QPushButton>
@@ -1702,14 +1703,14 @@ void UIMessageCenter::cannotMountGuestAdditions(const QString &strMachineName)
.arg(strMachineName));
}
-bool UIMessageCenter::confirmDownloadAdditions(const QString &strUrl,
- ulong uSize)
+bool UIMessageCenter::confirmDownloadAdditions(const QString &strUrl, qulonglong uSize)
{
+ QLocale loc(VBoxGlobal::languageId());
return messageOkCancel(mainMachineWindowShown(), Question,
tr("<p>Are you sure you want to download the VirtualBox "
"Guest Additions CD image from "
"<nobr><a href=\"%1\">%2</a></nobr> "
- "(size %3 bytes)?</p>").arg(strUrl).arg(strUrl).arg(uSize),
+ "(size %3 bytes)?</p>").arg(strUrl).arg(strUrl).arg(loc.toString(uSize)),
0, /* pcszAutoConfirmId */
tr("Download", "additions"));
}
@@ -1747,13 +1748,14 @@ bool UIMessageCenter::askAboutUserManualDownload(const QString &strMissedLocatio
tr("Download", "additions"));
}
-bool UIMessageCenter::confirmUserManualDownload(const QString &strURL, ulong uSize)
+bool UIMessageCenter::confirmUserManualDownload(const QString &strURL, qulonglong uSize)
{
+ QLocale loc(VBoxGlobal::languageId());
return messageOkCancel(mainWindowShown(), Question,
tr("<p>Are you sure you want to download the VirtualBox "
"User Manual from "
"<nobr><a href=\"%1\">%2</a></nobr> "
- "(size %3 bytes)?</p>").arg(strURL).arg(strURL).arg(uSize),
+ "(size %3 bytes)?</p>").arg(strURL).arg(strURL).arg(loc.toString(uSize)),
0, /* Auto-confirm Id */
tr("Download", "additions"));
}
@@ -1787,6 +1789,57 @@ void UIMessageCenter::warnAboutUserManualCantBeSaved(const QString &strURL, cons
.arg(strURL).arg(strURL).arg(strTarget));
}
+bool UIMessageCenter::proposeDownloadExtensionPack(const QString &strExtPackName, const QString &strExtPackVersion)
+{
+ return messageOkCancel(mainWindowShown(), Question,
+ tr("<p>You have an old version (%1) of the <b><nobr>%2</nobr></b> installed.</p>"
+ "<p>Do you wish to download latest one from the Internet?</p>")
+ .arg(strExtPackVersion).arg(strExtPackName),
+ 0, /* Auto-confirm Id */
+ tr("Download", "extension pack"));
+}
+
+bool UIMessageCenter::confirmDownloadExtensionPack(const QString &strExtPackName, const QString &strURL, qulonglong uSize)
+{
+ QLocale loc(VBoxGlobal::languageId());
+ return messageOkCancel(mainWindowShown(), Question,
+ tr("<p>Are you sure you want to download the <b><nobr>%1</nobr></b> "
+ "from <nobr><a href=\"%2\">%2</a></nobr> (size %3 bytes)?</p>")
+ .arg(strExtPackName, strURL, loc.toString(uSize)),
+ 0, /* Auto-confirm Id */
+ tr("Download", "extension pack"));
+}
+
+bool UIMessageCenter::proposeInstallExtentionPack(const QString &strExtPackName, const QString &strFrom, const QString &strTo)
+{
+ return messageOkCancel(mainWindowShown(), Question,
+ tr("<p>The <b><nobr>%1</nobr></b> has been "
+ "successfully downloaded from <nobr><a href=\"%2\">%2</a></nobr> "
+ "and saved locally as <nobr><b>%3</b>.</nobr></p>"
+ "<p>Do you wish to install this extension pack?</p>")
+ .arg(strExtPackName, strFrom, strTo),
+ 0, /* Auto-confirm Id */
+ tr ("Install", "extension pack"));
+}
+
+void UIMessageCenter::warnAboutExtentionPackCantBeSaved(const QString &strExtPackName, const QString &strFrom, const QString &strTo)
+{
+ message(mainWindowShown(), Error,
+ tr("<p>The <b><nobr>%1</nobr></b> has been "
+ "successfully downloaded from <nobr><a href=\"%2\">%2</a></nobr> "
+ "but can't be saved locally as <nobr><b>%3</b>.</nobr></p>"
+ "<p>Please choose another location for that file.</p>")
+ .arg(strExtPackName, strFrom, strTo));
+}
+
+void UIMessageCenter::cannotDownloadExtensionPack(const QString &strExtPackName, const QString &strFrom, const QString &strError)
+{
+ message(mainWindowShown(), Error,
+ tr("<p>Failed to download the <b><nobr>%1</nobr></b> "
+ "from <nobr><a href=\"%2\">%2</a>.</nobr></p><p>%3</p>")
+ .arg(strExtPackName, strFrom, strError));
+}
+
void UIMessageCenter::cannotConnectRegister(QWidget *pParent,
const QString &strUrl,
const QString &strReason)
@@ -2833,7 +2886,7 @@ void UIMessageCenter::sltShowHelpHelpDialog()
UIDownloaderUserManual *pDl = UIDownloaderUserManual::create();
/* Configure User Manual downloader: */
CVirtualBox vbox = vboxGlobal().virtualBox();
- pDl->addSource(QString("http://download.virtualbox.org/virtualbox/%1/").arg(vbox.GetVersion().remove("_OSE")) + strShortFileName);
+ pDl->addSource(QString("http://download.virtualbox.org/virtualbox/%1/").arg(vboxGlobal().vboxVersionStringNormalized()) + strShortFileName);
pDl->addSource(QString("http://download.virtualbox.org/virtualbox/") + strShortFileName);
pDl->setTarget(strUserManualFileName2);
pDl->setParentWidget(mainWindowShown());
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.h b/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.h
index bf1ad991a..602b54812 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.h
+++ b/src/VBox/Frontends/VirtualBox/src/globals/UIMessageCenter.h
@@ -299,16 +299,22 @@ public:
int cannotFindGuestAdditions(const QString &strSrc1, const QString &strSrc2);
void cannotDownloadGuestAdditions(const QString &strUrl, const QString &strReason);
void cannotMountGuestAdditions(const QString &strMachineName);
- bool confirmDownloadAdditions(const QString &strUrl, ulong uSize);
+ bool confirmDownloadAdditions(const QString &strUrl, qulonglong uSize);
bool confirmMountAdditions(const QString &strUrl, const QString &strSrc);
void warnAboutAdditionsCantBeSaved(const QString &strTarget);
bool askAboutUserManualDownload(const QString &strMissedLocation);
- bool confirmUserManualDownload(const QString &strURL, ulong uSize);
+ bool confirmUserManualDownload(const QString &strURL, qulonglong uSize);
void warnAboutUserManualCantBeDownloaded(const QString &strURL, const QString &strReason);
void warnAboutUserManualDownloaded(const QString &strURL, const QString &strTarget);
void warnAboutUserManualCantBeSaved(const QString &strURL, const QString &strTarget);
+ bool proposeDownloadExtensionPack(const QString &strExtPackName, const QString &strExtPackVersion);
+ bool confirmDownloadExtensionPack(const QString &strExtPackName, const QString &strURL, qulonglong uSize);
+ bool proposeInstallExtentionPack(const QString &strExtPackName, const QString &strFrom, const QString &strTo);
+ void warnAboutExtentionPackCantBeSaved(const QString &strExtPackName, const QString &strFrom, const QString &strTo);
+ void cannotDownloadExtensionPack(const QString &strExtPackName, const QString &strFrom, const QString &strError);
+
void cannotConnectRegister(QWidget *pParent,
const QString &strUrl,
const QString &strReason);
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.cpp b/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.cpp
index 134ccb80f..5b775ede0 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxDefs.cpp 35897 2011-02-08 13:25:30Z vboxsync $ */
+/* $Id: VBoxDefs.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -23,6 +23,10 @@
/* Global includes */
#include <QStringList>
+/* VBoxGlobalDefs stuff: */
+const char* VBoxGlobalDefs::UI_ExtPackName = "Oracle VM VirtualBox Extension Pack";
+
+/* VBoxDefs stuff: */
const char* VBoxDefs::GUI_LastWindowPosition = "GUI/LastWindowPosition";
const char* VBoxDefs::GUI_LastNormalWindowPosition = "GUI/LastNormalWindowPosition";
const char* VBoxDefs::GUI_LastScaleWindowPosition = "GUI/LastScaleWindowPosition";
@@ -43,6 +47,7 @@ const char* VBoxDefs::GUI_MiniToolBarAlignment = "GUI/MiniToolBarAlignment";
const char* VBoxDefs::GUI_MiniToolBarAutoHide = "GUI/MiniToolBarAutoHide";
const char* VBoxDefs::GUI_LastCloseAction = "GUI/LastCloseAction";
const char* VBoxDefs::GUI_RestrictedCloseActions = "GUI/RestrictedCloseActions";
+const char* VBoxDefs::GUI_CloseActionHook = "GUI/CloseActionHook";
const char* VBoxDefs::GUI_SuppressMessages = "GUI/SuppressMessages";
const char* VBoxDefs::GUI_PermanentSharedFoldersAtRuntime = "GUI/PermanentSharedFoldersAtRuntime";
const char* VBoxDefs::GUI_LanguageId = "GUI/LanguageID";
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.h b/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.h
index 8c9932814..87e2c145c 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.h
+++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxDefs.h
@@ -47,6 +47,15 @@
#define SIZEOF_ARRAY(a) (sizeof(a) / sizeof(a[0]))
#endif
+/**
+ * Common global VBox namespace.
+ * Later it will replace VBoxDefs struct used as global VBox namespace.
+ */
+namespace VBoxGlobalDefs
+{
+ extern const char *UI_ExtPackName;
+}
+
/** Common namespace for all enums */
struct VBoxDefs
{
@@ -118,6 +127,7 @@ struct VBoxDefs
static const char* GUI_MiniToolBarAutoHide;
static const char* GUI_LastCloseAction;
static const char* GUI_RestrictedCloseActions;
+ static const char* GUI_CloseActionHook;
static const char* GUI_SuppressMessages;
static const char* GUI_PermanentSharedFoldersAtRuntime;
static const char* GUI_LanguageId;
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
index 478353086..f446d9bcd 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxGlobal.cpp 38421 2011-08-11 14:55:02Z vboxsync $ */
+/* $Id: VBoxGlobal.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -28,16 +28,18 @@
#include "QIMessageBox.h"
#include "QIDialogButtonBox.h"
#include "UIIconPool.h"
+#include "UIActionPoolSelector.h"
+#include "UIActionPoolRuntime.h"
#include "UIExtraDataEventHandler.h"
#include "QIFileDialog.h"
#include "UINetworkManager.h"
+#include "UIUpdateManager.h"
#include "UIMachine.h"
#include "UISession.h"
#ifdef VBOX_WITH_REGISTRATION
# include "UIRegistrationWzd.h"
#endif
-#include "VBoxUpdateDlg.h"
#ifdef VBOX_WITH_VIDEOHWACCEL
# include "VBoxFBOverlay.h"
#endif /* VBOX_WITH_VIDEOHWACCEL */
@@ -270,7 +272,6 @@ VBoxGlobal::VBoxGlobal()
#ifdef VBOX_WITH_REGISTRATION
, mRegDlg (NULL)
#endif
- , mUpdDlg (NULL)
#ifdef VBOX_GUI_WITH_SYSTRAY
, mIsTrayMenu (false)
, mIncreasedWindowCounter (false)
@@ -374,6 +375,16 @@ uint VBoxGlobal::qtCTVersion()
ct_ver_str.section ('.', 2, 2).toInt();
}
+QString VBoxGlobal::vboxVersionString() const
+{
+ return mVBox.GetVersion();
+}
+
+QString VBoxGlobal::vboxVersionStringNormalized() const
+{
+ return vboxVersionString().remove(VBOX_BUILD_PUBLISHER);
+}
+
bool VBoxGlobal::isBeta() const
{
return mVBox.GetVersion().contains("BETA", Qt::CaseInsensitive);
@@ -4466,7 +4477,10 @@ quint64 VBoxGlobal::required3DWddmOffscreenVideoMemory(const QString &strGuestOS
/* static */
bool VBoxGlobal::isWddmCompatibleOsType(const QString &strGuestOSTypeId)
{
- return strGuestOSTypeId.startsWith("WindowsVista") || strGuestOSTypeId.startsWith("Windows7") || strGuestOSTypeId.startsWith("Windows2008");
+ return strGuestOSTypeId.startsWith("WindowsVista")
+ || strGuestOSTypeId.startsWith("Windows7")
+ || strGuestOSTypeId.startsWith("Windows8")
+ || strGuestOSTypeId.startsWith("Windows2008");
}
#endif /* VBOX_WITH_CRHGSMI */
@@ -4612,67 +4626,6 @@ void VBoxGlobal::showRegistrationDialog (bool aForce)
#endif
}
-/**
- * Shows the VirtualBox version check & update dialog.
- *
- * @note that this method is not part of UIMessageCenter (like e.g.
- * UIMessageCenter::sltShowHelpAboutDialog()) because it is tied to
- * VBoxCallback::OnExtraDataChange() handling performed by VBoxGlobal.
- *
- * @param aForce
- */
-void VBoxGlobal::showUpdateDialog (bool aForce)
-{
- /* Silently check in one day after current time-stamp */
- QTimer::singleShot (24 /* hours */ * 60 /* minutes */ *
- 60 /* seconds */ * 1000 /* milliseconds */,
- this, SLOT (perDayNewVersionNotifier()));
-
- bool isNecessary = VBoxUpdateDlg::isNecessary();
-
- if (!aForce && !isNecessary)
- return;
-
- if (mUpdDlg)
- {
- if (!mUpdDlg->isHidden())
- {
- mUpdDlg->setWindowState (mUpdDlg->windowState() & ~Qt::WindowMinimized);
- mUpdDlg->raise();
- mUpdDlg->activateWindow();
- }
- }
- else
- {
- /* Store the ID of the main window to ensure that only one
- * update dialog is shown at a time. Due to manipulations with
- * OnExtraDataCanChange() and OnExtraDataChange() signals, this extra
- * data item acts like an inter-process mutex, so the first process
- * that attempts to set it will win, the rest will get a failure from
- * the SetExtraData() call. */
- mVBox.SetExtraData (VBoxDefs::GUI_UpdateDlgWinID,
- QString ("%1").arg ((qulonglong) mMainWindow->winId()));
-
- if (mVBox.isOk())
- {
- /* We've got the "mutex", create a new update dialog */
- VBoxUpdateDlg *dlg = new VBoxUpdateDlg (&mUpdDlg, aForce, 0);
- dlg->setAttribute (Qt::WA_DeleteOnClose);
- Assert (dlg == mUpdDlg);
-
- /* Update dialog always in background mode for now.
- * if (!aForce && isAutomatic) */
- mUpdDlg->search();
- /* else mUpdDlg->show(); */
- }
- }
-}
-
-void VBoxGlobal::perDayNewVersionNotifier()
-{
- showUpdateDialog (false /* force show? */);
-}
-
void VBoxGlobal::sltGUILanguageChange(QString strLang)
{
loadLanguage(strLang);
@@ -4930,6 +4883,8 @@ void VBoxGlobal::init()
{"Windows2008_64", ":/os_win2k8_64.png"},
{"Windows7", ":/os_win7.png"},
{"Windows7_64", ":/os_win7_64.png"},
+ {"Windows8", ":/os_win8.png"},
+ {"Windows8_64", ":/os_win8_64.png"},
{"WindowsNT", ":/os_win_other.png"},
{"OS2Warp3", ":/os_os2warp3.png"},
{"OS2Warp4", ":/os_os2warp4.png"},
@@ -5243,8 +5198,17 @@ void VBoxGlobal::init()
/* Handle global settings change for the first time: */
sltProcessGlobalSettingChange();
+ /* Create action pool: */
+ if (isVMConsoleProcess())
+ UIActionPoolRuntime::create();
+ else
+ UIActionPoolSelector::create();
+
/* Create network manager: */
UINetworkManager::create();
+
+ /* Schedule update manager: */
+ UIUpdateManager::schedule();
}
@@ -5255,9 +5219,18 @@ void VBoxGlobal::init()
*/
void VBoxGlobal::cleanup()
{
+ /* Shutdown update manager: */
+ UIUpdateManager::shutdown();
+
/* Destroy network manager: */
UINetworkManager::destroy();
+ /* Destroy action pool: */
+ if (isVMConsoleProcess())
+ UIActionPoolRuntime::destroy();
+ else
+ UIActionPoolSelector::destroy();
+
/* sanity check */
if (!sVBoxGlobalInCleanup)
{
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
index f38690052..258b4e949 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
+++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
@@ -127,6 +127,9 @@ public:
static QString qtCTVersionString();
static uint qtCTVersion();
+ QString vboxVersionString() const;
+ QString vboxVersionStringNormalized() const;
+
QString versionString() const { return mVerString; }
bool isBeta() const;
@@ -770,8 +773,6 @@ public slots:
bool openURL (const QString &aURL);
void showRegistrationDialog (bool aForce = true);
- void showUpdateDialog (bool aForce = true);
- void perDayNewVersionNotifier();
void sltGUILanguageChange(QString strLang);
void sltProcessGlobalSettingChange();
@@ -805,7 +806,6 @@ private:
#ifdef VBOX_WITH_REGISTRATION
UIRegistrationWzd *mRegDlg;
#endif
- VBoxUpdateDlg *mUpdDlg;
QString vmUuid;
QList<QUrl> m_ArgUrlList;
diff --git a/src/VBox/Frontends/VirtualBox/src/globals/VBoxUtils.h b/src/VBox/Frontends/VirtualBox/src/globals/VBoxUtils.h
index f4b99586f..138f8d013 100644
--- a/src/VBox/Frontends/VirtualBox/src/globals/VBoxUtils.h
+++ b/src/VBox/Frontends/VirtualBox/src/globals/VBoxUtils.h
@@ -194,6 +194,58 @@ private:
QString m_strAuthPassword;
};
+/**
+ * VBoxVersion represents VirtualBox version parser
+ */
+class VBoxVersion
+{
+public:
+
+ VBoxVersion(const QString &strVersion)
+ : m_x(0), m_y(0), m_z(0)
+ {
+ QStringList versionStack = strVersion.split('.');
+ if (versionStack.size() > 0)
+ m_x = versionStack[0].toInt();
+ if (versionStack.size() > 1)
+ m_y = versionStack[1].toInt();
+ if (versionStack.size() > 2)
+ m_z = versionStack[2].toInt();
+ }
+
+ bool equal(const VBoxVersion &other) const { return (m_x == other.m_x) && (m_y == other.m_y) && (m_z == other.m_z); }
+ bool operator==(const VBoxVersion &other) const { return equal(other); }
+ bool operator!=(const VBoxVersion &other) const { return !equal(other); }
+
+ bool operator<(const VBoxVersion &other) const
+ {
+ return (m_x < other.m_x) ||
+ (m_x == other.m_x && m_y < other.m_y) ||
+ (m_x == other.m_x && m_y == other.m_y && m_z < other.m_z);
+ }
+ bool operator>(const VBoxVersion &other) const
+ {
+ return (m_x > other.m_x) ||
+ (m_x == other.m_x && m_y > other.m_y) ||
+ (m_x == other.m_x && m_y == other.m_y && m_z > other.m_z);
+ }
+
+ QString toString() const
+ {
+ return QString("%1.%2.%3").arg(m_x).arg(m_y).arg(m_z);
+ }
+
+ int x() const { return m_x; }
+ int y() const { return m_y; }
+ int z() const { return m_z; }
+
+private:
+
+ int m_x;
+ int m_y;
+ int m_z;
+};
+
#ifdef Q_WS_MAC
# include "VBoxUtils-darwin.h"
#endif /* Q_WS_MAC */
diff --git a/src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp b/src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp
index b7468f1d8..a36825f96 100644
--- a/src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp
@@ -1,4 +1,4 @@
-/* $Id: hardenedmain.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: hardenedmain.cpp $ */
/** @file
* VirtualBox - Hardened main().
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/main.cpp b/src/VBox/Frontends/VirtualBox/src/main.cpp
index 80acfd89e..a26fe221e 100644
--- a/src/VBox/Frontends/VirtualBox/src/main.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/main.cpp
@@ -1,4 +1,4 @@
-/* $Id: main.cpp 38324 2011-08-05 14:02:53Z vboxsync $ */
+/* $Id: main.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -525,9 +525,6 @@ extern "C" DECLEXPORT(int) TrustedMain (int argc, char **argv, char ** /*envp*/)
#ifdef VBOX_WITH_REGISTRATION_REQUEST
vboxGlobal().showRegistrationDialog (false /* aForce */);
#endif
-#ifdef VBOX_WITH_UPDATE_REQUEST
- vboxGlobal().showUpdateDialog (false /* aForce */);
-#endif
#ifdef VBOX_GUI_WITH_SYSTRAY
}
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIDownloader.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIDownloader.cpp
index 31ae18b8b..42f235afc 100644
--- a/src/VBox/Frontends/VirtualBox/src/net/UIDownloader.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIDownloader.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDownloader.cpp 38421 2011-08-11 14:55:02Z vboxsync $ */
+/* $Id: UIDownloader.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderAdditions.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderAdditions.cpp
index 83c39603c..2697f83be 100644
--- a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderAdditions.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderAdditions.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDownloaderAdditions.cpp 38421 2011-08-11 14:55:02Z vboxsync $ */
+/* $Id: UIDownloaderAdditions.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.cpp
new file mode 100644
index 000000000..d61e29c3d
--- /dev/null
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.cpp
@@ -0,0 +1,149 @@
+/* $Id: UIDownloaderExtensionPack.cpp $ */
+/** @file
+ *
+ * VBox frontends: Qt GUI ("VirtualBox"):
+ * UIDownloader for extension pack
+ */
+
+/*
+ * Copyright (C) 2011 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ */
+
+/* Global includes: */
+#include <QDir>
+#include <QFile>
+#include <QNetworkReply>
+
+/* Local includes: */
+#include "UIDownloaderExtensionPack.h"
+#include "VBoxGlobal.h"
+#include "UIMessageCenter.h"
+#include "QIFileDialog.h"
+#include "VBoxDefs.h"
+
+/* Using declarations: */
+using namespace VBoxGlobalDefs;
+
+/* UIMiniProgressWidget stuff: */
+UIMiniProgressWidgetExtension::UIMiniProgressWidgetExtension(const QString &strSource, QWidget *pParent /* = 0 */)
+ : QIWithRetranslateUI<UIMiniProgressWidget>(pParent)
+{
+ sltSetSource(strSource);
+ retranslateUi();
+}
+
+void UIMiniProgressWidgetExtension::retranslateUi()
+{
+ setCancelButtonToolTip(tr("Cancel the <nobr><b>%1</b></nobr> download").arg(UI_ExtPackName));
+ setProgressBarToolTip(tr("Downloading the <nobr><b>%1</b></nobr> from <nobr><b>%2</b>...</nobr>")
+ .arg(UI_ExtPackName, source()));
+}
+
+/* UIDownloaderExtensionPack stuff: */
+UIDownloaderExtensionPack* UIDownloaderExtensionPack::m_pInstance = 0;
+
+/* static */
+void UIDownloaderExtensionPack::download(QObject *pListener)
+{
+ /* Create downloader instance: */
+ UIDownloaderExtensionPack *pDownloader = new UIDownloaderExtensionPack;
+ pDownloader->setParentWidget(msgCenter().mainWindowShown());
+
+ /* Configure connections for the passed listener: */
+ connect(pDownloader, SIGNAL(sigToStartAcknowledging()),
+ pListener, SIGNAL(sigDownloaderCreatedForExtensionPack()));
+ connect(pDownloader, SIGNAL(sigNotifyAboutExtensionPackDownloaded(const QString &, const QString &)),
+ pListener, SLOT(sltHandleDownloadedExtensionPack(const QString &, const QString &)));
+}
+
+UIDownloaderExtensionPack::UIDownloaderExtensionPack()
+{
+ /* Prepare instance: */
+ if (!m_pInstance)
+ m_pInstance = this;
+
+ /* Prepare source/target: */
+ QString strExtPackUnderscoredName(QString(UI_ExtPackName).replace(' ', '_'));
+ QString strTemplateSourcePath("http://download.virtualbox.org/virtualbox/%1/");
+ QString strTemplateSourceName(QString("%1-%2.vbox-extpack").arg(strExtPackUnderscoredName));
+ QString strSourcePath(strTemplateSourcePath.arg(vboxGlobal().vboxVersionStringNormalized()));
+ QString strSourceName(strTemplateSourceName.arg(vboxGlobal().vboxVersionStringNormalized()));
+ QString strSource(strSourcePath + strSourceName);
+ QString strTargetPath(vboxGlobal().virtualBox().GetHomeFolder());
+ QString strTargetName(strSourceName);
+ QString strTarget(QDir(strTargetPath).absoluteFilePath(strTargetName));
+
+ /* Set source/target: */
+ setSource(strSource);
+ setTarget(strTarget);
+
+ /* Start downloading: */
+ start();
+}
+
+UIDownloaderExtensionPack::~UIDownloaderExtensionPack()
+{
+ /* Cleanup instance: */
+ if (m_pInstance == this)
+ m_pInstance = 0;
+}
+
+UIMiniProgressWidget* UIDownloaderExtensionPack::createProgressWidgetFor(QWidget *pParent) const
+{
+ return new UIMiniProgressWidgetExtension(source(), pParent);
+}
+
+bool UIDownloaderExtensionPack::askForDownloadingConfirmation(QNetworkReply *pReply)
+{
+ return msgCenter().confirmDownloadExtensionPack(UI_ExtPackName, source(), pReply->header(QNetworkRequest::ContentLengthHeader).toInt());
+}
+
+void UIDownloaderExtensionPack::handleDownloadedObject(QNetworkReply *pReply)
+{
+ /* Read received data into buffer: */
+ QByteArray receivedData(pReply->readAll());
+ /* Serialize the incoming buffer into the file: */
+ while (true)
+ {
+ /* Try to open file for writing: */
+ QFile file(target());
+ if (file.open(QIODevice::WriteOnly))
+ {
+ /* Write incoming buffer into the file: */
+ file.write(receivedData);
+ file.close();
+ /* Notify listener about extension pack was downloaded: */
+ emit sigNotifyAboutExtensionPackDownloaded(source(), target());
+ break;
+ }
+ else
+ {
+ /* Warn the user about extension pack was downloaded but was NOT saved, explain it: */
+ msgCenter().warnAboutExtentionPackCantBeSaved(UI_ExtPackName, source(), QDir::toNativeSeparators(target()));
+ }
+
+ /* Ask the user for another location for the extension pack file: */
+ QString strTarget = QIFileDialog::getExistingDirectory(QFileInfo(target()).absolutePath(), parentWidget(),
+ tr("Select folder to save %1 to").arg(UI_ExtPackName), true);
+
+ /* Check if user had really set a new target: */
+ if (!strTarget.isNull())
+ setTarget(QDir(strTarget).absoluteFilePath(QFileInfo(target()).fileName()));
+ else
+ break;
+ }
+}
+
+void UIDownloaderExtensionPack::warnAboutNetworkError(const QString &strError)
+{
+ return msgCenter().cannotDownloadExtensionPack(UI_ExtPackName, source(), strError);
+}
+
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.h b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.h
new file mode 100644
index 000000000..8798a5fee
--- /dev/null
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderExtensionPack.h
@@ -0,0 +1,75 @@
+/** @file
+ *
+ * VBox frontends: Qt GUI ("VirtualBox"):
+ * UIDownloader for extension pack
+ */
+
+/*
+ * Copyright (C) 2011 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ */
+
+#ifndef __UIDownloaderExtensionPack_h__
+#define __UIDownloaderExtensionPack_h__
+
+/* Local includes: */
+#include "QIWithRetranslateUI.h"
+#include "UIDownloader.h"
+
+/* UIMiniProgressWidget reimplementation for the VirtualBox extension pack downloading: */
+class UIMiniProgressWidgetExtension : public QIWithRetranslateUI<UIMiniProgressWidget>
+{
+ Q_OBJECT;
+
+public:
+
+ /* Constructor: */
+ UIMiniProgressWidgetExtension(const QString &strSource, QWidget *pParent = 0);
+
+private:
+
+ /* Translating stuff: */
+ void retranslateUi();
+};
+
+/* UIDownloader reimplementation for the VirtualBox Extension Pack updating: */
+class UIDownloaderExtensionPack : public UIDownloader
+{
+ Q_OBJECT;
+
+public:
+
+ /* Returns updater if exists: */
+ static UIDownloaderExtensionPack* current() { return m_pInstance; }
+ /* Start downloading: */
+ static void download(QObject *pListener);
+
+signals:
+
+ /* Notify listeners about extension pack downloaded: */
+ void sigNotifyAboutExtensionPackDownloaded(const QString &strSource, const QString &strTarget);
+
+private:
+
+ /* Constructor/destructor: */
+ UIDownloaderExtensionPack();
+ ~UIDownloaderExtensionPack();
+
+ /* Virtual methods reimplementations: */
+ UIMiniProgressWidget* createProgressWidgetFor(QWidget *pParent) const;
+ bool askForDownloadingConfirmation(QNetworkReply *pReply);
+ void handleDownloadedObject(QNetworkReply *pReply);
+ void warnAboutNetworkError(const QString &strError);
+
+ /* Variables: */
+ static UIDownloaderExtensionPack *m_pInstance;
+};
+
+#endif // __UIDownloaderExtensionPack_h__
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderUserManual.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderUserManual.cpp
index 579831681..05d2eb42e 100644
--- a/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderUserManual.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIDownloaderUserManual.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDownloaderUserManual.cpp 38421 2011-08-11 14:55:02Z vboxsync $ */
+/* $Id: UIDownloaderUserManual.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UINetworkManager.cpp b/src/VBox/Frontends/VirtualBox/src/net/UINetworkManager.cpp
index 8c50862e9..d73e100eb 100644
--- a/src/VBox/Frontends/VirtualBox/src/net/UINetworkManager.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/net/UINetworkManager.cpp
@@ -1,4 +1,4 @@
-/* $Id: UINetworkManager.cpp 38421 2011-08-11 14:55:02Z vboxsync $ */
+/* $Id: UINetworkManager.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.cpp
new file mode 100644
index 000000000..212ede8e4
--- /dev/null
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.cpp
@@ -0,0 +1,193 @@
+/* $Id: UIUpdateDefs.cpp $ */
+/** @file
+ *
+ * VBox frontends: Qt4 GUI ("VirtualBox"):
+ * Update routine related implementations
+ */
+
+/*
+ * Copyright (C) 2006-2011 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ */
+
+/* Global includes: */
+#include <QCoreApplication>
+#include <QStringList>
+
+/* Local includes: */
+#include "UIUpdateDefs.h"
+
+/* static: */
+VBoxUpdateDayList VBoxUpdateData::m_dayList = VBoxUpdateDayList();
+
+/* static */
+void VBoxUpdateData::populate()
+{
+ /* Clear list initially: */
+ m_dayList.clear();
+
+ /* To avoid re-translation complexity
+ * all values will be retranslated separately: */
+
+ /* Separately retranslate each day: */
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "1 day"), "1 d");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "2 days"), "2 d");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "3 days"), "3 d");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "4 days"), "4 d");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "5 days"), "5 d");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "6 days"), "6 d");
+
+ /* Separately retranslate each week: */
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "1 week"), "1 w");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "2 weeks"), "2 w");
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "3 weeks"), "3 w");
+
+ /* Separately retranslate each month: */
+ m_dayList << VBoxUpdateDay(QCoreApplication::translate("UIUpdateManager", "1 month"), "1 m");
+}
+
+/* static */
+QStringList VBoxUpdateData::list()
+{
+ QStringList result;
+ for (int i = 0; i < m_dayList.size(); ++i)
+ result << m_dayList[i].val;
+ return result;
+}
+
+VBoxUpdateData::VBoxUpdateData(const QString &strData)
+ : m_strData(strData)
+ , m_periodIndex(Period1Day)
+ , m_branchIndex(BranchStable)
+{
+ decode();
+}
+
+VBoxUpdateData::VBoxUpdateData(PeriodType periodIndex, BranchType branchIndex)
+ : m_strData(QString())
+ , m_periodIndex(periodIndex)
+ , m_branchIndex(branchIndex)
+{
+ encode();
+}
+
+bool VBoxUpdateData::isNoNeedToCheck() const
+{
+ return m_periodIndex == PeriodNever;
+}
+
+bool VBoxUpdateData::isNeedToCheck() const
+{
+ return !isNoNeedToCheck() && QDate::currentDate() >= m_date;
+}
+
+QString VBoxUpdateData::data() const
+{
+ return m_strData;
+}
+
+VBoxUpdateData::PeriodType VBoxUpdateData::periodIndex() const
+{
+ return m_periodIndex;
+}
+
+QString VBoxUpdateData::date() const
+{
+ return isNoNeedToCheck() ? QCoreApplication::translate("UIUpdateManager", "Never") : m_date.toString(Qt::LocaleDate);
+}
+
+VBoxUpdateData::BranchType VBoxUpdateData::branchIndex() const
+{
+ return m_branchIndex;
+}
+
+QString VBoxUpdateData::branchName() const
+{
+ switch (m_branchIndex)
+ {
+ case BranchStable:
+ return "stable";
+ case BranchAllRelease:
+ return "allrelease";
+ case BranchWithBetas:
+ return "withbetas";
+ }
+ return QString();
+}
+
+void VBoxUpdateData::decode()
+{
+ /* Parse standard values: */
+ if (m_strData == "never")
+ m_periodIndex = PeriodNever;
+ /* Parse other values: */
+ else
+ {
+ QStringList parser(m_strData.split(", ", QString::SkipEmptyParts));
+
+ /* Parse 'period' value: */
+ if (parser.size() > 0)
+ {
+ if (m_dayList.isEmpty())
+ populate();
+ PeriodType index = (PeriodType)m_dayList.indexOf(VBoxUpdateDay(QString(), parser[0]));
+ m_periodIndex = index == PeriodUndefined ? Period1Day : index;
+ }
+
+ /* Parse 'date' value: */
+ if (parser.size() > 1)
+ {
+ QDate date = QDate::fromString(parser[1], Qt::ISODate);
+ m_date = date.isValid() ? date : QDate::currentDate();
+ }
+
+ /* Parse 'branch' value: */
+ if (parser.size() > 2)
+ {
+ QString branch(parser[2]);
+ m_branchIndex = branch == "withbetas" ? BranchWithBetas :
+ branch == "allrelease" ? BranchAllRelease : BranchStable;
+ }
+ }
+}
+
+void VBoxUpdateData::encode()
+{
+ /* Encode standard values: */
+ if (m_periodIndex == PeriodNever)
+ m_strData = "never";
+ /* Encode other values: */
+ else
+ {
+ /* Encode 'period' value: */
+ if (m_dayList.isEmpty())
+ populate();
+ QString remindPeriod = m_dayList[m_periodIndex].key;
+
+ /* Encode 'date' value: */
+ m_date = QDate::currentDate();
+ QStringList parser(remindPeriod.split(' '));
+ if (parser[1] == "d")
+ m_date = m_date.addDays(parser[0].toInt());
+ else if (parser[1] == "w")
+ m_date = m_date.addDays(parser[0].toInt() * 7);
+ else if (parser[1] == "m")
+ m_date = m_date.addMonths(parser[0].toInt());
+ QString remindDate = m_date.toString(Qt::ISODate);
+
+ /* Encode 'branch' value: */
+ QString branchValue = m_branchIndex == BranchWithBetas ? "withbetas" :
+ m_branchIndex == BranchAllRelease ? "allrelease" : "stable";
+
+ /* Composite m_strData: */
+ m_strData = QString("%1, %2, %3").arg(remindPeriod, remindDate, branchValue);
+ }
+}
+
diff --git a/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.h b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.h
index 7b068d1c2..a7243b50c 100644
--- a/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.h
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateDefs.h
@@ -1,7 +1,7 @@
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
- * VBoxUpdateDlg class declaration
+ * Update routine related declarations
*/
/*
@@ -16,44 +16,31 @@
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*/
-#ifndef __VBoxUpdateDlg_h__
-#define __VBoxUpdateDlg_h__
+#ifndef __UIUpdateDefs_h__
+#define __UIUpdateDefs_h__
/* Global includes: */
#include <QDate>
-#include <QUrl>
-/* Local includes */
-#include "QIWithRetranslateUI.h"
-#include "VBoxUpdateDlg.gen.h"
-
-/* Forward declarations: */
-class QNetworkAccessManager;
-
-/**
- * This structure is used to store retranslated reminder values.
- */
-struct UpdateDay
+/* This structure is used to store retranslated reminder values. */
+struct VBoxUpdateDay
{
- UpdateDay(const QString &strVal, const QString &strKey)
+ VBoxUpdateDay(const QString &strVal, const QString &strKey)
: val(strVal), key(strKey) {}
- bool operator==(const UpdateDay &other)
- {
- return val == other.val || key == other.key;
- }
+ bool operator==(const VBoxUpdateDay &other) { return val == other.val || key == other.key; }
QString val;
QString key;
};
+typedef QList<VBoxUpdateDay> VBoxUpdateDayList;
-/**
- * This class is used to encode/decode the registration data.
- */
+/* This class is used to encode/decode update data. */
class VBoxUpdateData
{
public:
+ /* Period types: */
enum PeriodType
{
PeriodNever = -2,
@@ -70,6 +57,7 @@ public:
Period1Month = 9
};
+ /* Branch types: */
enum BranchType
{
BranchStable = 0,
@@ -77,15 +65,17 @@ public:
BranchWithBetas = 2
};
+ /* Public static helpers: */
static void populate();
static QStringList list();
+ /* Constructors: */
VBoxUpdateData(const QString &strData);
VBoxUpdateData(PeriodType periodIndex, BranchType branchIndex);
- bool isNecessary();
- bool isNoNeedToCheck();
-
+ /* Public helpers: */
+ bool isNoNeedToCheck() const;
+ bool isNeedToCheck() const;
QString data() const;
PeriodType periodIndex() const;
QString date() const;
@@ -94,55 +84,16 @@ public:
private:
- /* Private functions */
+ /* Private helpers: */
void decode();
void encode();
- /* Private variables */
- static QList <UpdateDay> m_dayList;
-
+ /* Private variables: */
+ static VBoxUpdateDayList m_dayList;
QString m_strData;
PeriodType m_periodIndex;
QDate m_date;
BranchType m_branchIndex;
};
-class VBoxUpdateDlg : public QIWithRetranslateUI<QDialog>, public Ui::VBoxUpdateDlg
-{
- Q_OBJECT;
-
-public:
-
- static bool isNecessary();
-
- VBoxUpdateDlg(VBoxUpdateDlg **ppSelf, bool fForceRun, QWidget *pParent = 0);
- ~VBoxUpdateDlg();
-
-signals:
-
- void sigDelayedAcception();
-
-public slots:
-
- void search();
-
-protected:
-
- void retranslateUi();
- void acceptLater() { emit sigDelayedAcception(); }
-
-private slots:
-
- void accept();
- void sltHandleReply();
-
-private:
-
- VBoxUpdateDlg **m_ppSelf;
- QNetworkAccessManager *m_pNetworkManager;
- QUrl m_url;
- bool m_fForceRun;
-};
-
-#endif // __VBoxUpdateDlg_h__
-
+#endif // __UIUpdateDefs_h__
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
new file mode 100644
index 000000000..001a320f0
--- /dev/null
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.cpp
@@ -0,0 +1,266 @@
+/* $Id: UIUpdateManager.cpp $ */
+/** @file
+ *
+ * VBox frontends: Qt4 GUI ("VirtualBox"):
+ * UIUpdateManager class implementation
+ */
+
+/*
+ * Copyright (C) 2006-2011 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ */
+
+/* Global includes: */
+#include <QEventLoop>
+#include <QNetworkReply>
+#include <QTimer>
+#include <QDir>
+
+#include <VBox/version.h>
+
+/* Local includes: */
+#include "UIUpdateManager.h"
+#include "UINetworkManager.h"
+#include "VBoxGlobal.h"
+#include "UIMessageCenter.h"
+#include "VBoxUtils.h"
+#include "UIDownloaderExtensionPack.h"
+#include "UIGlobalSettingsExtension.h"
+#include "VBoxDefs.h"
+
+/* Using declarations: */
+using namespace VBoxGlobalDefs;
+
+/* UIUpdateManager stuff: */
+UIUpdateManager* UIUpdateManager::m_pInstance = 0;
+
+/* static */
+void UIUpdateManager::schedule()
+{
+ /* Ensure instance is NOT created: */
+ if (m_pInstance)
+ return;
+
+ /* Create instance: */
+ new UIUpdateManager;
+}
+
+/* static */
+void UIUpdateManager::shutdown()
+{
+ /* Ensure instance is created: */
+ if (!m_pInstance)
+ return;
+
+ /* Delete instance: */
+ delete m_pInstance;
+}
+
+void UIUpdateManager::sltForceCheck()
+{
+ /* Force call for new version check: */
+ sltCheckIfUpdateIsNecessary(true);
+}
+
+UIUpdateManager::UIUpdateManager()
+ : m_uTime(1 /* day */ * 24 /* hours */ * 60 /* minutes */ * 60 /* seconds */ * 1000 /* ms */)
+{
+ /* Prepare instance: */
+ if (m_pInstance != this)
+ m_pInstance = this;
+
+#ifdef VBOX_WITH_UPDATE_REQUEST
+ /* Ask updater to check for the first time: */
+ QTimer::singleShot(0, this, SLOT(sltCheckIfUpdateIsNecessary()));
+#endif /* VBOX_WITH_UPDATE_REQUEST */
+}
+
+UIUpdateManager::~UIUpdateManager()
+{
+ /* Cleanup instance: */
+ if (m_pInstance == this)
+ m_pInstance = 0;
+}
+
+void UIUpdateManager::sltCheckIfUpdateIsNecessary(bool fForceCall /* = false */)
+{
+ /* Load/decode curent update data: */
+ VBoxUpdateData currentData(vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateDate));
+
+ /* Check if update is really neessary: */
+ if (fForceCall || currentData.isNeedToCheck())
+ {
+ /* Check if update is necessary for VirtualBox itself: */
+ checkIfUpdateIsNecessary(fForceCall);
+
+ /* Check if update is necessary for VirtualBox extension pack: */
+ checkIfUpdateIsNecessaryForExtensionPack(fForceCall);
+
+ /* Encode/save new update data: */
+ VBoxUpdateData newData(currentData.periodIndex(), currentData.branchIndex());
+ vboxGlobal().virtualBox().SetExtraData(VBoxDefs::GUI_UpdateDate, newData.data());
+ }
+
+#ifdef VBOX_WITH_UPDATE_REQUEST
+ /* Ask updater to check for the next time: */
+ QTimer::singleShot(m_uTime, this, SLOT(sltCheckIfUpdateIsNecessary()));
+#endif /* VBOX_WITH_UPDATE_REQUEST */
+}
+
+void UIUpdateManager::checkIfUpdateIsNecessary(bool fForceCall)
+{
+ /* Creating VirtualBox version checker: */
+ UINewVersionChecker checker(fForceCall);
+ /* Start synchronous check: */
+ checker.checkForTheNewVersion();
+}
+
+void UIUpdateManager::checkIfUpdateIsNecessaryForExtensionPack(bool /* fForceCall */)
+{
+ /* Check if updater instance already created: */
+ if (UIDownloaderExtensionPack::current())
+ return;
+
+ /* Get extension pack information: */
+ CExtPack extPack = vboxGlobal().virtualBox().GetExtensionPackManager().Find(UI_ExtPackName);
+ /* Check if extension pack is really installed: */
+ if (extPack.isNull())
+ return;
+
+ /* Get VirtualBox version: */
+ VBoxVersion vboxVersion(vboxGlobal().vboxVersionStringNormalized());
+ /* Get extension pack version: */
+ QString strExtPackVersion(extPack.GetVersion().remove(VBOX_BUILD_PUBLISHER));
+ VBoxVersion extPackVersion(strExtPackVersion);
+ /* Check if extension pack version less than required: */
+ if ((vboxVersion.z() % 2 != 0) /* Skip unstable VBox version */ ||
+ !(extPackVersion < vboxVersion) /* Ext Pack version more or equal to VBox version */)
+ return;
+
+ /* Ask the user about extension pack downloading: */
+ if (!msgCenter().proposeDownloadExtensionPack(UI_ExtPackName, strExtPackVersion))
+ return;
+
+ /* Run downloader for VirtualBox extension pack: */
+ UIDownloaderExtensionPack::download(this);
+}
+
+void UIUpdateManager::sltHandleDownloadedExtensionPack(const QString &strSource, const QString &strTarget)
+{
+ /* Warn the user about extension pack was downloaded and saved, propose to install it: */
+ if (msgCenter().proposeInstallExtentionPack(UI_ExtPackName, strSource, QDir::toNativeSeparators(strTarget)))
+ UIGlobalSettingsExtension::doInstallation(strTarget, msgCenter().mainWindowShown(), NULL);
+}
+
+/* UINewVersionChecker stuff: */
+UINewVersionChecker::UINewVersionChecker(bool fForceCall)
+ : m_url("http://update.virtualbox.org/query.php")
+ , m_fForceCall(fForceCall)
+ , m_pLoop(new QEventLoop(this))
+{
+}
+
+void UINewVersionChecker::checkForTheNewVersion()
+{
+ /* Calculate the count of checks left: */
+ int cCount = 1;
+ QString strCount = vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateCheckCount);
+ if (!strCount.isEmpty())
+ {
+ bool ok = false;
+ int c = strCount.toLongLong(&ok);
+ if (ok) cCount = c;
+ }
+
+ /* Compose query: */
+ QUrl url(m_url);
+ url.addQueryItem("platform", vboxGlobal().virtualBox().GetPackageType());
+ /* Check if branding is active: */
+ if (vboxGlobal().brandingIsActive())
+ {
+ /* Branding: Check whether we have a local branding file which tells us our version suffix "FOO"
+ (e.g. 3.06.54321_FOO) to identify this installation: */
+ url.addQueryItem("version", QString("%1_%2_%3").arg(vboxGlobal().virtualBox().GetVersion())
+ .arg(vboxGlobal().virtualBox().GetRevision())
+ .arg(vboxGlobal().brandingGetKey("VerSuffix")));
+ }
+ else
+ {
+ /* Use hard coded version set by VBOX_VERSION_STRING: */
+ url.addQueryItem("version", QString("%1_%2").arg(vboxGlobal().virtualBox().GetVersion())
+ .arg(vboxGlobal().virtualBox().GetRevision()));
+ }
+ url.addQueryItem("count", QString::number(cCount));
+ url.addQueryItem("branch", VBoxUpdateData(vboxGlobal().virtualBox().
+ GetExtraData(VBoxDefs::GUI_UpdateDate)).branchName());
+ QString strUserAgent(QString("VirtualBox %1 <%2>")
+ .arg(vboxGlobal().virtualBox().GetVersion())
+ .arg(vboxGlobal().platformInfo()));
+
+ /* Setup GET request: */
+ QNetworkRequest request;
+ request.setUrl(url);
+ request.setRawHeader("User-Agent", strUserAgent.toAscii());
+ QNetworkReply *pReply = gNetworkManager->get(request);
+ connect(pReply, SIGNAL(finished()), this, SLOT(sltHandleCheckReply()));
+ connect(pReply, SIGNAL(sslErrors(QList<QSslError>)), pReply, SLOT(ignoreSslErrors()));
+
+ /* Lock event loop: */
+ m_pLoop->exec();
+}
+
+void UINewVersionChecker::sltHandleCheckReply()
+{
+ /* Get corresponding network reply object: */
+ QNetworkReply *pReply = qobject_cast<QNetworkReply*>(sender());
+ /* And ask it for suicide: */
+ pReply->deleteLater();
+
+ /* Handle normal result: */
+ if (pReply->error() == QNetworkReply::NoError)
+ {
+ /* Deserialize incoming data: */
+ QString strResponseData(pReply->readAll());
+
+ /* Newer version of necessary package found: */
+ if (strResponseData.indexOf(QRegExp("^\\d+\\.\\d+\\.\\d+ \\S+$")) == 0)
+ {
+ QStringList response = strResponseData.split(" ", QString::SkipEmptyParts);
+ msgCenter().showUpdateSuccess(vboxGlobal().mainWindow(), response[0], response[1]);
+ }
+ /* No newer version of necessary package found: */
+ else
+ {
+ if (m_fForceCall)
+ msgCenter().showUpdateNotFound(vboxGlobal().mainWindow());
+ }
+
+ /* Save left count of checks: */
+ int cCount = 1;
+ QString strCount = vboxGlobal().virtualBox().GetExtraData(VBoxDefs::GUI_UpdateCheckCount);
+ if (!strCount.isEmpty())
+ {
+ bool ok = false;
+ int c = strCount.toLongLong(&ok);
+ if (ok) cCount = c;
+ }
+ vboxGlobal().virtualBox().SetExtraData(VBoxDefs::GUI_UpdateCheckCount, QString("%1").arg((qulonglong)cCount + 1));
+ }
+ /* Handle errors: */
+ else
+ {
+ if (m_fForceCall)
+ msgCenter().showUpdateFailure(vboxGlobal().mainWindow(), pReply->errorString());
+ }
+
+ /* Unlock event loop: */
+ m_pLoop->exit();
+}
+
diff --git a/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.h b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.h
new file mode 100644
index 000000000..e7daaaa6b
--- /dev/null
+++ b/src/VBox/Frontends/VirtualBox/src/net/UIUpdateManager.h
@@ -0,0 +1,106 @@
+/** @file
+ *
+ * VBox frontends: Qt4 GUI ("VirtualBox"):
+ * UIUpdateManager class declaration
+ */
+
+/*
+ * Copyright (C) 2006-2011 Oracle Corporation
+ *
+ * This file is part of VirtualBox Open Source Edition (OSE), as
+ * available from http://www.virtualbox.org. This file is free software;
+ * you can redistribute it and/or modify it under the terms of the GNU
+ * General Public License (GPL) as published by the Free Software
+ * Foundation, in version 2 as it comes in the "COPYING" file of the
+ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
+ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+ */
+
+#ifndef __UIUpdateManager_h__
+#define __UIUpdateManager_h__
+
+/* Global includes: */
+#include <QUrl>
+
+/* Local includes: */
+#include "UIUpdateDefs.h"
+
+/* Forward declarations: */
+class QEventLoop;
+
+/* Singleton to check for the new VirtualBox version.
+ * Performs update of required parts if necessary. */
+class UIUpdateManager : public QObject
+{
+ Q_OBJECT;
+
+public:
+
+ /* Schedule manager: */
+ static void schedule();
+ /* Shutdown manager: */
+ static void shutdown();
+ /* Manager instance: */
+ static UIUpdateManager* instance() { return m_pInstance; }
+
+signals:
+
+ /* Signal to notify listeners about downloading: */
+ void sigDownloaderCreatedForExtensionPack();
+
+public slots:
+
+ /* Force call for new version check: */
+ void sltForceCheck();
+
+private slots:
+
+ /* Slot to check if update is necessary: */
+ void sltCheckIfUpdateIsNecessary(bool fForceCall = false);
+
+ /* Handle downloaded extension pack: */
+ void sltHandleDownloadedExtensionPack(const QString &strSource, const QString &strTarget);
+
+private:
+
+ /* Constructor/destructor: */
+ UIUpdateManager();
+ ~UIUpdateManager();
+
+ /* Helping stuff: */
+ void checkIfUpdateIsNecessary(bool fForceCall);
+ void checkIfUpdateIsNecessaryForExtensionPack(bool fForceCall);
+
+ /* Variables: */
+ static UIUpdateManager* m_pInstance;
+ quint64 m_uTime;
+};
+#define gUpdateManager UIUpdateManager::instance()
+
+/* Class to check for the new VirtualBox version: */
+class UINewVersionChecker : public QObject
+{
+ Q_OBJECT;
+
+public:
+
+ /* Constructor: */
+ UINewVersionChecker(bool fForceCall);
+
+ /* Function to check if new version is available: */
+ void checkForTheNewVersion();
+
+private slots:
+
+ /* Slot to analyze new version check reply: */
+ void sltHandleCheckReply();
+
+private:
+
+ /* Variables: */
+ QUrl m_url;
+ bool m_fForceCall;
+ QEventLoop *m_pLoop;
+};
+
+#endif // __UIUpdateManager_h__
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm
index b79ba32c1..9b86ac3e6 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/CocoaEventHelper.mm
@@ -1,4 +1,4 @@
-/* $Id: CocoaEventHelper.mm 30122 2010-06-09 13:50:26Z vboxsync $ */
+/* $Id: CocoaEventHelper.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/DarwinKeyboard.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/DarwinKeyboard.cpp
index 0cf8d2814..b802d1c85 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/DarwinKeyboard.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/DarwinKeyboard.cpp
@@ -1,4 +1,4 @@
-/* $Id: DarwinKeyboard.cpp 35873 2011-02-07 14:10:08Z vboxsync $ */
+/* $Id: DarwinKeyboard.cpp $ */
/** @file
* Common GUI Library - Darwin Keyboard routines.
*
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/DockIconPreview.h b/src/VBox/Frontends/VirtualBox/src/platform/darwin/DockIconPreview.h
index 8a4f86abc..c4ffaef4f 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/DockIconPreview.h
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/DockIconPreview.h
@@ -1,4 +1,4 @@
-/* $Id: DockIconPreview.h 29812 2010-05-26 11:46:22Z vboxsync $ */
+/* $Id: DockIconPreview.h $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.cpp
index fe6c17fc7..f2391f87f 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIAbstractDockIconPreview.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: UIAbstractDockIconPreview.cpp $ */
/** @file
* Qt GUI - Realtime Dock Icon Preview
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.h b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.h
index ec6c4b262..8c4c46fd2 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.h
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIAbstractDockIconPreview.h
@@ -1,4 +1,4 @@
-/* $Id: UIAbstractDockIconPreview.h 29823 2010-05-26 14:49:27Z vboxsync $ */
+/* $Id: UIAbstractDockIconPreview.h $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaApplication.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaApplication.mm
index 96d9dbd9d..c45147102 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaApplication.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaApplication.mm
@@ -1,4 +1,4 @@
-/* $Id: UICocoaApplication.mm 30154 2010-06-10 16:28:15Z vboxsync $ */
+/* $Id: UICocoaApplication.mm $ */
/** @file
* UICocoaApplication - C++ interface to NSApplication for handling -sendEvent.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.h b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.h
index c20088f9f..7bfe2d76a 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.h
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.h
@@ -1,4 +1,4 @@
-/* $Id: UICocoaDockIconPreview.h 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: UICocoaDockIconPreview.h $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.mm
index 95fdd9ecf..152e5d1df 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaDockIconPreview.mm
@@ -1,4 +1,4 @@
-/* $Id: UICocoaDockIconPreview.mm 30151 2010-06-10 16:12:33Z vboxsync $ */
+/* $Id: UICocoaDockIconPreview.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaSpecialControls.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaSpecialControls.mm
index ebedcd24e..e7688a9ff 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaSpecialControls.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UICocoaSpecialControls.mm
@@ -1,4 +1,4 @@
-/* $Id: UICocoaSpecialControls.mm 37115 2011-05-16 22:44:58Z vboxsync $ */
+/* $Id: UICocoaSpecialControls.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin.cpp
index 4ab55aaa2..75041bd20 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDesktopServices_darwin.cpp 34411 2010-11-26 16:57:30Z vboxsync $ */
+/* $Id: UIDesktopServices_darwin.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin_cocoa.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin_cocoa.mm
index bc0502c42..213aafd3b 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin_cocoa.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIDesktopServices_darwin_cocoa.mm
@@ -1,4 +1,4 @@
-/* $Id: UIDesktopServices_darwin_cocoa.mm 34411 2010-11-26 16:57:30Z vboxsync $ */
+/* $Id: UIDesktopServices_darwin_cocoa.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIWindowMenuManager.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIWindowMenuManager.cpp
index 6acc1f3ad..1bd88925c 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIWindowMenuManager.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/UIWindowMenuManager.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIWindowMenuManager.cpp 34401 2010-11-26 16:37:51Z vboxsync $ */
+/* $Id: UIWindowMenuManager.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.h b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.h
index d1e86f996..235bc0a29 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.h
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.h
@@ -1,4 +1,4 @@
-/* $Id: VBoxIChatTheaterWrapper.h 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxIChatTheaterWrapper.h $ */
/** @file
* Qt GUI - iChat Theater cocoa wrapper.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.m b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.m
index d5f5de91a..1fd2792e8 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.m
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxIChatTheaterWrapper.m
@@ -1,4 +1,4 @@
-/* $Id: VBoxIChatTheaterWrapper.m 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxIChatTheaterWrapper.m $ */
/** @file
* Qt GUI - iChat Theater cocoa wrapper.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm
index 5fbd7d54a..cf4195177 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin-cocoa.mm
@@ -1,4 +1,4 @@
-/* $Id: VBoxUtils-darwin-cocoa.mm 35870 2011-02-07 13:18:02Z vboxsync $ */
+/* $Id: VBoxUtils-darwin-cocoa.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp
index 030a73e96..2d9e363f7 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/VBoxUtils-darwin.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxUtils-darwin.cpp 36534 2011-04-04 15:00:49Z vboxsync $ */
+/* $Id: VBoxUtils-darwin.cpp $ */
/** @file
* Qt GUI - Utility Classes and Functions specific to Darwin.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/tstDarwinKeyboard.cpp b/src/VBox/Frontends/VirtualBox/src/platform/darwin/tstDarwinKeyboard.cpp
index 84a4ae4ab..929de5335 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/tstDarwinKeyboard.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/tstDarwinKeyboard.cpp
@@ -1,4 +1,4 @@
-/* $Id: tstDarwinKeyboard.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: tstDarwinKeyboard.cpp $ */
/** @file
* Common GUI Library - Testcase - Darwin Keyboard routines.
*
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/darwin/vmstarter.mm b/src/VBox/Frontends/VirtualBox/src/platform/darwin/vmstarter.mm
index 23bb6e0be..f755566af 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/darwin/vmstarter.mm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/darwin/vmstarter.mm
@@ -1,4 +1,4 @@
-/* $Id: vmstarter.mm 34275 2010-11-23 11:08:52Z vboxsync $ */
+/* $Id: vmstarter.mm $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.asm b/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.asm
index 40739aa46..f82fac0b6 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.asm
+++ b/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.asm
@@ -1,4 +1,4 @@
-; $Id: VBoxHlp.asm 28800 2010-04-27 08:22:32Z vboxsync $
+; $Id: VBoxHlp.asm $
;; @file
;
; VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.cpp b/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.cpp
index 989a7606c..87244dc56 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/os2/VBoxHlp.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxHlp.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxHlp.cpp $ */
/** @file
* VBox frontends: Qt GUI ("VirtualBox"):
* Implementation of OS/2-specific helpers that require to reside in a DLL
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/win/UIDesktopServices_win.cpp b/src/VBox/Frontends/VirtualBox/src/platform/win/UIDesktopServices_win.cpp
index a5f67ef7f..7f14234ef 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/win/UIDesktopServices_win.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/win/UIDesktopServices_win.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDesktopServices_win.cpp 34415 2010-11-26 17:09:29Z vboxsync $ */
+/* $Id: UIDesktopServices_win.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/win/VBoxUtils-win.cpp b/src/VBox/Frontends/VirtualBox/src/platform/win/VBoxUtils-win.cpp
index fc980a52c..50ee3aea9 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/win/VBoxUtils-win.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/win/VBoxUtils-win.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxUtils-win.cpp 35940 2011-02-11 11:58:32Z vboxsync $ */
+/* $Id: VBoxUtils-win.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/win/VirtualBox.rc b/src/VBox/Frontends/VirtualBox/src/platform/win/VirtualBox.rc
index 87ea3ba74..64ac53857 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/win/VirtualBox.rc
+++ b/src/VBox/Frontends/VirtualBox/src/platform/win/VirtualBox.rc
@@ -1,4 +1,4 @@
-/* $Id: VirtualBox.rc 34384 2010-11-25 16:23:57Z vboxsync $ */
+/* $Id: VirtualBox.rc $ */
/** @file
* Windows resource file for VirtualBox.exe.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/x11/UIDesktopServices_x11.cpp b/src/VBox/Frontends/VirtualBox/src/platform/x11/UIDesktopServices_x11.cpp
index e4fd8dcab..6aa8200d3 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/x11/UIDesktopServices_x11.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/x11/UIDesktopServices_x11.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIDesktopServices_x11.cpp 34886 2010-12-09 14:06:02Z vboxsync $ */
+/* $Id: UIDesktopServices_x11.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxX11Helper.cpp b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxX11Helper.cpp
index 9d70cb657..45b2e5c85 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxX11Helper.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/x11/VBoxX11Helper.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxX11Helper.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxX11Helper.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/platform/x11/XKeyboard-new.cpp b/src/VBox/Frontends/VirtualBox/src/platform/x11/XKeyboard-new.cpp
index 980ada621..cb9728efb 100644
--- a/src/VBox/Frontends/VirtualBox/src/platform/x11/XKeyboard-new.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/platform/x11/XKeyboard-new.cpp
@@ -1,4 +1,4 @@
-/* $Id: XKeyboard-new.cpp 36335 2011-03-21 21:58:58Z vboxsync $ */
+/* $Id: XKeyboard-new.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/precomp.h b/src/VBox/Frontends/VirtualBox/src/precomp.h
index 58d43eae1..778e95c1b 100644
--- a/src/VBox/Frontends/VirtualBox/src/precomp.h
+++ b/src/VBox/Frontends/VirtualBox/src/precomp.h
@@ -1,4 +1,4 @@
-/* $Id: precomp.h 38412 2011-08-11 09:50:04Z vboxsync $*/
+/* $Id: precomp.h $*/
/** @file
* Header used if VBOX_WITH_PRECOMPILED_HEADERS is active.
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp
index 95963db52..514fac4f6 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIActionPoolRuntime.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIActionPoolRuntime.cpp 38398 2011-08-10 13:24:33Z vboxsync $ */
+/* $Id: UIActionPoolRuntime.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIConsoleEventHandler.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIConsoleEventHandler.cpp
index b444f6d28..4fa97ea27 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIConsoleEventHandler.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIConsoleEventHandler.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIConsoleEventHandler.cpp 37712 2011-06-30 14:11:14Z vboxsync $ */
+/* $Id: UIConsoleEventHandler.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp
index 3f8681244..5526b3d5f 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBuffer.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBuffer.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIFrameBuffer.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferDirectDraw.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferDirectDraw.cpp
index bb9384752..650cb5bfd 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferDirectDraw.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferDirectDraw.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBufferDirectDraw.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: UIFrameBufferDirectDraw.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQGL.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQGL.cpp
index c5e43f903..ecc38973e 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQGL.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQGL.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBufferQGL.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: UIFrameBufferQGL.cpp $ */
/** @file
* VBoxFBQGL Opengl-based FrameBuffer implementation
*/
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQImage.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQImage.cpp
index 03fca3218..36b0e5d08 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQImage.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQImage.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBufferQImage.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIFrameBufferQImage.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQuartz2D.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQuartz2D.cpp
index 077be1638..0a36a080d 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQuartz2D.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferQuartz2D.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBufferQuartz2D.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIFrameBufferQuartz2D.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferSDL.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferSDL.cpp
index 86ce55066..8b035679b 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferSDL.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIFrameBufferSDL.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFrameBufferSDL.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: UIFrameBufferSDL.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp
index 9e2d48e0b..2da9d00ee 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIIndicatorsPool.cpp 38318 2011-08-04 15:51:15Z vboxsync $ */
+/* $Id: UIIndicatorsPool.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp
index 44055b6a9..596617000 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIKeyboardHandler.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIKeyboardHandler.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -918,9 +918,6 @@ bool UIKeyboardHandler::winLowKeyboardEvent(UINT msg, const KBDLLHOOKSTRUCT &eve
if (!m_views.contains(m_iKeyboardHookViewIndex))
return false;
- if (!m_fIsKeyboardCaptured)
- return false;
-
/* Sometimes it happens that Win inserts additional events on some key
* press/release. For example, it prepends ALT_GR in German layout with
* the VK_LCONTROL vkey with curious 0x21D scan code (seems to be necessary
@@ -939,6 +936,14 @@ bool UIKeyboardHandler::winLowKeyboardEvent(UINT msg, const KBDLLHOOKSTRUCT &eve
return true;
}
+ /** @todo this needs to be after the preceding check so that
+ * we ignore those spurious key events even when the
+ * keyboard is not captured. However, that is probably a
+ * hint that that filtering should be done somewhere else,
+ * and not in the keyboard capture handler. */
+ if (!m_fIsKeyboardCaptured)
+ return false;
+
/* It's possible that a key has been pressed while the keyboard was not
* captured, but is being released under the capture. Detect this situation
* and return false to let Windows process the message normally and update
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp
index bf11657fd..2df17a4f9 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachine.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachine.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -385,9 +385,6 @@ UIMachine::UIMachine(UIMachine **ppSelf, const CSession &session)
if (m_ppThis)
*m_ppThis = this;
- /* Create action pool: */
- UIActionPoolRuntime::create();
-
/* Create UISession object: */
m_pSession = new UISession(this, m_session);
@@ -417,8 +414,6 @@ UIMachine::~UIMachine()
m_pSession = 0;
m_session.UnlockMachine();
m_session.detach();
- /* Destroy action pool: */
- UIActionPoolRuntime::destroy();
/* Quit application: */
QApplication::quit();
}
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
index 00ffcb21e..36733e1d7 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineLogic.cpp 38431 2011-08-12 11:04:16Z vboxsync $ */
+/* $Id: UIMachineLogic.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -45,7 +45,6 @@
/* Global includes */
#include <iprt/path.h>
-#include <VBox/VMMDev.h>
#ifdef VBOX_WITH_DEBUGGER_GUI
# include <iprt/ldr.h>
@@ -1454,7 +1453,7 @@ void UIMachineLogic::sltInstallGuestAdditions()
/* Check for the already registered image */
CVirtualBox vbox = vboxGlobal().virtualBox();
- QString name = QString("VBoxGuestAdditions_%1.iso").arg(vbox.GetVersion().remove("_OSE"));
+ const QString &name = QString("VBoxGuestAdditions_%1.iso").arg(vboxGlobal().vboxVersionStringNormalized());
CMediumVector vec = vbox.GetDVDImages();
for (CMediumVector::ConstIterator it = vec.begin(); it != vec.end(); ++ it)
@@ -1470,8 +1469,8 @@ void UIMachineLogic::sltInstallGuestAdditions()
int result = msgCenter().cannotFindGuestAdditions(QDir::toNativeSeparators(strSrc1), QDir::toNativeSeparators(strSrc2));
if (result == QIMessageBox::Yes)
{
- QString source = QString("http://download.virtualbox.org/virtualbox/%1/").arg(vbox.GetVersion().remove("_OSE")) + name;
- QString target = QDir(vboxGlobal().virtualBox().GetHomeFolder()).absoluteFilePath(name);
+ const QString &source = QString("http://download.virtualbox.org/virtualbox/%1/").arg(vboxGlobal().vboxVersionStringNormalized()) + name;
+ const QString &target = QDir(vboxGlobal().virtualBox().GetHomeFolder()).absoluteFilePath(name);
UIDownloaderAdditions *pDl = UIDownloaderAdditions::create();
/* Configure the additions downloader. */
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineMenuBar.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineMenuBar.cpp
index df3a44cd6..9cedf9c5b 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineMenuBar.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineMenuBar.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineMenuBar.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineMenuBar.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -25,6 +25,7 @@
#include "UIMessageCenter.h"
#include "UIExtraDataEventHandler.h"
#include "UIImageTools.h"
+#include "UIUpdateManager.h"
/* Global includes */
#include <QMenuBar>
@@ -294,7 +295,7 @@ void UIMachineMenuBar::prepareMenuHelp(QMenu *pMenu)
VBoxGlobal::connect(gActionPool->action(UIActionIndex_Simple_About), SIGNAL(triggered()),
&msgCenter(), SLOT(sltShowHelpAboutDialog()));
VBoxGlobal::connect(gActionPool->action(UIActionIndex_Simple_Update), SIGNAL(triggered()),
- &vboxGlobal(), SLOT(showUpdateDialog()));
+ gUpdateManager, SLOT(sltForceCheck()));
#if defined(Q_WS_MAC) && (QT_VERSION < 0x040700)
}
#endif
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineShortcuts.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineShortcuts.cpp
index ea96cb204..7fbed1cb8 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineShortcuts.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineShortcuts.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineShortcuts.cpp 36357 2011-03-23 09:36:05Z vboxsync $ */
+/* $Id: UIMachineShortcuts.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp
index b9405ef86..be044115d 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineView.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineView.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -485,6 +485,11 @@ void UIMachineView::cleanupFrameBuffer()
* 2. make it easier to preserve the current 2D state */
Assert(m_pFrameBuffer == uisession()->frameBuffer(screenId()));
m_pFrameBuffer->setView(NULL);
+#ifdef VBOX_WITH_CROGL
+ /* Call SetFramebuffer to ensure 3D gets notified of view being destroyed */
+ CDisplay display = session().GetConsole().GetDisplay();
+ display.SetFramebuffer(m_uScreenId, CFramebuffer(m_pFrameBuffer));
+#endif
}
else
#endif /* VBOX_WITH_VIDEOHWACCEL */
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp
index 2efbc152c..def6976d0 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineWindow.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineWindow.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineWindow.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -197,6 +197,13 @@ void UIMachineWindow::closeEvent(QCloseEvent *pEvent)
/* Get the machine: */
CMachine machine = session().GetMachine();
+ /* Check if there is a close hock script defined. */
+ const QString& strScript = machine.GetExtraData(VBoxDefs::GUI_CloseActionHook);
+ if (!strScript.isEmpty())
+ {
+ QProcess::startDetached(strScript, QStringList() << machine.GetId());
+ return;
+ }
/* Prepare close dialog: */
UIVMCloseDialog dlg(machineWindow());
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp
index b80a181c0..735b06e2b 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMouseHandler.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMouseHandler.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMouseHandler.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp
index 741dec02f..bbe49bc23 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIMultiScreenLayout.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMultiScreenLayout.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMultiScreenLayout.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
index 00611716b..1a37d4ef5 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISession.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UISession.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -1026,11 +1026,6 @@ void UISession::reinitMenuPool()
void UISession::preparePowerUp()
{
-#ifdef VBOX_WITH_UPDATE_REQUEST
- /* Check for updates if necessary: */
- vboxGlobal().showUpdateDialog(false /* force request? */);
-#endif
-
/* Notify user about mouse&keyboard auto-capturing: */
if (vboxGlobal().settings().autoCapture())
msgCenter().remindAboutAutoCapture();
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/UIVMCloseDialog.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/UIVMCloseDialog.cpp
index 0b8aa1e95..ebd02ef57 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIVMCloseDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIVMCloseDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVMCloseDialog.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIVMCloseDialog.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp
index 66e4db31d..d21199c6e 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIKeyboardHandlerFullscreen.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIKeyboardHandlerFullscreen.cpp 35752 2011-01-28 10:57:53Z vboxsync $ */
+/* $Id: UIKeyboardHandlerFullscreen.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp
index 55b189c26..8b915e6d5 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineLogicFullscreen.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineLogicFullscreen.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineLogicFullscreen.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineViewFullscreen.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineViewFullscreen.cpp
index 3cf048145..410356772 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineViewFullscreen.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineViewFullscreen.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineViewFullscreen.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineViewFullscreen.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp
index f3876cb4b..40ff70c3e 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen/UIMachineWindowFullscreen.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineWindowFullscreen.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineWindowFullscreen.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIKeyboardHandlerNormal.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIKeyboardHandlerNormal.cpp
index 3796e4055..782417d88 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIKeyboardHandlerNormal.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIKeyboardHandlerNormal.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIKeyboardHandlerNormal.cpp 35752 2011-01-28 10:57:53Z vboxsync $ */
+/* $Id: UIKeyboardHandlerNormal.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp
index cf1f56f23..c96496a7b 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineLogicNormal.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineLogicNormal.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineLogicNormal.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -30,6 +30,7 @@
#include "UIMachineLogicNormal.h"
#include "UIMachineWindow.h"
#include "UIDownloaderAdditions.h"
+#include "UIDownloaderExtensionPack.h"
#ifdef Q_WS_MAC
#include "VBoxUtils.h"
@@ -76,11 +77,14 @@ void UIMachineLogicNormal::initialize()
/* Prepare normal machine window: */
prepareMachineWindows();
- /* If there is an Additions download running, update the parent window
- * information. */
+ /* If there is an Additions download running, update the parent window information. */
if (UIDownloaderAdditions *pDl = UIDownloaderAdditions::current())
pDl->setParentWidget(mainMachineWindow()->machineWindow());
+ /* If there is an Extension Pack download running, update the parent window information. */
+ if (UIDownloaderExtensionPack *pDl = UIDownloaderExtensionPack::current())
+ pDl->setParentWidget(mainMachineWindow()->machineWindow());
+
#ifdef Q_WS_MAC
/* Prepare dock: */
prepareDock();
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineViewNormal.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineViewNormal.cpp
index c48658135..98b0afc3f 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineViewNormal.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineViewNormal.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineViewNormal.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineViewNormal.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
index a9defab8f..952f1b642 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineWindowNormal.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineWindowNormal.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -36,8 +36,10 @@
#include "UIMachineLogic.h"
#include "UIMachineWindowNormal.h"
#include "UIMachineView.h"
+#include "UIUpdateManager.h"
#include "UIDownloaderAdditions.h"
#include "UIDownloaderUserManual.h"
+#include "UIDownloaderExtensionPack.h"
#ifdef Q_WS_MAC
# include "UIImageTools.h"
#endif /* Q_WS_MAC */
@@ -167,20 +169,27 @@ void UIMachineWindowNormal::sltTryClose()
UIMachineWindow::sltTryClose();
}
-void UIMachineWindowNormal::sltDownloaderAdditionsEmbed()
+void UIMachineWindowNormal::sltEmbedDownloaderForAdditions()
{
/* If there is an additions download running show the process bar: */
if (UIDownloaderAdditions *pDl = UIDownloaderAdditions::current())
statusBar()->addWidget(pDl->progressWidget(this), 0);
}
-void UIMachineWindowNormal::sltDownloaderUserManualEmbed()
+void UIMachineWindowNormal::sltEmbedDownloaderForUserManual()
{
/* If there is an additions download running show the process bar: */
if (UIDownloaderUserManual *pDl = UIDownloaderUserManual::current())
statusBar()->addWidget(pDl->progressWidget(this), 0);
}
+void UIMachineWindowNormal::sltEmbedDownloaderForExtensionPack()
+{
+ /* If there is an extension pack download running show the process bar: */
+ if (UIDownloaderExtensionPack *pDl = UIDownloaderExtensionPack::current())
+ statusBar()->addWidget(pDl->progressWidget(this), 0);
+}
+
void UIMachineWindowNormal::sltUpdateIndicators()
{
CConsole console = session().GetConsole();
@@ -459,11 +468,15 @@ void UIMachineWindowNormal::prepareStatusBar()
/* Add the additions downloader progress bar to the status bar,
* if a download is actually running: */
- sltDownloaderAdditionsEmbed();
+ sltEmbedDownloaderForAdditions();
/* Add the user manual progress bar to the status bar,
* if a download is actually running: */
- sltDownloaderUserManualEmbed();
+ sltEmbedDownloaderForUserManual();
+
+ /* Add the extension pack progress bar to the status bar,
+ * if a download is actually running: */
+ sltEmbedDownloaderForExtensionPack();
/* Create & start timer to update LEDs: */
m_pIdleTimer = new QTimer(this);
@@ -482,9 +495,11 @@ void UIMachineWindowNormal::prepareConnections()
connect(&vboxGlobal().settings(), SIGNAL(propertyChanged(const char *, const char *)),
this, SLOT(sltProcessGlobalSettingChange(const char *, const char *)));
/* Setup additions downloader listener: */
- connect(machineLogic(), SIGNAL(sigDownloaderAdditionsCreated()), this, SLOT(sltDownloaderAdditionsEmbed()));
+ connect(machineLogic(), SIGNAL(sigDownloaderAdditionsCreated()), this, SLOT(sltEmbedDownloaderForAdditions()));
/* Setup user manual downloader listener: */
- connect(&msgCenter(), SIGNAL(sigDownloaderUserManualCreated()), this, SLOT(sltDownloaderUserManualEmbed()));
+ connect(&msgCenter(), SIGNAL(sigDownloaderUserManualCreated()), this, SLOT(sltEmbedDownloaderForUserManual()));
+ /* Setup extension pack downloader listener: */
+ connect(gUpdateManager, SIGNAL(sigDownloaderCreatedForExtensionPack()), this, SLOT(sltEmbedDownloaderForExtensionPack()));
}
void UIMachineWindowNormal::prepareMachineView()
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h
index 39be14cdf..36339db62 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/normal/UIMachineWindowNormal.h
@@ -62,8 +62,9 @@ private slots:
void sltTryClose();
/* Downloader listeners: */
- void sltDownloaderAdditionsEmbed();
- void sltDownloaderUserManualEmbed();
+ void sltEmbedDownloaderForAdditions();
+ void sltEmbedDownloaderForUserManual();
+ void sltEmbedDownloaderForExtensionPack();
private:
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIKeyboardHandlerScale.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIKeyboardHandlerScale.cpp
index 4356e604d..3b6290221 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIKeyboardHandlerScale.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIKeyboardHandlerScale.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIKeyboardHandlerScale.cpp 35752 2011-01-28 10:57:53Z vboxsync $ */
+/* $Id: UIKeyboardHandlerScale.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineLogicScale.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineLogicScale.cpp
index 0e5861c47..ed253f960 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineLogicScale.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineLogicScale.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineLogicScale.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineLogicScale.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -27,6 +27,7 @@
#include "UIMachineLogicScale.h"
#include "UIMachineWindow.h"
#include "UIDownloaderAdditions.h"
+#include "UIDownloaderExtensionPack.h"
#ifdef Q_WS_MAC
#include "VBoxUtils.h"
@@ -96,11 +97,14 @@ void UIMachineLogicScale::initialize()
/* Prepare scale machine window: */
prepareMachineWindows();
- /* If there is an Additions download running, update the parent window
- * information. */
+ /* If there is an Additions download running, update the parent window information. */
if (UIDownloaderAdditions *pDl = UIDownloaderAdditions::current())
pDl->setParentWidget(mainMachineWindow()->machineWindow());
+ /* If there is an Extension Pack download running, update the parent window information. */
+ if (UIDownloaderExtensionPack *pDl = UIDownloaderExtensionPack::current())
+ pDl->setParentWidget(mainMachineWindow()->machineWindow());
+
#ifdef Q_WS_MAC
/* Prepare dock: */
prepareDock();
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp
index 5dc242f2a..460f6fc06 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineViewScale.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineViewScale.cpp 33595 2010-10-29 10:35:00Z vboxsync $ */
+/* $Id: UIMachineViewScale.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp
index 7aa4bf135..5cccacbd0 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/scale/UIMachineWindowScale.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineWindowScale.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineWindowScale.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIKeyboardHandlerSeamless.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIKeyboardHandlerSeamless.cpp
index c5228ca38..46bfd7e02 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIKeyboardHandlerSeamless.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIKeyboardHandlerSeamless.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIKeyboardHandlerSeamless.cpp 35752 2011-01-28 10:57:53Z vboxsync $ */
+/* $Id: UIKeyboardHandlerSeamless.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp
index ca400ea5e..93f0b43bd 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineLogicSeamless.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineLogicSeamless.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineLogicSeamless.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineViewSeamless.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineViewSeamless.cpp
index 7e732253c..529a33772 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineViewSeamless.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineViewSeamless.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineViewSeamless.cpp 32174 2010-09-01 12:52:17Z vboxsync $ */
+/* $Id: UIMachineViewSeamless.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp
index f27c90742..e2ea129ae 100644
--- a/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/seamless/UIMachineWindowSeamless.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineWindowSeamless.cpp 38348 2011-08-08 12:09:18Z vboxsync $ */
+/* $Id: UIMachineWindowSeamless.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIActionPoolSelector.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIActionPoolSelector.cpp
index 2f7c3f91e..e0a10e0b3 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIActionPoolSelector.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIActionPoolSelector.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIActionPoolSelector.cpp 38372 2011-08-09 09:52:55Z vboxsync $ */
+/* $Id: UIActionPoolSelector.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UISelectorShortcuts.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UISelectorShortcuts.cpp
index fda5c78ad..f7ce62913 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UISelectorShortcuts.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UISelectorShortcuts.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISelectorShortcuts.cpp 37878 2011-07-11 16:15:02Z vboxsync $ */
+/* $Id: UISelectorShortcuts.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIVMDesktop.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIVMDesktop.cpp
index 8eb12e9dc..8f1a6fb0a 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIVMDesktop.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIVMDesktop.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVMDesktop.cpp 37755 2011-07-04 10:21:00Z vboxsync $ */
+/* $Id: UIVMDesktop.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIVMItem.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIVMItem.cpp
index 08c6a4f81..bd3587194 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIVMItem.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIVMItem.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVMItem.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIVMItem.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIVMListView.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIVMListView.cpp
index 74429c86c..822cdc676 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIVMListView.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIVMListView.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVMListView.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIVMListView.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIVMPreviewWindow.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIVMPreviewWindow.cpp
index 4c7774f0e..de9f554d1 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIVMPreviewWindow.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIVMPreviewWindow.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVMPreviewWindow.cpp 35798 2011-01-31 18:09:28Z vboxsync $ */
+/* $Id: UIVMPreviewWindow.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp b/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp
index f284021a5..453f4f01f 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/UIVirtualBoxEventHandler.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIVirtualBoxEventHandler.cpp 35722 2011-01-26 16:37:16Z vboxsync $ */
+/* $Id: UIVirtualBoxEventHandler.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.cpp b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.cpp
index 9db321781..b9a2185b5 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.cpp
@@ -21,7 +21,9 @@
#else /* !VBOX_WITH_PRECOMPILED_HEADERS */
#include "QISplitter.h"
#include "UIBar.h"
+#include "UIUpdateManager.h"
#include "UIDownloaderUserManual.h"
+#include "UIDownloaderExtensionPack.h"
#include "UIExportApplianceWzd.h"
#include "UIIconPool.h"
#include "UIImportApplianceWzd.h"
@@ -41,7 +43,7 @@
#include "UISelectorShortcuts.h"
#include "UIDesktopServices.h"
#include "UIGlobalSettingsExtension.h" /* extension pack installation */
-#include "UIActionPoolSelector.h"
+#include "UIActionPool.h"
#ifdef VBOX_GUI_WITH_SYSTRAY
# include "VBoxTrayIcon.h"
@@ -93,9 +95,6 @@ VBoxSelectorWnd(VBoxSelectorWnd **aSelf, QWidget* aParent,
: QIWithRetranslateUI2<QMainWindow>(aParent, aFlags)
, mDoneInaccessibleWarningOnce(false)
{
- /* Create offline action pool: */
- UIActionPoolSelector::create();
-
VBoxGlobalSettings settings = vboxGlobal().settings();
if (aSelf)
@@ -493,7 +492,8 @@ VBoxSelectorWnd(VBoxSelectorWnd **aSelf, QWidget* aParent,
#endif
/* Listen to potential downloaders signals: */
- connect(&msgCenter(), SIGNAL(sigDownloaderUserManualCreated()), this, SLOT(sltDownloaderUserManualEmbed()));
+ connect(&msgCenter(), SIGNAL(sigDownloaderUserManualCreated()), this, SLOT(sltEmbedDownloaderForUserManual()));
+ connect(gUpdateManager, SIGNAL(sigDownloaderCreatedForExtensionPack()), this, SLOT(sltEmbedDownloaderForExtensionPack()));
/* bring the VM list to the focus */
mVMListView->setFocus();
@@ -562,9 +562,6 @@ VBoxSelectorWnd::~VBoxSelectorWnd()
/* Delete the items from our model */
mVMModel->clear();
-
- /* Delete offline action pool: */
- UIActionPoolSelector::destroy();
}
//
@@ -1662,13 +1659,20 @@ void VBoxSelectorWnd::trayIconChanged(bool fEnabled)
#endif /* VBOX_GUI_WITH_SYSTRAY */
-void VBoxSelectorWnd::sltDownloaderUserManualEmbed()
+void VBoxSelectorWnd::sltEmbedDownloaderForUserManual()
{
/* If there is User Manual downloader created => show the process bar: */
if (UIDownloaderUserManual *pDl = UIDownloaderUserManual::current())
statusBar()->addWidget(pDl->progressWidget(this), 0);
}
+void VBoxSelectorWnd::sltEmbedDownloaderForExtensionPack()
+{
+ /* If there is Extension Pack downloader created => show the process bar: */
+ if (UIDownloaderExtensionPack *pDl = UIDownloaderExtensionPack::current())
+ statusBar()->addWidget(pDl->progressWidget(this), 0);
+}
+
void VBoxSelectorWnd::showViewContextMenu(const QPoint &pos)
{
CVirtualBox vbox = vboxGlobal().virtualBox();
@@ -1769,7 +1773,7 @@ void VBoxSelectorWnd::prepareMenuHelp(QMenu *pMenu)
gActionPool->action(UIActionIndex_Simple_Register), SLOT(setEnabled(bool)));
#endif /* VBOX_WITH_REGISTRATION */
VBoxGlobal::connect(gActionPool->action(UIActionIndex_Simple_Update), SIGNAL(triggered()),
- &vboxGlobal(), SLOT(showUpdateDialog()));
+ gUpdateManager, SLOT(sltForceCheck()));
VBoxGlobal::connect(gActionPool->action(UIActionIndex_Simple_About), SIGNAL(triggered()),
&msgCenter(), SLOT(sltShowHelpAboutDialog()));
}
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.h b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.h
index a69ba2f4f..31d2885d5 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.h
+++ b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSelectorWnd.h
@@ -133,7 +133,8 @@ private slots:
void trayIconChanged(bool fEnabled);
#endif
- void sltDownloaderUserManualEmbed();
+ void sltEmbedDownloaderForUserManual();
+ void sltEmbedDownloaderForExtensionPack();
void showViewContextMenu(const QPoint &pos);
diff --git a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSnapshotsWgt.cpp b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSnapshotsWgt.cpp
index d06e913ce..2756260ea 100644
--- a/src/VBox/Frontends/VirtualBox/src/selector/VBoxSnapshotsWgt.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/selector/VBoxSnapshotsWgt.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxSnapshotsWgt.cpp 38393 2011-08-10 10:25:56Z vboxsync $ */
+/* $Id: VBoxSnapshotsWgt.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDefs.cpp b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDefs.cpp
index 953d9ebdf..e719bd27a 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDefs.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDefs.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISettingsDefs.cpp 36589 2011-04-06 15:24:00Z vboxsync $ */
+/* $Id: UISettingsDefs.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialog.cpp b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialog.cpp
index 8692b71de..829ce3f23 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISettingsDialog.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UISettingsDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
index 610cabab4..bd0d8be00 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsDialogSpecific.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISettingsDialogSpecific.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UISettingsDialogSpecific.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
@@ -469,12 +469,6 @@ void UISettingsDialogGlobal::saveData()
void UISettingsDialogGlobal::retranslateUi()
{
- /* Base-class UI translation: */
- UISettingsDialog::retranslateUi();
-
- /* Set dialog's name: */
- setWindowTitle(title());
-
/* General page: */
m_pSelector->setItemText(GLSettingsPage_General, tr("General"));
@@ -499,8 +493,14 @@ void UISettingsDialogGlobal::retranslateUi()
/* Proxy page: */
m_pSelector->setItemText(GLSettingsPage_Proxy, tr("Proxy"));
- /* Translate the selector: */
+ /* Polish the selector: */
m_pSelector->polish();
+
+ /* Base-class UI translation: */
+ UISettingsDialog::retranslateUi();
+
+ /* Set dialog's name: */
+ setWindowTitle(title());
}
QString UISettingsDialogGlobal::title() const
@@ -864,12 +864,6 @@ void UISettingsDialogMachine::retranslateUi()
if (QWidget *pPage = m_pSelector->idToPage(VMSettingsPage_Parallel))
qApp->sendEvent(pPage, &event);
- /* Base-class UI translation: */
- UISettingsDialog::retranslateUi();
-
- /* Set dialog's name: */
- setWindowTitle(title());
-
/* General page: */
m_pSelector->setItemText(VMSettingsPage_General, tr("General"));
@@ -903,8 +897,14 @@ void UISettingsDialogMachine::retranslateUi()
/* SFolders page: */
m_pSelector->setItemText(VMSettingsPage_SF, tr("Shared Folders"));
- /* Translate the selector: */
+ /* Polish the selector: */
m_pSelector->polish();
+
+ /* Base-class UI translation: */
+ UISettingsDialog::retranslateUi();
+
+ /* Set dialog's name: */
+ setWindowTitle(title());
}
QString UISettingsDialogMachine::title() const
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsPage.cpp b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsPage.cpp
index 7864714f6..bc7b70217 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/UISettingsPage.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/UISettingsPage.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISettingsPage.cpp 36594 2011-04-06 16:22:58Z vboxsync $ */
+/* $Id: UISettingsPage.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsSelector.cpp b/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsSelector.cpp
index 63892d7c4..ed11fcae5 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsSelector.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsSelector.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxSettingsSelector.cpp 37610 2011-06-23 12:26:14Z vboxsync $ */
+/* $Id: VBoxSettingsSelector.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsExtension.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsExtension.cpp
index 5a589709b..21ae06120 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsExtension.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsExtension.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsExtension.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIGlobalSettingsExtension.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsGeneral.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsGeneral.cpp
index b2ca9c691..100621cbd 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsGeneral.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsGeneral.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsGeneral.cpp 33926 2010-11-10 09:02:39Z vboxsync $ */
+/* $Id: UIGlobalSettingsGeneral.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp
index e0d890de4..280628dea 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsInput.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsInput.cpp 35862 2011-02-07 08:57:38Z vboxsync $ */
+/* $Id: UIGlobalSettingsInput.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsLanguage.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsLanguage.cpp
index afb4ee14b..378cb37d8 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsLanguage.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsLanguage.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsLanguage.cpp 35522 2011-01-13 13:06:44Z vboxsync $ */
+/* $Id: UIGlobalSettingsLanguage.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp
index 440b880dc..7500a8874 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetwork.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsNetwork.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIGlobalSettingsNetwork.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetails.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetails.cpp
index 5a6cfd831..75bd79265 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetails.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsNetworkDetails.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsNetworkDetails.cpp 34162 2010-11-18 12:04:47Z vboxsync $ */
+/* $Id: UIGlobalSettingsNetworkDetails.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp
index 13cd07cfb..3a147d51e 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsProxy.cpp 37548 2011-06-20 06:19:31Z vboxsync $ */
+/* $Id: UIGlobalSettingsProxy.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
index a9acc3c26..b3d74537e 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIGlobalSettingsUpdate.cpp 34166 2010-11-18 12:36:43Z vboxsync $ */
+/* $Id: UIGlobalSettingsUpdate.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.h b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.h
index 051428562..b0dc89c48 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.h
+++ b/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsUpdate.h
@@ -22,7 +22,7 @@
/* Local includes */
#include "UISettingsPage.h"
#include "UIGlobalSettingsUpdate.gen.h"
-#include "VBoxUpdateDlg.h"
+#include "UIUpdateDefs.h"
/* Global settings / Update page / Cache: */
struct UISettingsCacheGlobalUpdate
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsAudio.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsAudio.cpp
index d0c9ca7be..e087f5156 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsAudio.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsAudio.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsAudio.cpp 37126 2011-05-17 13:56:50Z vboxsync $ */
+/* $Id: UIMachineSettingsAudio.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp
index 77a642b8d..8f84b7e1d 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsDisplay.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsDisplay.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsGeneral.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsGeneral.cpp
index e3218a1bc..68f83f941 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsGeneral.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsGeneral.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsGeneral.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsGeneral.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp
index cf858fae9..b32b2029c 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsNetwork.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsNetwork.cpp 37945 2011-07-14 09:40:35Z vboxsync $ */
+/* $Id: UIMachineSettingsNetwork.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsParallel.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsParallel.cpp
index eaf00bbfb..5093c6bd0 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsParallel.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsParallel.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsParallel.cpp 37126 2011-05-17 13:56:50Z vboxsync $ */
+/* $Id: UIMachineSettingsParallel.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp
index 3d7d6dd49..1409d1104 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsPortForwardingDlg.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsPortForwardingDlg.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsPortForwardingDlg.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSF.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSF.cpp
index 217a71089..c6dfbb47a 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSF.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSF.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsSF.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsSF.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSFDetails.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSFDetails.cpp
index 710075642..25219fd47 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSFDetails.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSFDetails.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsSFDetails.cpp 35956 2011-02-14 11:43:07Z vboxsync $ */
+/* $Id: UIMachineSettingsSFDetails.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSerial.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSerial.cpp
index ac2378d88..2598ab3c7 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSerial.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSerial.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsSerial.cpp 37126 2011-05-17 13:56:50Z vboxsync $ */
+/* $Id: UIMachineSettingsSerial.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp
index f8b6ed2ad..c01b401a5 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsStorage.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsStorage.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSystem.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSystem.cpp
index 2918d647b..b088052a9 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSystem.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsSystem.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsSystem.cpp 37753 2011-07-04 10:09:18Z vboxsync $ */
+/* $Id: UIMachineSettingsSystem.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp
index bc282a122..51fc5bbdd 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsUSB.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIMachineSettingsUSB.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
@@ -17,6 +17,9 @@
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*/
+/* Global includes */
+#include <QHeaderView>
+
/* Local includes */
#include "QIWidgetValidator.h"
#include "UIIconPool.h"
@@ -25,9 +28,10 @@
#include "UIToolBar.h"
#include "UIMachineSettingsUSB.h"
#include "UIMachineSettingsUSBFilterDetails.h"
+#include "VBoxDefs.h"
-/* Global includes */
-#include <QHeaderView>
+/* Using declarations: */
+using namespace VBoxGlobalDefs;
UIMachineSettingsUSB::UIMachineSettingsUSB(UISettingsPageType type)
: UISettingsPage(type)
@@ -308,8 +312,7 @@ void UIMachineSettingsUSB::putToCache()
/* USB 1.0 (OHCI): */
usbData.m_fUSBEnabled = mGbUSB->isChecked();
/* USB 2.0 (EHCI): */
- QString strExtPackName = "Oracle VM VirtualBox Extension Pack";
- CExtPack extPack = vboxGlobal().virtualBox().GetExtensionPackManager().Find(strExtPackName);
+ CExtPack extPack = vboxGlobal().virtualBox().GetExtensionPackManager().Find(UI_ExtPackName);
usbData.m_fEHCIEnabled = extPack.isNull() || !extPack.GetUsable() ? false : mCbUSB2->isChecked();
/* Update USB cache: */
@@ -466,8 +469,9 @@ void UIMachineSettingsUSB::setValidator (QIWidgetValidator *aVal)
bool UIMachineSettingsUSB::revalidate(QString &strWarningText, QString& /* strTitle */)
{
/* USB 2.0 Extension Pack presence test: */
- QString strExtPackName = "Oracle VM VirtualBox Extension Pack";
- CExtPack extPack = vboxGlobal().virtualBox().GetExtensionPackManager().Find(strExtPackName);
+ NOREF(strWarningText);
+#ifdef VBOX_WITH_EXTPACK
+ CExtPack extPack = vboxGlobal().virtualBox().GetExtensionPackManager().Find(UI_ExtPackName);
if (mGbUSB->isChecked() && mCbUSB2->isChecked() && (extPack.isNull() || !extPack.GetUsable()))
{
strWarningText = tr("USB 2.0 is currently enabled for this virtual machine. "
@@ -475,10 +479,11 @@ bool UIMachineSettingsUSB::revalidate(QString &strWarningText, QString& /* strTi
"Please install the Extension Pack from the VirtualBox download site. "
"After this you will be able to re-enable USB 2.0. "
"It will be disabled in the meantime unless you cancel the current settings changes.")
- .arg(strExtPackName);
- msgCenter().remindAboutUnsupportedUSB2(strExtPackName, this);
+ .arg(UI_ExtPackName);
+ msgCenter().remindAboutUnsupportedUSB2(UI_ExtPackName, this);
return true;
}
+#endif
return true;
}
diff --git a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp
index b2b59c34b..f9602283b 100644
--- a/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIMachineSettingsUSBFilterDetails.cpp 33882 2010-11-09 09:32:27Z vboxsync $ */
+/* $Id: UIMachineSettingsUSBFilterDetails.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp
index 7a36ba687..68ab5dd61 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIApplianceEditorWidget.cpp 38384 2011-08-09 16:07:54Z vboxsync $ */
+/* $Id: UIApplianceEditorWidget.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceExportEditorWidget.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceExportEditorWidget.cpp
index 235c7524e..800c205ff 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceExportEditorWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceExportEditorWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIApplianceExportEditorWidget.cpp 38410 2011-08-11 09:34:18Z vboxsync $ */
+/* $Id: UIApplianceExportEditorWidget.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceImportEditorWidget.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceImportEditorWidget.cpp
index 341e5870d..f85290cd9 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceImportEditorWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceImportEditorWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIApplianceImportEditorWidget.cpp 38412 2011-08-11 09:50:04Z vboxsync $ */
+/* $Id: UIApplianceImportEditorWidget.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIBar.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIBar.cpp
index 459f90427..5fe7f4b28 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIBar.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIBar.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIBar.cpp 35424 2011-01-07 13:05:41Z vboxsync $ */
+/* $Id: UIBar.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIBootTable.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIBootTable.cpp
index 77792d83e..bdfdca1c7 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIBootTable.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIBootTable.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIBootTable.cpp 34614 2010-12-02 14:09:47Z vboxsync $ */
+/* $Id: UIBootTable.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIHotKeyEditor.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIHotKeyEditor.cpp
index ca0a5b678..7c0317549 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIHotKeyEditor.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIHotKeyEditor.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIHotKeyEditor.cpp 35862 2011-02-07 08:57:38Z vboxsync $ */
+/* $Id: UIHotKeyEditor.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UILineTextEdit.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UILineTextEdit.cpp
index 52cb4e387..4608f8a29 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UILineTextEdit.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UILineTextEdit.cpp
@@ -1,4 +1,4 @@
-/* $Id: UILineTextEdit.cpp 38375 2011-08-09 11:55:48Z vboxsync $ */
+/* $Id: UILineTextEdit.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIPopupBox.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIPopupBox.cpp
index 1c552fc68..31b8bae12 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIPopupBox.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIPopupBox.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIPopupBox.cpp 30904 2010-07-19 09:43:24Z vboxsync $ */
+/* $Id: UIPopupBox.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIProgressDialog.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIProgressDialog.cpp
index 2d43f5d30..03aad59dd 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIProgressDialog.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIProgressDialog.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIProgressDialog.cpp 37572 2011-06-21 11:37:31Z vboxsync $ */
+/* $Id: UIProgressDialog.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UISpecialControls.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UISpecialControls.cpp
index 353c9a5a0..85233ecfb 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/UISpecialControls.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/UISpecialControls.cpp
@@ -1,4 +1,4 @@
-/* $Id: UISpecialControls.cpp 30694 2010-07-07 09:24:18Z vboxsync $ */
+/* $Id: UISpecialControls.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp
index e16221b11..8f951835c 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxFilePathSelectorWidget.cpp 33778 2010-11-04 15:25:25Z vboxsync $ */
+/* $Id: VBoxFilePathSelectorWidget.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxGuestRAMSlider.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxGuestRAMSlider.cpp
index 964c69d49..c194e4742 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxGuestRAMSlider.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxGuestRAMSlider.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxGuestRAMSlider.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxGuestRAMSlider.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMediaComboBox.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMediaComboBox.cpp
index 607a5524b..382711d48 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMediaComboBox.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMediaComboBox.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxMediaComboBox.cpp 33540 2010-10-28 09:27:05Z vboxsync $ */
+/* $Id: VBoxMediaComboBox.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp
index 6cbac2bcb..703485ee7 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxMiniToolBar.cpp 35867 2011-02-07 12:51:10Z vboxsync $ */
+/* $Id: VBoxMiniToolBar.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorButton.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorButton.cpp
index 745838c00..6253d4c62 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorButton.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorButton.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxOSTypeSelectorButton.cpp 28800 2010-04-27 08:22:32Z vboxsync $ */
+/* $Id: VBoxOSTypeSelectorButton.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp
index b1dcc7624..7d453c8a6 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxOSTypeSelectorWidget.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxOSTypeSelectorWidget.cpp 33781 2010-11-04 15:59:35Z vboxsync $ */
+/* $Id: VBoxOSTypeSelectorWidget.cpp $ */
/** @file
*
* VBox frontends: Qt GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxWarningPane.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxWarningPane.cpp
index d24970a01..ae41c05a4 100644
--- a/src/VBox/Frontends/VirtualBox/src/widgets/VBoxWarningPane.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/widgets/VBoxWarningPane.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxWarningPane.cpp 37106 2011-05-16 14:50:12Z vboxsync $ */
+/* $Id: VBoxWarningPane.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UICloneVMWizard.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UICloneVMWizard.cpp
index d862d49b1..89870028a 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UICloneVMWizard.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UICloneVMWizard.cpp
@@ -1,4 +1,4 @@
-/* $Id: UICloneVMWizard.cpp 38440 2011-08-12 15:32:49Z vboxsync $ */
+/* $Id: UICloneVMWizard.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIExportApplianceWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIExportApplianceWzd.cpp
index ba1182d93..5d1fa861d 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIExportApplianceWzd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIExportApplianceWzd.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIExportApplianceWzd.cpp 38343 2011-08-08 10:11:12Z vboxsync $ */
+/* $Id: UIExportApplianceWzd.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp
index b83d76ee8..ac0efb188 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIFirstRunWzd.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIFirstRunWzd.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIImportApplianceWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIImportApplianceWzd.cpp
index 38ffb1002..98e3344a7 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIImportApplianceWzd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIImportApplianceWzd.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIImportApplianceWzd.cpp 38412 2011-08-11 09:50:04Z vboxsync $ */
+/* $Id: UIImportApplianceWzd.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.cpp
index beed26bb9..38f5a1601 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.cpp
@@ -1,4 +1,4 @@
-/* $Id: UINewHDWizard.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UINewHDWizard.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
@@ -196,11 +196,11 @@ UINewHDWizard::UINewHDWizard(QWidget *pParent, const QString &strDefaultName, co
/* Create & add pages: */
if (wizardType() == UINewHDWizardType_Copying)
- addPage(new UINewHDWizardPageWelcome(sourceHardDisk));
- addPage(new UINewHDWizardPageFormat);
- addPage(new UINewHDWizardPageVariant);
- addPage(new UINewHDWizardPageOptions(strDefaultName, strDefaultPath, uDefaultSize));
- addPage(new UINewHDWizardPageSummary);
+ setPage(PageWelcome, new UINewHDWizardPageWelcome(sourceHardDisk));
+ setPage(PageFormat, new UINewHDWizardPageFormat);
+ setPage(PageVariant, new UINewHDWizardPageVariant);
+ setPage(PageOptions, new UINewHDWizardPageOptions(strDefaultName, strDefaultPath, uDefaultSize));
+ setPage(PageSummary, new UINewHDWizardPageSummary);
/* Translate wizard: */
retranslateUi();
@@ -371,6 +371,12 @@ QString UINewHDWizardPageFormat::fullFormatName(const QString &strBaseFormatName
return UINewHDWizard::tr("V&MDK (Virtual Machine Disk)");
else if (strBaseFormatName == "VHD")
return UINewHDWizard::tr("V&HD (Virtual Hard Disk)");
+ else if (strBaseFormatName == "Parallels")
+ return UINewHDWizard::tr("H&DD (Parallels Hard Disk)");
+ else if (strBaseFormatName == "QED")
+ return UINewHDWizard::tr("Q&ED (QEMU enhanced disk)");
+ else if (strBaseFormatName == "QCOW")
+ return UINewHDWizard::tr("&QCOW (QEMU Copy-On-Write)");
return strBaseFormatName;
}
@@ -447,6 +453,23 @@ bool UINewHDWizardPageFormat::isComplete() const
return !m_mediumFormat.isNull();
}
+int UINewHDWizardPageFormat::nextId() const
+{
+ CMediumFormat mediumFormat = field("mediumFormat").value<CMediumFormat>();
+ ULONG uCapabilities = mediumFormat.GetCapabilities();
+ int cTest = 0;
+ if (uCapabilities & KMediumFormatCapabilities_CreateDynamic)
+ ++cTest;
+ if (uCapabilities & KMediumFormatCapabilities_CreateFixed)
+ ++cTest;
+ if (uCapabilities & KMediumFormatCapabilities_CreateSplit2G)
+ ++cTest;
+ if (cTest > 1)
+ return UINewHDWizard::PageVariant;
+
+ return UINewHDWizard::PageOptions;
+}
+
void UINewHDWizardPageFormat::processFormat(CMediumFormat mediumFormat)
{
/* Check that medium format supports creation: */
@@ -481,7 +504,10 @@ UINewHDWizardPageVariant::UINewHDWizardPageVariant()
/* Register 'mediumVariant' field: */
registerField("mediumVariant", this, "mediumVariant");
- /* Unfortuanelly, KMediumVariant is very messy,
+ /* Default */
+ setMediumVariant(KMediumVariant_Standard);
+
+ /* Unfortunately, KMediumVariant is very messy,
* so we can't enumerate it to make sure GUI will not hard-code its values,
* we can only use hard-coded values that we need: */
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.h b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.h
index 507576e0a..ed685aea6 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.h
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWizard.h
@@ -49,6 +49,15 @@ class UINewHDWizard : public QIWizard
public:
+ enum
+ {
+ PageWelcome,
+ PageFormat,
+ PageVariant,
+ PageOptions,
+ PageSummary
+ };
+
/* Constructor: */
UINewHDWizard(QWidget *pParent,
const QString &strDefaultName = QString(), const QString &strDefaultPath = QString(),
@@ -155,6 +164,8 @@ private:
/* Completeness validator: */
bool isComplete() const;
+ int nextId() const;
+
/* Helping stuff: */
void processFormat(CMediumFormat mediumFormat);
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp
index d54837991..c6f7930ec 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp
@@ -1,4 +1,4 @@
-/* $Id: UINewVMWzd.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UINewVMWzd.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):
@@ -27,6 +27,10 @@
#include "QIFileDialog.h"
#include "UIMessageCenter.h"
#include "UIMachineSettingsStorage.h"
+#include "VBoxDefs.h"
+
+/* Using declarations: */
+using namespace VBoxGlobalDefs;
/* Globals */
struct osTypePattern
@@ -55,9 +59,11 @@ static const osTypePattern gs_OSTypePattern[] =
{ QRegExp("(Wi.*V)|(Vista)", Qt::CaseInsensitive), "WindowsVista" },
{ QRegExp("((Wi.*2008)|(W2K8)).*64", Qt::CaseInsensitive), "Windows2008_64" },
{ QRegExp("(Wi.*2008)|(W2K8)", Qt::CaseInsensitive), "Windows2008" },
- { QRegExp("(Wi.*2)|(W2K)", Qt::CaseInsensitive), "Windows2000" },
+ { QRegExp("(Wi.*2000)|(W2K)", Qt::CaseInsensitive), "Windows2000" },
{ QRegExp("(Wi.*7.*64)|(W7.*64)", Qt::CaseInsensitive), "Windows7_64" },
{ QRegExp("(Wi.*7)|(W7)", Qt::CaseInsensitive), "Windows7" },
+ { QRegExp("(Wi.*8.*64)|(W8.*64)", Qt::CaseInsensitive), "Windows8_64" },
+ { QRegExp("(Wi.*8)|(W8)", Qt::CaseInsensitive), "Windows8" },
{ QRegExp("Wi.*3", Qt::CaseInsensitive), "Windows31" },
{ QRegExp("Wi", Qt::CaseInsensitive), "WindowsXP" },
@@ -85,8 +91,8 @@ static const osTypePattern gs_OSTypePattern[] =
/* Regular names of Linux distributions */
{ QRegExp("Arc.*64", Qt::CaseInsensitive), "ArchLinux_64" },
{ QRegExp("Arc", Qt::CaseInsensitive), "ArchLinux" },
- { QRegExp("De.*64", Qt::CaseInsensitive), "Debian_64" },
- { QRegExp("De", Qt::CaseInsensitive), "Debian" },
+ { QRegExp("Deb.*64", Qt::CaseInsensitive), "Debian_64" },
+ { QRegExp("Deb", Qt::CaseInsensitive), "Debian" },
{ QRegExp("((SU)|(Nov)|(SLE)).*64", Qt::CaseInsensitive), "OpenSUSE_64" },
{ QRegExp("(SU)|(Nov)|(SLE)", Qt::CaseInsensitive), "OpenSUSE" },
{ QRegExp("Fe.*64", Qt::CaseInsensitive), "Fedora_64" },
@@ -763,9 +769,8 @@ bool UINewVMWzdPage5::constructMachine()
* necessary evil to patch over legacy compatability issues
* introduced by the new distribution model.
*/
- static const char *s_pszUsbExtPackName = "Oracle VM VirtualBox Extension Pack";
CExtPackManager manager = vboxGlobal().virtualBox().GetExtensionPackManager();
- if (manager.IsExtPackUsable(s_pszUsbExtPackName))
+ if (manager.IsExtPackUsable(UI_ExtPackName))
usbController.SetEnabledEhci(true);
}
diff --git a/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp b/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp
index d2f579d1e..c2d508d68 100644
--- a/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp
+++ b/src/VBox/Frontends/VirtualBox/src/wizards/registration/UIRegistrationWzd.cpp
@@ -1,4 +1,4 @@
-/* $Id: UIRegistrationWzd.cpp 38311 2011-08-04 13:08:39Z vboxsync $ */
+/* $Id: UIRegistrationWzd.cpp $ */
/** @file
*
* VBox frontends: Qt4 GUI ("VirtualBox"):