Index: trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk	(revision 30192)
@@ -390,4 +390,5 @@
 	src/globals/VBoxGlobal.cpp \
 	src/globals/VBoxProblemReporter.cpp \
+	src/globals/UIIconPool.cpp \
 	src/extensions/QIAdvancedSlider.cpp \
 	src/extensions/QIArrowButtonPress.cpp \
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxHelpActions.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxHelpActions.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxHelpActions.cpp	(revision 30192)
@@ -24,4 +24,5 @@
 #include "VBoxGlobal.h"
 #include "VBoxProblemReporter.h"
+#include "UIIconPool.h"
 
 /* Qt includes */
@@ -34,22 +35,22 @@
 
     contentsAction = new QAction (aParent);
-    contentsAction->setIcon (VBoxGlobal::iconSet (":/help_16px.png"));
+    contentsAction->setIcon (UIIconPool::iconSet (":/help_16px.png"));
 
     webAction = new QAction (aParent);
-    webAction->setIcon (VBoxGlobal::iconSet (":/site_16px.png"));
+    webAction->setIcon (UIIconPool::iconSet (":/site_16px.png"));
 
     resetMessagesAction = new QAction (aParent);
-    resetMessagesAction->setIcon (VBoxGlobal::iconSet (":/reset_16px.png"));
+    resetMessagesAction->setIcon (UIIconPool::iconSet (":/reset_16px.png"));
 
     registerAction = new QAction (aParent);
