Index: /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataDefs.h	(revision 51215)
@@ -203,4 +203,12 @@
 };
 
+/** Common UI: Wizard modes. */
+enum WizardMode
+{
+    WizardMode_Auto,
+    WizardMode_Basic,
+    WizardMode_Expert
+};
+
 
 /** Selector UI: Details-element types. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 51215)
@@ -241,20 +241,26 @@
 #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
 
-bool UIExtraDataManager::isDescriptionHiddenForWizard(const QString &strWizardName)
-{
-    /* True if wizard-name among the others: */
-    return extraDataStringList(GUI_HideDescriptionForWizards).contains(strWizardName);
-}
-
-void UIExtraDataManager::setDescriptionHiddenForWizard(const QString &strWizardName, bool fHidden)
-{
+WizardMode UIExtraDataManager::modeForWizard(WizardType type)
+{
+    /* Some wizard use only 'basic' mode: */
+    if (type == WizardType_FirstRun)
+        return WizardMode_Basic;
+    /* Otherwise get mode from cached extra-data: */
+    return extraDataStringList(GUI_HideDescriptionForWizards).contains(gpConverter->toInternalString(type))
+           ? WizardMode_Expert : WizardMode_Basic;
+}
+
+void UIExtraDataManager::setModeForWizard(WizardType type, WizardMode mode)
+{
+    /* Get wizard name: */
+    const QString strWizardName = gpConverter->toInternalString(type);
     /* Get current value: */
     QStringList oldValue = extraDataStringList(GUI_HideDescriptionForWizards);
     QStringList newValue = oldValue;
-    /* Include wizard-name if necessary: */
-    if (fHidden && !newValue.contains(strWizardName))
+    /* Include wizard-name into expert-mode wizard list if necessary: */
+    if (mode == WizardMode_Expert && !newValue.contains(strWizardName))
         newValue << strWizardName;
-    /* Exclude wizard-name if necessary: */
-    else if (!fHidden && newValue.contains(strWizardName))
+    /* Exclude wizard-name from expert-mode wizard list if necessary: */
+    else if (mode == WizardMode_Basic && newValue.contains(strWizardName))
         newValue.removeAll(strWizardName);
     /* Update extra-data if necessary: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 51215)
@@ -115,8 +115,8 @@
 #endif /* VBOX_GUI_WITH_NETWORK_MANAGER */
 
-    /** Returns whether description should be hidden for wizard @a strWizardName. */
-    bool isDescriptionHiddenForWizard(const QString &strWizardName);
-    /** Defines whether description should be @a fHidden for wizard @a strWizardName. */
-    void setDescriptionHiddenForWizard(const QString &strWizardName, bool fHidden);
+    /** Returns mode (basic/expert) for wizard of @a type. */
+    WizardMode modeForWizard(WizardType type);
+    /** Defines @a mode (basic/expert) for wizard of @a type. */
+    void setModeForWizard(WizardType type, WizardMode mode);
 
     /** Returns whether this machine started for the first time. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.cpp	(revision 51215)
@@ -29,5 +29,4 @@
 #include "QIRichTextLabel.h"
 #include "UIExtraDataManager.h"
-#include "UIConverter.h"
 
 void UIWizard::sltCurrentIdChanged(int iId)
@@ -56,11 +55,11 @@
         switch (m_mode)
         {
-            case UIWizardMode_Basic:  m_mode = UIWizardMode_Expert; break;
-            case UIWizardMode_Expert: m_mode = UIWizardMode_Basic;  break;
+            case WizardMode_Basic:  m_mode = WizardMode_Expert; break;
+            case WizardMode_Expert: m_mode = WizardMode_Basic;  break;
             default: AssertMsgFailed(("Invalid mode: %d", m_mode)); break;
         }
 
         /* Save mode settings: */
-        gEDataManager->setDescriptionHiddenForWizard(gpConverter->toInternalString(m_type), m_mode == UIWizardMode_Expert);
+        gEDataManager->setModeForWizard(m_type, m_mode);
 
         /* Prepare: */
@@ -69,8 +68,8 @@
 }
 
-UIWizard::UIWizard(QWidget *pParent, WizardType type, UIWizardMode mode)
+UIWizard::UIWizard(QWidget *pParent, WizardType type, WizardMode mode /* = WizardMode_Auto */)
     : QIWithRetranslateUI<QWizard>(pParent)
     , m_type(type)
-    , m_mode(mode == UIWizardMode_Auto ? modeForType(m_type) : mode)
+    , m_mode(mode == WizardMode_Auto ? gEDataManager->modeForWizard(m_type) : mode)
 {
 #ifdef Q_WS_WIN
@@ -99,6 +98,6 @@
     switch (m_mode)
     {
-        case UIWizardMode_Basic: setButtonText(QWizard::CustomButton1, tr("Hide Description")); break;
-        case UIWizardMode_Expert: setButtonText(QWizard::CustomButton1, tr("Show Description")); break;
+        case WizardMode_Basic: setButtonText(QWizard::CustomButton1, tr("Hide Description")); break;
+        case WizardMode_Expert: setButtonText(QWizard::CustomButton1, tr("Show Description")); break;
         default: AssertMsgFailed(("Invalid mode: %d", m_mode)); break;
     }
@@ -167,5 +166,5 @@
 {
     /* Check if wizard is in basic or expert mode: */
-    if (m_mode == UIWizardMode_Expert)
+    if (m_mode == WizardMode_Expert)
     {
         /* Unfortunately QWizard hides some of useful API in private part,
@@ -420,5 +419,5 @@
     /* Acquire wizard-layout top-margin: */
     int iTopMargin = 0;
-    if (m_mode == UIWizardMode_Basic)
+    if (m_mode == WizardMode_Basic)
     {
         if (wizardStyle() == QWizard::ModernStyle)
@@ -428,5 +427,5 @@
     /* Acquire wizard-header height: */
     int iTitleHeight = 0;
-    if (m_mode == UIWizardMode_Basic)
+    if (m_mode == WizardMode_Basic)
     {
         /* We have no direct access to QWizardHeader inside QWizard private data...
@@ -440,5 +439,5 @@
     /* Acquire spacing between wizard-header and wizard-page: */
     int iMarginBetweenTitleAndPage = 0;
-    if (m_mode == UIWizardMode_Basic)
+    if (m_mode == WizardMode_Basic)
     {
         /* We have no direct access to margin between QWizardHeader and wizard-pages...
@@ -505,13 +504,2 @@
 #endif /* !Q_WS_MAC */
 
-/* static */
-UIWizardMode UIWizard::modeForType(WizardType type)
-{
-    /* Some wizard use only basic mode: */
-    if (type == WizardType_FirstRun)
-        return UIWizardMode_Basic;
-    /* Otherwise get mode from extra-data manager: */
-    return gEDataManager->isDescriptionHiddenForWizard(gpConverter->toInternalString(type))
-           ? UIWizardMode_Expert : UIWizardMode_Basic;
-}
-
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.h	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/UIWizard.h	(revision 51215)
@@ -31,12 +31,4 @@
 class UIWizardPage;
 
-/* Wizard mode: */
-enum UIWizardMode
-{
-    UIWizardMode_Auto,
-    UIWizardMode_Basic,
-    UIWizardMode_Expert
-};
-
 /* QWizard class reimplementation with extended funtionality. */
 class UIWizard : public QIWithRetranslateUI<QWizard>
@@ -47,5 +39,5 @@
 
     /* Mode related stuff: */
-    UIWizardMode mode() { return m_mode; }
+    WizardMode mode() { return m_mode; }
 
     /* Page related methods: */
@@ -62,5 +54,5 @@
 
     /* Constructor: */
-    UIWizard(QWidget *pParent, WizardType type, UIWizardMode mode = UIWizardMode_Auto);
+    UIWizard(QWidget *pParent, WizardType type, WizardMode mode = WizardMode_Auto);
 
     /* Translation stuff: */
@@ -95,9 +87,8 @@
     void assignWatermarkHelper();
 #endif /* !Q_WS_MAC */
-    static UIWizardMode modeForType(WizardType type);
 
     /* Variables: */
     WizardType m_type;
-    UIWizardMode m_mode;
+    WizardMode m_mode;
 #ifndef Q_WS_MAC
     QString m_strWatermarkName;
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVD.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVD.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVD.cpp	(revision 51215)
@@ -121,5 +121,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page1, new UIWizardCloneVDPageBasic1(m_sourceVirtualDisk));
@@ -129,5 +129,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardCloneVDPageExpert(m_sourceVirtualDisk));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm/UIWizardCloneVM.cpp	(revision 51215)
@@ -53,6 +53,6 @@
     bool fLinked = field("linkedClone").toBool();
     /* Get clone mode: */
-    KCloneMode cloneMode = (mode() == UIWizardMode_Basic && page(Page3)) ||
-                           (mode() == UIWizardMode_Expert && page(PageExpert)) ?
+    KCloneMode cloneMode = (mode() == WizardMode_Basic && page(Page3)) ||
+                           (mode() == WizardMode_Expert && page(PageExpert)) ?
                            field("cloneMode").value<KCloneMode>() : KCloneMode_MachineState;
 
@@ -172,5 +172,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page1, new UIWizardCloneVMPageBasic1(m_machine.GetName()));
@@ -180,5 +180,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardCloneVMPageExpert(m_machine.GetName(),
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportApp.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportApp.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportApp.cpp	(revision 51215)
@@ -213,6 +213,6 @@
     UIWizard::sltCurrentIdChanged(iId);
     /* Enable 2nd button (Reset to Defaults) for 4th and Expert pages only! */
-    setOption(QWizard::HaveCustomButton2, (mode() == UIWizardMode_Basic && iId == Page4) ||
-                                          (mode() == UIWizardMode_Expert && iId == PageExpert));
+    setOption(QWizard::HaveCustomButton2, (mode() == WizardMode_Basic && iId == Page4) ||
+                                          (mode() == WizardMode_Expert && iId == PageExpert));
 }
 
@@ -249,5 +249,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page1, new UIWizardExportAppPageBasic1(m_selectedVMNames));
@@ -257,5 +257,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardExportAppPageExpert(m_selectedVMNames));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIWizardFirstRun.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIWizardFirstRun.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun/UIWizardFirstRun.cpp	(revision 51215)
@@ -103,10 +103,10 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page, new UIWizardFirstRunPageBasic(m_machine.GetId(), m_fHardDiskWasSet));
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             AssertMsgFailed(("First-run wizard has no expert-mode!"));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp	(revision 51215)
@@ -184,6 +184,6 @@
     UIWizard::sltCurrentIdChanged(iId);
     /* Enable 2nd button (Reset to Defaults) for 2nd and Expert pages only! */
-    setOption(QWizard::HaveCustomButton2, (mode() == UIWizardMode_Basic && iId == Page2) ||
-                                          (mode() == UIWizardMode_Expert && iId == PageExpert));
+    setOption(QWizard::HaveCustomButton2, (mode() == WizardMode_Basic && iId == Page2) ||
+                                          (mode() == WizardMode_Expert && iId == PageExpert));
 }
 