-    registerAction->setIcon (VBoxGlobal::iconSet (":/register_16px.png",
+    registerAction->setIcon (UIIconPool::iconSet (":/register_16px.png",
                                                   ":/register_disabled_16px.png"));
     updateAction = new QAction (aParent);
     updateAction->setMenuRole(QAction::ApplicationSpecificRole);
-    updateAction->setIcon (VBoxGlobal::iconSet (":/refresh_16px.png",
+    updateAction->setIcon (UIIconPool::iconSet (":/refresh_16px.png",
                                                 ":/refresh_disabled_16px.png"));
     aboutAction = new QAction (aParent);
     aboutAction->setMenuRole (QAction::AboutRole);
-    aboutAction->setIcon (VBoxGlobal::iconSet (":/about_16px.png"));
+    aboutAction->setIcon (UIIconPool::iconSet (":/about_16px.png"));
 
     QObject::connect (contentsAction, SIGNAL (triggered()),
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxMediaManagerDlg.cpp	(revision 30192)
@@ -42,4 +42,5 @@
 #include "QIFileDialog.h"
 #include "QILabel.h"
+#include "UIIconPool.h"
 #endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
 
@@ -202,6 +203,6 @@
 
     /* Apply window icons */
-    setWindowIcon (vboxGlobal().iconSetFull (QSize (32, 32), QSize (16, 16),
-                                             ":/diskimage_32px.png", ":/diskimage_16px.png"));
+    setWindowIcon(UIIconPool::iconSetFull(QSize (32, 32), QSize (16, 16),
+                                          ":/diskimage_32px.png", ":/diskimage_16px.png"));
 
     mVBox = vboxGlobal().virtualBox();
@@ -212,7 +213,7 @@
             mFloppyImagesInaccessible = false;
 
-    mHardDiskIcon    = VBoxGlobal::iconSet (":/hd_16px.png", ":/hd_disabled_16px.png");
-    mDVDImageIcon    = VBoxGlobal::iconSet (":/cd_16px.png", ":/cd_disabled_16px.png");
-    mFloppyImageIcon = VBoxGlobal::iconSet (":/fd_16px.png", ":/fd_disabled_16px.png");
+    mHardDiskIcon    = UIIconPool::iconSet(":/hd_16px.png", ":/hd_disabled_16px.png");
+    mDVDImageIcon    = UIIconPool::iconSet(":/cd_16px.png", ":/cd_disabled_16px.png");
+    mFloppyImageIcon = UIIconPool::iconSet(":/fd_16px.png", ":/fd_disabled_16px.png");
 
     /* Setup tab-widget icons */
@@ -291,21 +292,21 @@
     connect (mRefreshAction, SIGNAL (triggered()), this, SLOT (refreshAll()));
 
-    mNewAction->setIcon (VBoxGlobal::iconSetFull (
+    mNewAction->setIcon(UIIconPool::iconSetFull (
         QSize (22, 22), QSize (16, 16),
         ":/hd_new_22px.png", ":/hd_new_16px.png",
         ":/hd_new_disabled_22px.png", ":/hd_new_disabled_16px.png"));
-    mAddAction->setIcon (VBoxGlobal::iconSetFull (
+    mAddAction->setIcon(UIIconPool::iconSetFull (
         QSize (22, 22), QSize (16, 16),
         ":/hd_add_22px.png", ":/hd_add_16px.png",
         ":/hd_add_disabled_22px.png", ":/hd_add_disabled_16px.png"));
-    mRemoveAction->setIcon (VBoxGlobal::iconSetFull (
+    mRemoveAction->setIcon(UIIconPool::iconSetFull (
         QSize (22, 22), QSize (16, 16),
         ":/hd_remove_22px.png", ":/hd_remove_16px.png",
         ":/hd_remove_disabled_22px.png", ":/hd_remove_disabled_16px.png"));
-    mReleaseAction->setIcon (VBoxGlobal::iconSetFull (
+    mReleaseAction->setIcon(UIIconPool::iconSetFull (
         QSize (22, 22), QSize (16, 16),
         ":/hd_release_22px.png", ":/hd_release_16px.png",
         ":/hd_release_disabled_22px.png", ":/hd_release_disabled_16px.png"));
-    mRefreshAction->setIcon (VBoxGlobal::iconSetFull (
+    mRefreshAction->setIcon(UIIconPool::iconSetFull (
         QSize (22, 22), QSize (16, 16),
         ":/refresh_22px.png", ":/refresh_16px.png",
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxSelectorWnd.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxSelectorWnd.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxSelectorWnd.cpp	(revision 30192)
@@ -20,20 +20,22 @@
 # include "precomp.h"
 #else  /* !VBOX_WITH_PRECOMPILED_HEADERS */
-#include "VBoxProblemReporter.h"
 #include "VBoxSelectorWnd.h"
-#include "UIVMListView.h"
-#include "VBoxToolBar.h"
-
-#include "VBoxSnapshotsWgt.h"
-#include "UINewVMWzd.h"
-#include "VBoxMediaManagerDlg.h"
-#include "UIImportApplianceWzd.h"
-#include "UIExportApplianceWzd.h"
-#include "VBoxSettingsDialogSpecific.h"
-#include "VBoxVMLogViewer.h"
-#include "VBoxGlobal.h"
-#include "VBoxUtils.h"
 #include "QISplitter.h"
 #include "QITabWidget.h"
+#include "UIExportApplianceWzd.h"
+#include "UIIconPool.h"
+#include "UIImportApplianceWzd.h"
+#include "UINewVMWzd.h"
+#include "UISpacerWidgets.h"
+#include "UIVMListView.h"
+#include "VBoxGlobal.h"
+#include "VBoxMediaManagerDlg.h"
+#include "VBoxProblemReporter.h"
+#include "VBoxSettingsDialogSpecific.h"
+#include "VBoxSnapshotsWgt.h"
+#include "VBoxSpecialControls.h"
+#include "VBoxToolBar.h"
+#include "VBoxUtils.h"
+#include "VBoxVMLogViewer.h"
 
 #include "UIDownloaderUserManual.h"
@@ -284,6 +286,6 @@
     mBtnEdit->setSizePolicy (QSizePolicy::Preferred, QSizePolicy::Fixed);
     mBtnEdit->setFocusPolicy (Qt::StrongFocus);
-    mBtnEdit->setIcon (VBoxGlobal::iconSet (":/edit_description_16px.png",
-                                            ":/edit_description_disabled_16px.png"));
+    mBtnEdit->setIcon(UIIconPool::iconSet(":/edit_description_16px.png",
+                                          ":/edit_description_disabled_16px.png"));
     mBtnEdit->setToolButtonStyle (Qt::ToolButtonTextBesideIcon);
     connect (mBtnEdit, SIGNAL (clicked()), this, SLOT (goToSettings()));
@@ -413,40 +415,40 @@
 
     mFileMediaMgrAction = new QAction (this);
-    mFileMediaMgrAction->setIcon (VBoxGlobal::iconSet (":/diskimage_16px.png"));
+    mFileMediaMgrAction->setIcon(UIIconPool::iconSet(":/diskimage_16px.png"));
 
     mFileApplianceImportAction = new QAction (this);
-    mFileApplianceImportAction->setIcon (VBoxGlobal::iconSet (":/import_16px.png"));
+    mFileApplianceImportAction->setIcon(UIIconPool::iconSet(":/import_16px.png"));
 
     mFileApplianceExportAction = new QAction (this);
-    mFileApplianceExportAction->setIcon (VBoxGlobal::iconSet (":/export_16px.png"));
+    mFileApplianceExportAction->setIcon(UIIconPool::iconSet(":/export_16px.png"));
 
     mFileSettingsAction = new QAction(this);
     mFileSettingsAction->setMenuRole (QAction::PreferencesRole);
-    mFileSettingsAction->setIcon (VBoxGlobal::iconSet (":/global_settings_16px.png"));
+    mFileSettingsAction->setIcon(UIIconPool::iconSet(":/global_settings_16px.png"));
     mFileExitAction = new QAction (this);
     mFileExitAction->setMenuRole (QAction::QuitRole);
-    mFileExitAction->setIcon (VBoxGlobal::iconSet (":/exit_16px.png"));
+    mFileExitAction->setIcon(UIIconPool::iconSet(":/exit_16px.png"));
 
     mVmNewAction = new QAction (this);
-    mVmNewAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmNewAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_new_32px.png", ":/new_16px.png"));
     mVmConfigAction = new QAction (this);
-    mVmConfigAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmConfigAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_settings_32px.png", ":/settings_16px.png",
         ":/vm_settings_disabled_32px.png", ":/settings_dis_16px.png"));
     mVmDeleteAction = new QAction (this);
-    mVmDeleteAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmDeleteAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_delete_32px.png", ":/delete_16px.png",
         ":/vm_delete_disabled_32px.png", ":/delete_dis_16px.png"));
     mVmStartAction = new QAction (this);
-    mVmStartAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmStartAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_start_32px.png", ":/start_16px.png",
         ":/vm_start_disabled_32px.png", ":/start_dis_16px.png"));
     mVmDiscardAction = new QAction (this);
-    mVmDiscardAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmDiscardAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_discard_32px.png", ":/discard_16px.png",
@@ -454,15 +456,15 @@
     mVmPauseAction = new QAction (this);
     mVmPauseAction->setCheckable (true);
-    mVmPauseAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmPauseAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_pause_32px.png", ":/pause_16px.png",
         ":/vm_pause_disabled_32px.png", ":/pause_disabled_16px.png"));
     mVmRefreshAction = new QAction (this);
-    mVmRefreshAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmRefreshAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/refresh_32px.png", ":/refresh_16px.png",
         ":/refresh_disabled_32px.png", ":/refresh_disabled_16px.png"));
     mVmShowLogsAction = new QAction (this);
-    mVmShowLogsAction->setIcon (VBoxGlobal::iconSetFull (
+    mVmShowLogsAction->setIcon(UIIconPool::iconSetFull(
         QSize (32, 32), QSize (16, 16),
         ":/vm_show_logs_32px.png", ":/show_logs_16px.png",
@@ -514,5 +516,4 @@
 
     /* VM tab widget containing details and snapshots tabs */
-    mVmTabWidget = new QITabWidget();
     pSplitter->addWidget (mVmTabWidget);
 
@@ -524,22 +525,22 @@
     /* VM details view */
     mVmDetailsView = new VBoxVMDetailsView (NULL, mVmRefreshAction);
-    mVmTabWidget->addTab (mVmDetailsView,
-                          VBoxGlobal::iconSet (":/settings_16px.png"),
-                          QString::null);
+    mVmTabWidget->addTab(mVmDetailsView,
+                         UIIconPool::iconSet(":/settings_16px.png"),
+                         QString::null);
 
     /* VM snapshots list */
     mVmSnapshotsWgt = new VBoxSnapshotsWgt (NULL);
-    mVmTabWidget->addTab (mVmSnapshotsWgt,
-                          VBoxGlobal::iconSet (":/take_snapshot_16px.png",
-                                               ":/take_snapshot_dis_16px.png"),
-                          QString::null);
+    mVmTabWidget->addTab(mVmSnapshotsWgt,
+                         UIIconPool::iconSet(":/take_snapshot_16px.png",
+                                             ":/take_snapshot_dis_16px.png"),
+                         QString::null);
     mVmSnapshotsWgt->setContentsMargins (10, 10, 10, 10);
 
     /* VM comments page */
     mVmDescriptionPage = new VBoxVMDescriptionPage (this);
-    mVmTabWidget->addTab (mVmDescriptionPage,
-                          VBoxGlobal::iconSet (":/description_16px.png",
-                                               ":/description_disabled_16px.png"),
-                          QString::null);
+    mVmTabWidget->addTab(mVmDescriptionPage,
+                         UIIconPool::iconSet(":/description_16px.png",
+                                             ":/description_disabled_16px.png"),
+                         QString::null);
     mVmDescriptionPage->setContentsMargins (10, 10, 10, 10);
 
@@ -1839,11 +1840,9 @@
     mShowSelectorAction = new QAction (this);
     Assert (mShowSelectorAction);
-    mShowSelectorAction->setIcon (VBoxGlobal::iconSet (
-        ":/VirtualBox_16px.png"));
+    mShowSelectorAction->setIcon(UIIconPool::iconSet(":/VirtualBox_16px.png"));
 
     mHideSystrayMenuAction = new QAction (this);
     Assert (mHideSystrayMenuAction);
-    mHideSystrayMenuAction->setIcon (VBoxGlobal::iconSet (
-        ":/exit_16px.png"));
+    mHideSystrayMenuAction->setIcon(UIIconPool::iconSet(":/exit_16px.png"));
 
     /* reuse parent action data */
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotsWgt.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotsWgt.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxSnapshotsWgt.cpp	(revision 30192)
@@ -21,4 +21,12 @@
 # include "precomp.h"
 #else  /* !VBOX_WITH_PRECOMPILED_HEADERS */
+/* Local includes */
+#include "UIIconPool.h"
+#include "VBoxProblemReporter.h"
+#include "VBoxSnapshotDetailsDlg.h"
+#include "VBoxSnapshotsWgt.h"
+#include "VBoxTakeSnapshotDlg.h"
+#include "VBoxToolBar.h"
+
 /* Global includes */
 #include <QDateTime>
@@ -27,10 +35,4 @@
 #include <QScrollBar>
 
-/* Local includes */
-#include <VBoxSnapshotsWgt.h>
-#include <VBoxProblemReporter.h>
-#include <VBoxSnapshotDetailsDlg.h>
-#include <VBoxTakeSnapshotDlg.h>
-#include <VBoxToolBar.h>
 #endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
 
@@ -361,17 +363,17 @@
 
     /* Setup actions */
-    mRestoreSnapshotAction->setIcon (VBoxGlobal::iconSetFull (
+    mRestoreSnapshotAction->setIcon(UIIconPool::iconSetFull(
         QSize (22, 22), QSize (16, 16),
         ":/discard_cur_state_22px.png", ":/discard_cur_state_16px.png", // TODO: Update Icons!
         ":/discard_cur_state_dis_22px.png", ":/discard_cur_state_dis_16px.png")); // TODO: Update Icons!
-    mDeleteSnapshotAction->setIcon (VBoxGlobal::iconSetFull (
+    mDeleteSnapshotAction->setIcon(UIIconPool::iconSetFull(
         QSize (22, 22), QSize (16, 16),
         ":/delete_snapshot_22px.png", ":/delete_snapshot_16px.png",
         ":/delete_snapshot_dis_22px.png", ":/delete_snapshot_dis_16px.png"));
-    mShowSnapshotDetailsAction->setIcon (VBoxGlobal::iconSetFull (
+    mShowSnapshotDetailsAction->setIcon(UIIconPool::iconSetFull(
         QSize (22, 22), QSize (16, 16),
         ":/show_snapshot_details_22px.png", ":/show_snapshot_details_16px.png",
         ":/show_snapshot_details_dis_22px.png", ":/show_snapshot_details_dis_16px.png"));
-    mTakeSnapshotAction->setIcon (VBoxGlobal::iconSetFull (
+    mTakeSnapshotAction->setIcon(UIIconPool::iconSetFull(
         QSize (22, 22), QSize (16, 16),
         ":/take_snapshot_22px.png", ":/take_snapshot_16px.png",
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxUpdateDlg.cpp	(revision 30192)
@@ -27,4 +27,5 @@
 #include "VBoxProblemReporter.h"
 #include "VBoxUpdateDlg.h"
+#include "UIIconPool.h"
 #endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
 
@@ -253,6 +254,6 @@
 
     /* Apply window icons */
-    setWindowIcon (vboxGlobal().iconSetFull (QSize (32, 32), QSize (16, 16),
-                                             ":/refresh_32px.png", ":/refresh_16px.png"));
+    setWindowIcon(UIIconPool::iconSetFull(QSize (32, 32), QSize (16, 16),
+                                          ":/refresh_32px.png", ":/refresh_16px.png"));
 
     /* Setup other connections */
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMInformationDlg.cpp	(revision 30192)
@@ -21,17 +21,19 @@
 # include "precomp.h"
 #else  /* !VBOX_WITH_PRECOMPILED_HEADERS */
+
+/* Local Includes */
+#include "UIIconPool.h"
+#include "UIMachineLogic.h"
+#include "UIMachineView.h"
+#include "UIMachineWindow.h"
+#include "UISession.h"
+#include "VBoxGlobal.h"
+#include "VBoxVMInformationDlg.h"
+
 /* Global Includes */
 #include <QTimer>
 #include <QScrollBar>
 
-/* Local Includes */
-#include <VBoxVMInformationDlg.h>
-#include <VBoxGlobal.h>
 #endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
-
-#include "UIMachineLogic.h"
-#include "UIMachineWindow.h"
-#include "UIMachineView.h"
-#include "UISession.h"
 
 VBoxVMInformationDlg::InfoDlgMap VBoxVMInformationDlg::mSelfArray = InfoDlgMap();
@@ -72,9 +74,9 @@
 #ifdef Q_WS_MAC
     /* No icon for this window on the mac, cause this would act as proxy icon which isn't necessary here. */
-    setWindowIcon (QIcon());
+    setWindowIcon(QIcon());
 #else
     /* Apply window icons */
-    setWindowIcon (vboxGlobal().iconSetFull (QSize (32, 32), QSize (16, 16),
-                                             ":/session_info_32px.png", ":/session_info_16px.png"));
+    setWindowIcon(UIIconPool::iconSetFull(QSize (32, 32), QSize (16, 16),
+                                          ":/session_info_32px.png", ":/session_info_16px.png"));
 #endif
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/VBoxVMLogViewer.cpp	(revision 30192)
@@ -21,23 +21,24 @@
 # include "precomp.h"
 #else  /* !VBOX_WITH_PRECOMPILED_HEADERS */
-#include "VBoxVMLogViewer.h"
+#include "QITabWidget.h"
+#include "UIIconPool.h"
 #include "VBoxGlobal.h"
 #include "VBoxProblemReporter.h"
 #include "VBoxSpecialControls.h"
 #include "VBoxUtils.h"
-#include "QITabWidget.h"
+#include "VBoxVMLogViewer.h"
 
 /* Qt includes */
+#include <QCheckBox>
+#include <QDateTime>
+#include <QDir>
+#include <QFileDialog>
+#include <QKeyEvent>
+#include <QLabel>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QScrollBar>
 #include <QStyle>
 #include <QTextEdit>
-#include <QLineEdit>
-#include <QLabel>
-#include <QCheckBox>
-#include <QDir>
-#include <QScrollBar>
-#include <QFileDialog>
-#include <QDateTime>
-#include <QPushButton>
-#include <QKeyEvent>
 #endif /* !VBOX_WITH_PRECOMPILED_HEADERS */
 
@@ -81,6 +82,6 @@
 
     /* Apply window icons */
-    setWindowIcon (vboxGlobal().iconSetFull (QSize (32, 32), QSize (16, 16),
-                                             ":/vm_show_logs_32px.png", ":/show_logs_16px.png"));
+    setWindowIcon(UIIconPool::iconSetFull(QSize (32, 32), QSize (16, 16),
+                                          ":/vm_show_logs_32px.png", ":/show_logs_16px.png"));
 
     /* Enable size grip without using a status bar. */
@@ -362,8 +363,8 @@
 #ifndef Q_WS_MAC
     /* No icons on the Mac */
-    mButtonsNextPrev->setIcon (0, VBoxGlobal::iconSet (":/list_movedown_16px.png",
-                                                       ":/list_movedown_disabled_16px.png"));
-    mButtonsNextPrev->setIcon (1, VBoxGlobal::iconSet (":/list_moveup_16px.png",
-                                                       ":/list_moveup_disabled_16px.png"));
+    mButtonsNextPrev->setIcon(0, UIIconPool::iconSet(":/list_movedown_16px.png",
+                                                     ":/list_movedown_disabled_16px.png"));
+    mButtonsNextPrev->setIcon(1, UIIconPool::iconSet(":/list_moveup_16px.png",
+                                                     ":/list_moveup_disabled_16px.png"));
 #endif /* !Q_WS_MAC */
     connect (mButtonsNextPrev, SIGNAL (clicked (int)), this, SLOT (find (int)));
@@ -376,5 +377,5 @@
     mWarningIcon->hide();
 
-    QIcon icon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxWarning);
+    QIcon icon = UIIconPool::defaultIcon(UIIconPool::MessageBoxWarningIcon, this);
     if (!icon.isNull())
         mWarningIcon->setPixmap (icon.pixmap (16, 16));
Index: trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonPress.cpp	(revision 30192)
@@ -19,6 +19,6 @@
 
 /* VBox includes */
-#include "VBoxGlobal.h"
 #include "QIArrowButtonPress.h"
+#include "UIIconPool.h"
 
 /* Qt includes */
@@ -49,6 +49,6 @@
 void QIArrowButtonPress::updateIcon()
 {
-    mButton->setIcon (VBoxGlobal::iconSet (mNext ?
-                      ":/arrow_right_10px.png" : ":/arrow_left_10px.png"));
+    mButton->setIcon(UIIconPool::iconSet(mNext ?
+                                         ":/arrow_right_10px.png" : ":/arrow_left_10px.png"));
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIArrowButtonSwitch.cpp	(revision 30192)
@@ -19,6 +19,6 @@
 
 /* VBox includes */
-#include "VBoxGlobal.h"
 #include "QIArrowButtonSwitch.h"
+#include "UIIconPool.h"
 
 /* Qt includes */
@@ -56,6 +56,6 @@
 void QIArrowButtonSwitch::updateIcon()
 {
-    mButton->setIcon (VBoxGlobal::iconSet (mIsExpanded ?
-                      ":/arrow_down_10px.png" : ":/arrow_right_10px.png"));
+    mButton->setIcon(UIIconPool::iconSet(mIsExpanded ?
+                                         ":/arrow_down_10px.png" : ":/arrow_right_10px.png"));
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIMessageBox.cpp	(revision 30192)
@@ -25,4 +25,5 @@
 #include "QILabel.h"
 #include "QIDialogButtonBox.h"
+#include "UIIconPool.h"
 #ifdef Q_WS_MAC
 # include "VBoxSelectorWnd.h"
@@ -322,17 +323,17 @@
     {
         case QIMessageBox::Information:
-            icon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxInformation, this);
+            icon = UIIconPool::defaultIcon(UIIconPool::MessageBoxInformationIcon, this);
             break;
         case QMessageBox::Warning:
-            icon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxWarning, this);
+            icon = UIIconPool::defaultIcon(UIIconPool::MessageBoxWarningIcon, this);
             break;
         case QIMessageBox::Critical:
-            icon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxCritical, this);
+            icon = UIIconPool::defaultIcon(UIIconPool::MessageBoxCriticalIcon, this);
             break;
         case QIMessageBox::Question:
-            icon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxQuestion, this);
+            icon = UIIconPool::defaultIcon(UIIconPool::MessageBoxQuestionIcon, this);
             break;
         case QIMessageBox::GuruMeditation:
-            icon = QIcon (":/meditation_32px.png");
+            icon = QIcon(":/meditation_32px.png");
             break;
         default:
Index: trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp	(revision 30192)
+++ trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.cpp	(revision 30192)
@@ -0,0 +1,182 @@
+/* $Id$ */
+/** @file
+ *
+ * VBox frontends: Qt GUI ("VirtualBox"):
+ * UIIconPool class implementation
+ */
+
+/*
+ * Copyright (C) 2010 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.
+ */
+
+/* Local includes */
+#include "UIIconPool.h"
+
+/* Global includes */
+#include <iprt/assert.h>
+
+#include <QApplication>
+#include <QWidget>
+
+/* static */
+QIcon UIIconPool::iconSet(const QPixmap &normal,
+                          const QPixmap &disabled /* = QPixmap() */,
+                          const QPixmap &active /* = QPixmap() */)
+{
+    QIcon iconSet;
+
+    Assert(!normal.isNull());
+    iconSet.addPixmap(normal, QIcon::Normal);
+
+    if (!disabled.isNull())
+        iconSet.addPixmap(disabled, QIcon::Disabled);
+
+    if (!active.isNull())
+        iconSet.addPixmap(active, QIcon::Active);
+
+    return iconSet;
+}
+
+/* static */
+QIcon UIIconPool::iconSet(const QString &strNormal,
+                          const QString &strDisabled /* = QString() */,
+                          const QString &strActive /* = QString() */)
+{
+    QIcon iconSet;
+
+    Assert(!strNormal.isEmpty());
+    iconSet.addFile(strNormal, QSize(),
+                    QIcon::Normal);
+    if (!strDisabled.isEmpty())
+        iconSet.addFile(strDisabled, QSize(),
+                        QIcon::Disabled);
+    if (!strActive.isEmpty())
+        iconSet.addFile(strActive, QSize(),
+                        QIcon::Active);
+    return iconSet;
+}
+
+/* static */
+QIcon UIIconPool::iconSetOnOff(const QString &strNormal, const QString strNormalOff,
+                               const QString &strDisabled /* = QString() */,
+                               const QString &strDisabledOff /* = QString() */,
+                               const QString &strActive /* = QString() */,
+                               const QString &strActiveOff /* = QString() */)
+{
+    QIcon iconSet;
+
+    Assert(!strNormal.isEmpty());
+    iconSet.addFile(strNormal, QSize(), QIcon::Normal, QIcon::On);
+    if (!strNormalOff.isEmpty())
+        iconSet.addFile(strNormalOff, QSize(), QIcon::Normal, QIcon::Off);
+
+    if (!strDisabled.isEmpty())
+        iconSet.addFile(strDisabled, QSize(), QIcon::Disabled, QIcon::On);
+    if (!strDisabledOff.isEmpty())
+        iconSet.addFile(strDisabledOff, QSize(), QIcon::Disabled, QIcon::Off);
+
+    if (!strActive.isEmpty())
+        iconSet.addFile(strActive, QSize(), QIcon::Active, QIcon::On);
+    if (!strActiveOff.isEmpty())
+        iconSet.addFile(strActive, QSize(), QIcon::Active, QIcon::Off);
+
+    return iconSet;
+}
+
+/* static */
+QIcon UIIconPool::iconSetFull(const QSize &normalSize, const QSize &smallSize,
+                              const QString &strNormal, const QString &strSmallNormal,
+                              const QString &strDisabled /* = QString() */,
+                              const QString &strSmallDisabled /* = QString() */,
+                              const QString &strActive /* = QString() */,
+                              const QString &strSmallActive /* = QString() */)
+{
+    QIcon iconSet;
+
+    Assert(!strNormal.isEmpty());
+    Assert(!strSmallNormal.isEmpty());
+    iconSet.addFile(strNormal, normalSize, QIcon::Normal);
+    iconSet.addFile(strSmallNormal, smallSize, QIcon::Normal);
+
+    if (!strSmallDisabled.isEmpty())
+    {
+        iconSet.addFile(strDisabled, normalSize, QIcon::Disabled);
+        iconSet.addFile(strSmallDisabled, smallSize, QIcon::Disabled);
+    }
+
+    if (!strSmallActive.isEmpty())
+    {
+        iconSet.addFile(strActive, normalSize, QIcon::Active);
+        iconSet.addFile(strSmallActive, smallSize, QIcon::Active);
+    }
+
+    return iconSet;
+}
+
+/* static */
+QIcon UIIconPool::defaultIcon(UIDefaultIcon def, const QWidget *pWidget /* = 0 */)
+{
+    QIcon icon;
+    QStyle *pStyle = pWidget ? pWidget->style() : QApplication::style();
+    switch (def)
+    {
+        case MessageBoxInformationIcon:
+        {
+            icon = pStyle->standardIcon(QStyle::SP_MessageBoxInformation, 0, pWidget);
+            break;
+        }
+        case MessageBoxQuestionIcon:
+        {
+            icon = pStyle->standardIcon(QStyle::SP_MessageBoxQuestion, 0, pWidget);
+            break;
+        }
+        case MessageBoxWarningIcon:
+        {
+#ifdef Q_WS_MAC
+            /* At least in Qt 4.3.4/4.4 RC1 SP_MessageBoxWarning is the application
+             * icon. So change this to the critical icon. (Maybe this would be
+             * fixed in a later Qt version) */
+            icon = pStyle->standardIcon(QStyle::SP_MessageBoxCritical, 0, pWidget);
+#else /* Q_WS_MAC */
+            icon = pStyle->standardIcon(QStyle::SP_MessageBoxWarning, 0, pWidget);
+#endif /* !Q_WS_MAC */
+            break;
+        }
+        case MessageBoxCriticalIcon:
+        {
+            icon = pStyle->standardIcon(QStyle::SP_MessageBoxCritical, 0, pWidget);
+            break;
+        }
+        case ArrowBackIcon:
+        {
+            icon = pStyle->standardIcon(QStyle::SP_ArrowBack, 0, pWidget);
+            if (icon.isNull())
+                icon = iconSet(":/list_moveup_16px.png",
+                               ":/list_moveup_disabled_16px.png");
+            break;
+        }
+        case ArrowForwardIcon:
+        {
+            icon = pStyle->standardIcon(QStyle::SP_ArrowForward, 0, pWidget);
+            if (icon.isNull())
+                icon = iconSet(":/list_movedown_16px.png",
+                               ":/list_movedown_disabled_16px.png");
+            break;
+        }
+        default:
+        {
+            AssertMsgFailed(("Unknown default icon type!"));
+            break;
+        }
+    }
+    return icon;
+}
+
Index: trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.h	(revision 30192)
+++ trunk/src/VBox/Frontends/VirtualBox/src/globals/UIIconPool.h	(revision 30192)
@@ -0,0 +1,68 @@
+/** @file
+ *
+ * VBox frontends: Qt GUI ("VirtualBox"):
+ * UIIconPool class declarations
+ */
+
+/*
+ * Copyright (C) 2010 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 __UIIconPool_h__
+#define __UIIconPool_h__
+
+/* Global includes */
+#include <QIcon>
+#include <QStyle>
+
+class UIIconPool
+{
+public:
+
+    enum UIDefaultIcon
+    {
+        MessageBoxInformationIcon,
+        MessageBoxQuestionIcon,
+        MessageBoxWarningIcon,
+        MessageBoxCriticalIcon,
+        ArrowBackIcon,
+        ArrowForwardIcon
+    };
+
+    static QIcon iconSet(const QPixmap &normal,
+                         const QPixmap &disabled = QPixmap(),
+                         const QPixmap &active = QPixmap());
+    static QIcon iconSet(const QString &strNormal,
+                         const QString &strDisabled = QString(),
+                         const QString &strActive = QString());
+    static QIcon iconSetOnOff(const QString &strNormal, const QString strNormalOff,
+                              const QString &strDisabled = QString(),
+                              const QString &strDisabledOff = QString(),
+                              const QString &strActive = QString(),
+                              const QString &strActiveOff = QString());
+    static QIcon iconSetFull(const QSize &normalSize, const QSize &smallSize,
+                             const QString &strNormal, const QString &strSmallNormal,
+                             const QString &strDisabled = QString(),
+                             const QString &strSmallDisabled = QString(),
+                             const QString &strActive = QString(),
+                             const QString &strSmallActive = QString());
+
+    static QIcon defaultIcon(UIDefaultIcon def, const QWidget *pWidget = 0);
+
+private:
+
+    UIIconPool() {};
+    UIIconPool(const UIIconPool& /* pool */) {};
+    ~UIIconPool() {};
+};
+
+#endif /* !__UIIconPool_h__ */
+
Index: trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 30192)
@@ -28,4 +28,5 @@
 #include "QIMessageBox.h"
 #include "QIDialogButtonBox.h"
+#include "UIIconPool.h"
 
 #include "UIMachine.h"
@@ -3157,8 +3158,8 @@
     mUserDefinedPortName = tr ("User-defined", "serial port");
 
-    mWarningIcon = standardIcon (QStyle::SP_MessageBoxWarning, 0).pixmap (16, 16);
+    mWarningIcon = UIIconPool::defaultIcon(UIIconPool::MessageBoxWarningIcon).pixmap (16, 16);
     Assert (!mWarningIcon.isNull());
 
-    mErrorIcon = standardIcon (QStyle::SP_MessageBoxCritical, 0).pixmap (16, 16);
+    mErrorIcon = UIIconPool::defaultIcon(UIIconPool::MessageBoxCriticalIcon).pixmap (16, 16);
     Assert (!mErrorIcon.isNull());
 
@@ -3421,113 +3422,4 @@
                                  .arg (suffix);
     return manual;
-}
-
-QIcon VBoxGlobal::iconSet (const QPixmap &aNormal,
-                           const QPixmap &aDisabled,
-                           const QPixmap &aActive)
-{
-    QIcon iconSet;
-
-    Assert (aNormal);
-        iconSet.addPixmap (aNormal, QIcon::Normal);
-
-    if (!aDisabled.isNull())
-        iconSet.addPixmap (aDisabled, QIcon::Disabled);
-
-    if (!aActive.isNull())
-        iconSet.addPixmap (aActive, QIcon::Active);
-
-    return iconSet;
-}
-
-/* static */
-QIcon VBoxGlobal::iconSet (const char *aNormal,
-                           const char *aDisabled /* = NULL */,
-                           const char *aActive /* = NULL */)
-{
-    QIcon iconSet;
-
-    Assert (aNormal != NULL);
-    iconSet.addFile (aNormal, QSize(),
-                     QIcon::Normal);
-    if (aDisabled != NULL)
-        iconSet.addFile (aDisabled, QSize(),
-                         QIcon::Disabled);
-    if (aActive != NULL)
-        iconSet.addFile (aActive, QSize(),
-                         QIcon::Active);
-    return iconSet;
-}
-
-/* static */
-QIcon VBoxGlobal::iconSetOnOff (const char *aNormal, const char *aNormalOff,
-                                const char *aDisabled /* = NULL */,
-                                const char *aDisabledOff /* = NULL */,
-                                const char *aActive /* = NULL */,
-                                const char *aActiveOff /* = NULL */)
-{
-    QIcon iconSet;
-
-    Assert (aNormal != NULL);
-    iconSet.addFile (aNormal, QSize(), QIcon::Normal, QIcon::On);
-    if (aNormalOff != NULL)
-        iconSet.addFile (aNormalOff, QSize(), QIcon::Normal, QIcon::Off);
-
-    if (aDisabled != NULL)
-        iconSet.addFile (aDisabled, QSize(), QIcon::Disabled, QIcon::On);
-    if (aDisabledOff != NULL)
-        iconSet.addFile (aDisabledOff, QSize(), QIcon::Disabled, QIcon::Off);
-
-    if (aActive != NULL)
-        iconSet.addFile (aActive, QSize(), QIcon::Active, QIcon::On);
-    if (aActiveOff != NULL)
-        iconSet.addFile (aActive, QSize(), QIcon::Active, QIcon::Off);
-
-    return iconSet;
-}
-
-/* static */
-QIcon VBoxGlobal::iconSetFull (const QSize &aNormalSize, const QSize &aSmallSize,
-                               const char *aNormal, const char *aSmallNormal,
-                               const char *aDisabled /* = NULL */,
-                               const char *aSmallDisabled /* = NULL */,
-                               const char *aActive /* = NULL */,
-                               const char *aSmallActive /* = NULL */)
-{
-    QIcon iconSet;
-
-    Assert (aNormal != NULL);
-    Assert (aSmallNormal != NULL);
-    iconSet.addFile (aNormal, aNormalSize, QIcon::Normal);
-    iconSet.addFile (aSmallNormal, aSmallSize, QIcon::Normal);
-
-    if (aSmallDisabled != NULL)
-    {
-        iconSet.addFile (aDisabled, aNormalSize, QIcon::Disabled);
-        iconSet.addFile (aSmallDisabled, aSmallSize, QIcon::Disabled);
-    }
-
-    if (aSmallActive != NULL)
-    {
-        iconSet.addFile (aActive, aNormalSize, QIcon::Active);
-        iconSet.addFile (aSmallActive, aSmallSize, QIcon::Active);
-    }
-
-    return iconSet;
-}
-
-QIcon VBoxGlobal::standardIcon (QStyle::StandardPixmap aStandard, QWidget *aWidget /* = NULL */)
-{
-    QStyle *style = aWidget ? aWidget->style(): QApplication::style();
-    if (!style)
-        return QIcon();
-#ifdef Q_WS_MAC
-    /* At least in Qt 4.3.4/4.4 RC1 SP_MessageBoxWarning is the application
-     * icon. So change this to the critical icon. (Maybe this would be
-     * fixed in a later Qt version) */
-    if (aStandard == QStyle::SP_MessageBoxWarning)
-        return style->standardIcon (QStyle::SP_MessageBoxCritical, 0, aWidget);
-#endif /* Q_WS_MAC */
-    return style->standardIcon (aStandard, 0, aWidget);
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h	(revision 30192)
@@ -743,24 +743,4 @@
     QString helpFile() const;
 
-    static QIcon iconSet (const QPixmap &aNormal,
-                          const QPixmap &aDisabled = QPixmap(),
-                          const QPixmap &aActive = QPixmap());
-    static QIcon iconSet (const char *aNormal,
-                          const char *aDisabled = NULL,
-                          const char *aActive = NULL);
-    static QIcon iconSetOnOff (const char *aNormal, const char *aNormalOff,
-                               const char *aDisabled = NULL,
-                               const char *aDisabledOff = NULL,
-                               const char *aActive = NULL,
-                               const char *aActiveOff = NULL);
-    static QIcon iconSetFull (const QSize &aNormalSize, const QSize &aSmallSize,
-                              const char *aNormal, const char *aSmallNormal,
-                              const char *aDisabled = NULL,
-                              const char *aSmallDisabled = NULL,
-                              const char *aActive = NULL,
-                              const char *aSmallActive = NULL);
-
-    static QIcon standardIcon (QStyle::StandardPixmap aStandard, QWidget *aWidget = NULL);
-
     static void setTextLabel (QToolButton *aToolButton, const QString &aTextLabel);
 
Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionsPool.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionsPool.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIActionsPool.cpp	(revision 30192)
@@ -18,12 +18,13 @@
  */
 
+/* Local includes */
+#include "UIActionsPool.h"
+#include "UIIconPool.h"
+#include "VBoxGlobal.h"
+
 /* Global includes */
-#include <QtGlobal>
 #include <QHelpEvent>
 #include <QToolTip>
-
-/* Local includes */
-#include "UIActionsPool.h"
-#include "VBoxGlobal.h"
+#include <QtGlobal>
 
 /* Extended QMenu class used in UIActions */
@@ -109,5 +110,6 @@
     {
         if (!strIcon.isNull())
-            setIcon(VBoxGlobal::iconSet(strIcon.toLatin1().data(), strIconDis.toLatin1().data()));
+            setIcon(UIIconPool::iconSet(strIcon.toLatin1().data(),
+                                        strIconDis.toLatin1().data()));
     }
 };
@@ -124,5 +126,6 @@
     {
         if (!strIcon.isNull())
-            setIcon(VBoxGlobal::iconSet(strIcon.toLatin1().data(), strIconDis.toLatin1().data()));
+            setIcon(UIIconPool::iconSet(strIcon.toLatin1().data(),
+                                        strIconDis.toLatin1().data()));
         init();
     }
@@ -133,5 +136,5 @@
         : UIAction(pParent, UIActionType_Toggle)
     {
-        setIcon(VBoxGlobal::iconSetOnOff(strIconOn.toLatin1().data(), strIconOff.toLatin1().data(),
+        setIcon(UIIconPool::iconSetOnOff(strIconOn.toLatin1().data(), strIconOff.toLatin1().data(),
                                          strIconOnDis.toLatin1().data(), strIconOffDis.toLatin1().data()));
         init();
@@ -165,5 +168,6 @@
     {
         if (!strIcon.isNull())
-            setIcon(VBoxGlobal::iconSet(strIcon, strIconDis));
+            setIcon(UIIconPool::iconSet(strIcon,
+                                        strIconDis));
         setMenu(new QIMenu);
     }
Index: trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineLogic.cpp	(revision 30192)
@@ -18,46 +18,44 @@
  */
 
+/* Local includes */
+#include "COMDefs.h"
+#include "QIFileDialog.h"
+#include "UIActionsPool.h"
+#include "UIDownloaderAdditions.h"
+#include "UIIconPool.h"
+#include "UIMachineLogic.h"
+#include "UIMachineLogicFullscreen.h"
+#include "UIMachineLogicNormal.h"
+#include "UIMachineLogicSeamless.h"
+#include "UIMachineView.h"
+#include "UIMachineWindow.h"
+#include "UISession.h"
+#include "VBoxMediaManagerDlg.h"
+#include "VBoxProblemReporter.h"
+#include "VBoxTakeSnapshotDlg.h"
+#include "VBoxVMInformationDlg.h"
+#include "VBoxVMSettingsNetwork.h"
+#include "VBoxVMSettingsSF.h"
+#ifdef Q_WS_MAC
+# include "DockIconPreview.h"
+#endif /* Q_WS_MAC */
+
 /* Global includes */
+#include <iprt/path.h>
+#include <VBox/VMMDev.h>
+
+#ifdef VBOX_WITH_DEBUGGER_GUI
+# include <iprt/ldr.h>
+#endif /* VBOX_WITH_DEBUGGER_GUI */
+
+#ifdef Q_WS_X11
+# include <XKeyboard.h>
+# include <QX11Info>
+#endif /* Q_WS_X11 */
+
 #include <QDir>
 #include <QFileInfo>
 #include <QDesktopWidget>
 #include <QTimer>
-
-/* Local includes */
-#include "COMDefs.h"
-#include "VBoxProblemReporter.h"
-
-#include "VBoxMediaManagerDlg.h"
-#include "VBoxTakeSnapshotDlg.h"
-#include "VBoxVMInformationDlg.h"
-#include "VBoxVMSettingsNetwork.h"
-#include "VBoxVMSettingsSF.h"
-#include "UIDownloaderAdditions.h"
-#ifdef Q_WS_MAC
-# include "DockIconPreview.h"
-#endif /* Q_WS_MAC */
-
-#include "QIFileDialog.h"
-
-#include "UISession.h"
-#include "UIActionsPool.h"
-#include "UIMachineLogic.h"
-#include "UIMachineLogicNormal.h"
-#include "UIMachineLogicFullscreen.h"
-#include "UIMachineLogicSeamless.h"
-#include "UIMachineWindow.h"
-#include "UIMachineView.h"
-
-#include <iprt/path.h>
-#include <VBox/VMMDev.h>
-
-#ifdef VBOX_WITH_DEBUGGER_GUI
-# include <iprt/ldr.h>
-#endif /* VBOX_WITH_DEBUGGER_GUI */
-
-#ifdef Q_WS_X11
-# include <XKeyboard.h>
-# include <QX11Info>
-#endif /* Q_WS_X11 */
 
 struct MediumTarget
@@ -1196,5 +1194,5 @@
                     callVMMAction->setText(QApplication::translate("UIMachineLogic", "More CD/DVD Images..."));
                     unmountMediumAction->setText(QApplication::translate("UIMachineLogic", "Unmount CD/DVD Device"));
-                    unmountMediumAction->setIcon(VBoxGlobal::iconSet(":/cd_unmount_16px.png",
+                    unmountMediumAction->setIcon(UIIconPool::iconSet(":/cd_unmount_16px.png",
                                                                      ":/cd_unmount_dis_16px.png"));
                     break;
@@ -1202,5 +1200,5 @@
                     callVMMAction->setText(QApplication::translate("UIMachineLogic", "More Floppy Images..."));
                     unmountMediumAction->setText(QApplication::translate("UIMachineLogic", "Unmount Floppy Device"));
-                    unmountMediumAction->setIcon(VBoxGlobal::iconSet(":/fd_unmount_16px.png",
+                    unmountMediumAction->setIcon(UIIconPool::iconSet(":/fd_unmount_16px.png",
                                                                      ":/fd_unmount_dis_16px.png"));
                     break;
@@ -1230,5 +1228,5 @@
                 break;
         }
-        pEmptyMenuAction->setIcon(VBoxGlobal::iconSet(":/delete_16px.png", ":/delete_dis_16px.png"));
+        pEmptyMenuAction->setIcon(UIIconPool::iconSet(":/delete_16px.png", ":/delete_dis_16px.png"));
         pMenu->addAction(pEmptyMenuAction);
     }
@@ -1332,5 +1330,5 @@
         pEmptyMenuAction->setEnabled(false);
         pEmptyMenuAction->setText(QApplication::translate("UIMachineLogic", "No USB Devices Connected"));
-        pEmptyMenuAction->setIcon(VBoxGlobal::iconSet(":/delete_16px.png", ":/delete_dis_16px.png"));
+        pEmptyMenuAction->setIcon(UIIconPool::iconSet(":/delete_16px.png", ":/delete_dis_16px.png"));
         pEmptyMenuAction->setToolTip(QApplication::translate("UIMachineLogic", "No supported devices connected to the host PC"));
     }
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsDialog.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsDialog.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/VBoxSettingsDialog.cpp	(revision 30192)
@@ -25,4 +25,5 @@
 #include "VBoxSettingsPage.h"
 #include "VBoxToolBar.h"
+#include "UIIconPool.h"
 
 #ifdef Q_WS_MAC
@@ -104,6 +105,6 @@
     /* Setup error & warning stuff */
     mButtonBox->addExtraWidget (mIconLabel);
-    mErrorIcon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxCritical, this).pixmap (16, 16);
-    mWarnIcon = vboxGlobal().standardIcon (QStyle::SP_MessageBoxWarning, this).pixmap (16, 16);
+    mErrorIcon = UIIconPool::defaultIcon(UIIconPool::MessageBoxCriticalIcon, this).pixmap (16, 16);
+    mWarnIcon = UIIconPool::defaultIcon(UIIconPool::MessageBoxWarningIcon, this).pixmap (16, 16);
 
     /* Set the default button */
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/global/VBoxGLSettingsNetwork.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/global/VBoxGLSettingsNetwork.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/global/VBoxGLSettingsNetwork.cpp	(revision 30192)
@@ -18,8 +18,10 @@
  */
 
+/* Local includes */
 #include "QIWidgetValidator.h"
-#include "VBoxGlobal.h"
+#include "UIIconPool.h"
 #include "VBoxGLSettingsNetwork.h"
 #include "VBoxGLSettingsNetworkDetails.h"
+#include "VBoxGlobal.h"
 #include "VBoxProblemReporter.h"
 
@@ -278,10 +280,10 @@
                                   << QKeySequence ("F2"));
 
-    mAddInterface->setIcon (VBoxGlobal::iconSet (":/add_host_iface_16px.png",
-                                                 ":/add_host_iface_disabled_16px.png"));
-    mRemInterface->setIcon (VBoxGlobal::iconSet (":/remove_host_iface_16px.png",
-                                                 ":/remove_host_iface_disabled_16px.png"));
-    mEditInterface->setIcon (VBoxGlobal::iconSet (":/guesttools_16px.png",
-                                                  ":/guesttools_disabled_16px.png"));
+    mAddInterface->setIcon(UIIconPool::iconSet(":/add_host_iface_16px.png",
+                                               ":/add_host_iface_disabled_16px.png"));
+    mRemInterface->setIcon(UIIconPool::iconSet(":/remove_host_iface_16px.png",
+                                               ":/remove_host_iface_disabled_16px.png"));
+    mEditInterface->setIcon(UIIconPool::iconSet(":/guesttools_16px.png",
+                                                ":/guesttools_disabled_16px.png"));
 
     mTbActions->setUsesTextLabel (false);
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsHD.cpp	(revision 30192)
@@ -18,4 +18,14 @@
  */
 
+/* Local Includes */
+#include "QIWidgetValidator.h"
+#include "UIIconPool.h"
+#include "UINewHDWzd.h"
+#include "VBoxGlobal.h"
+#include "VBoxMediaManagerDlg.h"
+#include "VBoxProblemReporter.h"
+#include "VBoxToolBar.h"
+#include "VBoxVMSettingsHD.h"
+
 /* Global Includes */
 #include <QHeaderView>
@@ -26,13 +36,4 @@
 #include <QStylePainter>
 #include <QTimer>
-
-/* Local Includes */
-#include "VBoxVMSettingsHD.h"
-#include "VBoxGlobal.h"
-#include "VBoxProblemReporter.h"
-#include "QIWidgetValidator.h"
-#include "VBoxToolBar.h"
-#include "VBoxMediaManagerDlg.h"
-#include "UINewHDWzd.h"
 
 /* String Tags */
@@ -1642,51 +1643,51 @@
     /* Controller Actions */
     mAddCtrAction = new QAction (this);
-    mAddCtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::ControllerAddEn),
-                                                 PixmapPool::pool()->pixmap (PixmapPool::ControllerAddDis)));
+    mAddCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::ControllerAddEn),
+                                               PixmapPool::pool()->pixmap (PixmapPool::ControllerAddDis)));
 
     mAddIDECtrAction = new QAction (this);
-    mAddIDECtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddEn),
-                                                    PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddDis)));
+    mAddIDECtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddEn),
+                                                  PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddDis)));
 
     mAddSATACtrAction = new QAction (this);
-    mAddSATACtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
-                                                     PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
+    mAddSATACtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
+                                                   PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
 
     mAddSCSICtrAction = new QAction (this);
-    mAddSCSICtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddEn),
-                                                     PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddDis)));
+    mAddSCSICtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddEn),
+                                                   PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddDis)));
 
     mAddFloppyCtrAction = new QAction (this);