@@ -220,5 +220,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             if (m_strFileName.isEmpty())
@@ -227,5 +227,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardImportAppPageExpert(m_strFileName));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.cpp	(revision 51215)
@@ -37,5 +37,5 @@
                              const QString &strDefaultName, const QString &strDefaultPath,
                              qulonglong uDefaultSize,
-                             UIWizardMode mode)
+                             WizardMode mode)
     : UIWizard(pParent, WizardType_NewVD, mode)
     , m_strDefaultName(strDefaultName)
@@ -125,5 +125,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page1, new UIWizardNewVDPageBasic1);
@@ -132,5 +132,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardNewVDPageExpert(m_strDefaultName, m_strDefaultPath, m_uDefaultSize));
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.h	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVD.h	(revision 51215)
@@ -52,5 +52,5 @@
                   const QString &strDefaultName, const QString &strDefaultPath,
                   qulonglong uDefaultSize,
-                  UIWizardMode mode = UIWizardMode_Auto);
+                  WizardMode mode = WizardMode_Auto);
 
     /* Pages related stuff: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.cpp	(revision 51214)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.cpp	(revision 51215)
@@ -289,5 +289,5 @@
     switch (mode())
     {
-        case UIWizardMode_Basic:
+        case WizardMode_Basic:
         {
             setPage(Page1, new UIWizardNewVMPageBasic1(m_strGroup));
@@ -296,5 +296,5 @@
             break;
         }
-        case UIWizardMode_Expert:
+        case WizardMode_Expert:
         {
             setPage(PageExpert, new UIWizardNewVMPageExpert(m_strGroup));