-    mAddFloppyCtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddEn),
-                                                       PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddDis)));
+    mAddFloppyCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddEn),
+                                                     PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddDis)));
 
     mAddSASCtrAction = new QAction (this);
-    mAddSASCtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
-                                                    PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
+    mAddSASCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
+                                                  PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
 
     mDelCtrAction = new QAction (this);
-    mDelCtrAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::ControllerDelEn),
-                                                 PixmapPool::pool()->pixmap (PixmapPool::ControllerDelDis)));
+    mDelCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::ControllerDelEn),
+                                               PixmapPool::pool()->pixmap (PixmapPool::ControllerDelDis)));
 
     /* Attachment Actions */
     mAddAttAction = new QAction (this);
-    mAddAttAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddEn),
-                                                 PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddDis)));
+    mAddAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddEn),
+                                               PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddDis)));
 
     mAddHDAttAction = new QAction (this);
-    mAddHDAttAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddEn),
-                                                   PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddDis)));
+    mAddHDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddEn),
+                                                 PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddDis)));
 
     mAddCDAttAction = new QAction (this);
-    mAddCDAttAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddEn),
-                                                   PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddDis)));
+    mAddCDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddEn),
+                                                 PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddDis)));
 
     mAddFDAttAction = new QAction (this);
-    mAddFDAttAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddEn),
-                                                   PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddDis)));
+    mAddFDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddEn),
+                                                 PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddDis)));
 
     mDelAttAction = new QAction (this);
-    mDelAttAction->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelEn),
-                                                 PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelDis)));
+    mDelAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelEn),
+                                               PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelDis)));
 
     /* Storage Model/View */
@@ -1718,6 +1719,6 @@
 
     /* Vmm Button */
-    mTbVmm->setIcon (VBoxGlobal::iconSet (PixmapPool::pool()->pixmap (PixmapPool::VMMEn),
-                                          PixmapPool::pool()->pixmap (PixmapPool::VMMDis)));
+    mTbVmm->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::VMMEn),
+                                        PixmapPool::pool()->pixmap (PixmapPool::VMMDis)));
 
     /* Info Pane initialization */
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSF.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSF.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSF.cpp	(revision 30192)
@@ -18,14 +18,15 @@
  */
 
+/* Local includes */
+#include "UIIconPool.h"
+#include "VBoxGlobal.h"
+#include "VBoxProblemReporter.h"
+#include "VBoxUtils.h"
+#include "VBoxVMSettingsSF.h"
+#include "VBoxVMSettingsSFDetails.h"
+
 /* Global includes */
 #include <QHeaderView>
 #include <QTimer>
-
-/* Local includes */
-#include "VBoxVMSettingsSF.h"
-#include "VBoxVMSettingsSFDetails.h"
-#include "VBoxGlobal.h"
-#include "VBoxProblemReporter.h"
-#include "VBoxUtils.h"
 
 class SFTreeViewItem : public QTreeWidgetItem
@@ -181,10 +182,10 @@
     mDelAction->setShortcut (QKeySequence ("Del"));
 
-    mNewAction->setIcon (VBoxGlobal::iconSet (":/add_shared_folder_16px.png",
-                                              ":/add_shared_folder_disabled_16px.png"));
-    mEdtAction->setIcon (VBoxGlobal::iconSet (":/edit_shared_folder_16px.png",
-                                              ":/edit_shared_folder_disabled_16px.png"));
-    mDelAction->setIcon (VBoxGlobal::iconSet (":/revome_shared_folder_16px.png",
-                                              ":/revome_shared_folder_disabled_16px.png"));
+    mNewAction->setIcon(UIIconPool::iconSet(":/add_shared_folder_16px.png",
+                                            ":/add_shared_folder_disabled_16px.png"));
+    mEdtAction->setIcon(UIIconPool::iconSet(":/edit_shared_folder_16px.png",
+                                            ":/edit_shared_folder_disabled_16px.png"));
+    mDelAction->setIcon(UIIconPool::iconSet(":/revome_shared_folder_16px.png",
+                                            ":/revome_shared_folder_disabled_16px.png"));
 
     /* Prepare toolbar */
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSystem.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSystem.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsSystem.cpp	(revision 30192)
@@ -18,12 +18,13 @@
  */
 
+/* Local includes */
+#include "QIWidgetValidator.h"
+#include "UIIconPool.h"
+#include "VBoxGlobal.h"
+#include "VBoxVMSettingsSystem.h"
+
 /* Global includes */
+#include <iprt/cdefs.h>
 #include <QHeaderView>
-
-/* Local includes */
-#include "VBoxVMSettingsSystem.h"
-#include "VBoxGlobal.h"
-#include "QIWidgetValidator.h"
-#include <iprt/cdefs.h>
 
 #define ITEM_TYPE_ROLE Qt::UserRole + 1
@@ -71,8 +72,8 @@
 
     /* Setup iconsets */
-    mTbBootItemUp->setIcon (VBoxGlobal::iconSet (":/list_moveup_16px.png",
-                                                 ":/list_moveup_disabled_16px.png"));
-    mTbBootItemDown->setIcon (VBoxGlobal::iconSet (":/list_movedown_16px.png",
-                                                   ":/list_movedown_disabled_16px.png"));
+    mTbBootItemUp->setIcon(UIIconPool::iconSet(":/list_moveup_16px.png",
+                                               ":/list_moveup_disabled_16px.png"));
+    mTbBootItemDown->setIcon(UIIconPool::iconSet(":/list_movedown_16px.png",
+                                                 ":/list_movedown_disabled_16px.png"));
 
 #ifdef Q_WS_MAC
Index: trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsUSB.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsUSB.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/settings/vm/VBoxVMSettingsUSB.cpp	(revision 30192)
@@ -18,10 +18,13 @@
  */
 
+/* Local includes */
+#include "QIWidgetValidator.h"
+#include "UIIconPool.h"
+#include "VBoxGlobal.h"
+#include "VBoxToolBar.h"
 #include "VBoxVMSettingsUSB.h"
 #include "VBoxVMSettingsUSBFilterDetails.h"
-#include "QIWidgetValidator.h"
-#include "VBoxToolBar.h"
-#include "VBoxGlobal.h"
-
+
+/* Global includes */
 #include <QHeaderView>
 
@@ -54,16 +57,16 @@
     mMdnAction->setShortcut (QKeySequence ("Ctrl+Down"));
 
-    mNewAction->setIcon (VBoxGlobal::iconSet (":/usb_new_16px.png",
-                                              ":/usb_new_disabled_16px.png"));
-    mAddAction->setIcon (VBoxGlobal::iconSet (":/usb_add_16px.png",
-                                              ":/usb_add_disabled_16px.png"));
-    mEdtAction->setIcon (VBoxGlobal::iconSet (":/usb_filter_edit_16px.png",
-                                              ":/usb_filter_edit_disabled_16px.png"));
-    mDelAction->setIcon (VBoxGlobal::iconSet (":/usb_remove_16px.png",
-                                              ":/usb_remove_disabled_16px.png"));
-    mMupAction->setIcon (VBoxGlobal::iconSet (":/usb_moveup_16px.png",
-                                              ":/usb_moveup_disabled_16px.png"));
-    mMdnAction->setIcon (VBoxGlobal::iconSet (":/usb_movedown_16px.png",
-                                              ":/usb_movedown_disabled_16px.png"));
+    mNewAction->setIcon(UIIconPool::iconSet(":/usb_new_16px.png",
+                                            ":/usb_new_disabled_16px.png"));
+    mAddAction->setIcon(UIIconPool::iconSet(":/usb_add_16px.png",
+                                            ":/usb_add_disabled_16px.png"));
+    mEdtAction->setIcon(UIIconPool::iconSet(":/usb_filter_edit_16px.png",
+                                            ":/usb_filter_edit_disabled_16px.png"));
+    mDelAction->setIcon(UIIconPool::iconSet(":/usb_remove_16px.png",
+                                            ":/usb_remove_disabled_16px.png"));
+    mMupAction->setIcon(UIIconPool::iconSet(":/usb_moveup_16px.png",
+                                            ":/usb_moveup_disabled_16px.png"));
+    mMdnAction->setIcon(UIIconPool::iconSet(":/usb_movedown_16px.png",
+                                            ":/usb_movedown_disabled_16px.png"));
 
     /* Prepare menu and toolbar */
Index: trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxFilePathSelectorWidget.cpp	(revision 30192)
@@ -18,12 +18,13 @@
  */
 
-/* VBox includes */
-#include "VBoxFilePathSelectorWidget.h"
-#include "VBoxGlobal.h"
+/* Local includes */
 #include "QIFileDialog.h"
 #include "QILabel.h"
 #include "QILineEdit.h"
-
-/* Qt includes */
+#include "UIIconPool.h"
+#include "VBoxFilePathSelectorWidget.h"
+
+/* Global includes */
+#include <iprt/assert.h>
 #include <QAction>
 #include <QApplication>
@@ -32,4 +33,5 @@
 #include <QFileIconProvider>
 #include <QFocusEvent>
+#include <QHBoxLayout>
 #include <QLineEdit>
 #include <QPushButton>
@@ -79,6 +81,6 @@
 
     /* Attaching known icons */
-    setItemIcon (SelectId, VBoxGlobal::iconSet (":/select_file_16px.png"));
-    setItemIcon (ResetId, VBoxGlobal::iconSet (":/eraser_16px.png"));
+    setItemIcon(SelectId, UIIconPool::iconSet(":/select_file_16px.png"));
+    setItemIcon(ResetId, UIIconPool::iconSet(":/eraser_16px.png"));
 
     /* Setup context menu */
@@ -156,5 +158,5 @@
     {
         insertItem (ResetId, "");
-        setItemIcon (ResetId, VBoxGlobal::iconSet (":/eraser_16px.png"));
+        setItemIcon(ResetId, UIIconPool::iconSet(":/eraser_16px.png"));
     }
     retranslateUi();
Index: trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxMiniToolBar.cpp	(revision 30192)
@@ -18,4 +18,9 @@
  */
 
+/* Local includes */
+#include "UIIconPool.h"
+#include "VBoxGlobal.h"
+#include "VBoxMiniToolBar.h"
+
 /* Global includes */
 #include <QCursor>
@@ -23,6 +28,6 @@
 #include <QLabel>
 #include <QMenu>
+#include <QPaintEvent>
 #include <QPainter>
-#include <QPaintEvent>
 #include <QPolygon>
 #include <QRect>
@@ -30,8 +35,4 @@
 #include <QTimer>
 #include <QToolButton>
-
-/* Local includes */
-#include "VBoxMiniToolBar.h"
-#include "VBoxGlobal.h"
 
 /* Mini-toolbar constructor */
@@ -70,5 +71,5 @@
     /* Add pushpin: */
     m_pAutoHideAction = new QAction(this);
-    m_pAutoHideAction->setIcon(VBoxGlobal::iconSet(":/pin_16px.png"));
+    m_pAutoHideAction->setIcon(UIIconPool::iconSet(":/pin_16px.png"));
     m_pAutoHideAction->setToolTip(tr("Always show the toolbar"));
     m_pAutoHideAction->setCheckable(true);
@@ -97,5 +98,5 @@
     /* Exit action: */
     m_pRestoreAction = new QAction(this);
-    m_pRestoreAction->setIcon(VBoxGlobal::iconSet(":/restore_16px.png"));
+    m_pRestoreAction->setIcon(UIIconPool::iconSet(":/restore_16px.png"));
     m_pRestoreAction->setToolTip(tr("Exit Full Screen or Seamless Mode"));
     connect(m_pRestoreAction, SIGNAL(triggered()), this, SIGNAL(exitAction()));
@@ -104,5 +105,5 @@
     /* Close action: */
     m_pCloseAction = new QAction(this);
-    m_pCloseAction->setIcon(VBoxGlobal::iconSet(":/close_16px.png"));
+    m_pCloseAction->setIcon(UIIconPool::iconSet(":/close_16px.png"));
     m_pCloseAction->setToolTip(tr("Close VM"));
     connect(m_pCloseAction, SIGNAL(triggered()), this, SIGNAL(closeAction()));
Index: trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxSpecialControls.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxSpecialControls.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/widgets/VBoxSpecialControls.cpp	(revision 30192)
@@ -19,8 +19,9 @@
 
 /* VBox includes */
+#include "UIIconPool.h"
 #include "VBoxSpecialControls.h"
 
-/* VBox includes */
-#include "VBoxGlobal.h"
+/* Global includes */
+#include <QHBoxLayout>
 
 #ifdef VBOX_DARWIN_USE_NATIVE_CONTROLS
@@ -120,6 +121,6 @@
     QIcon cancelIcon = style()->standardIcon (QStyle::SP_DialogCancelButton);
     if (cancelIcon.isNull())
-        cancelIcon = VBoxGlobal::iconSet (":/delete_16px.png",
-                                          ":/delete_dis_16px.png");
+        cancelIcon = UIIconPool::iconSet(":/delete_16px.png",
+                                         ":/delete_dis_16px.png");
     setIcon (cancelIcon);
 }
Index: trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIFirstRunWzd.cpp	(revision 30192)
@@ -20,7 +20,7 @@
 /* Local includes */
 #include "UIFirstRunWzd.h"
-#include "VBoxGlobal.h"
+#include "UIIconPool.h"
+#include "VBoxMediaManagerDlg.h"
 #include "VBoxProblemReporter.h"
-#include "VBoxMediaManagerDlg.h"
 #include "VBoxVMSettingsHD.h"
 
@@ -163,5 +163,6 @@
 
     /* Setup contents */
-    m_pSelectMediaButton->setIcon(VBoxGlobal::iconSet(":/select_file_16px.png", ":/select_file_dis_16px.png"));
+    m_pSelectMediaButton->setIcon(UIIconPool::iconSet(":/select_file_16px.png",
+                                                      ":/select_file_dis_16px.png"));
 
     /* Setup connections */
Index: trunk/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/wizards/newhd/UINewHDWzd.cpp	(revision 30192)
@@ -18,13 +18,15 @@
  */
 
-/* Global includes */
-#include <QFileDialog>
-#include <QRegExpValidator>
-
 /* Local includes */
+#include "UIIconPool.h"
 #include "UINewHDWzd.h"
 #include "VBoxGlobal.h"
 #include "VBoxProblemReporter.h"
+
+/* Global includes */
 #include "iprt/path.h"
+#include <QFileDialog>
+#include <QRegExpValidator>
+
 
 UINewHDWzd::UINewHDWzd(QWidget *pParent) : QIWizard(pParent)
@@ -234,5 +236,6 @@
 
     /* Attach button icon */
-    m_pLocationSelector->setIcon(vboxGlobal().iconSet(":/select_file_16px.png", "select_file_dis_16px.png"));
+    m_pLocationSelector->setIcon(UIIconPool::iconSet(":/select_file_16px.png",
+                                                     "select_file_dis_16px.png"));
 
     /* Setup page connections */
Index: trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp	(revision 30191)
+++ trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UINewVMWzd.cpp	(revision 30192)
@@ -19,9 +19,9 @@
 
 /* Local includes */
+#include "UIIconPool.h"
+#include "UINewHDWzd.h"
 #include "UINewVMWzd.h"
-#include "UINewHDWzd.h"
-#include "VBoxGlobal.h"
+#include "VBoxMediaManagerDlg.h"
 #include "VBoxProblemReporter.h"
-#include "VBoxMediaManagerDlg.h"
 #include "VBoxVMSettingsHD.h"
 
@@ -349,5 +349,6 @@
 
     /* Setup medium-manager button */
-    m_pVMMButton->setIcon(VBoxGlobal::iconSet(":/select_file_16px.png", ":/select_file_dis_16px.png"));
+    m_pVMMButton->setIcon(UIIconPool::iconSet(":/select_file_16px.png",
+                                              ":/select_file_dis_16px.png"));
 
     /* Setup page connections */
