Index: /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp	(revision 74722)
@@ -3970,5 +3970,5 @@
 }
 
-double UIExtraDataManager::scaleFactor(const QString &strID, const int uScreenIndex /* = 0 */)
+double UIExtraDataManager::scaleFactor(const QString &strID, const int uScreenIndex)
 {
     /* Get corresponding extra-data value: */
@@ -3987,5 +3987,5 @@
 }
 
-void UIExtraDataManager::setScaleFactor(double dScaleFactor, const QString &strID, const int uScreenIndex /* = 0 */)
+void UIExtraDataManager::setScaleFactor(double dScaleFactor, const QString &strID, const int uScreenIndex)
 {
     /* Set corresponding extra-data value: */
@@ -4527,5 +4527,5 @@
             emit sigStatusBarConfigurationChange(strMachineID);
         /* Scale-factor change: */
-        else if (strKey == GUI_ScaleFactor)
+        else if (strKey.contains(GUI_ScaleFactor))
             emit sigScaleFactorChange(strMachineID);
         /* Scaling optimization type change: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.h	(revision 74722)
@@ -597,7 +597,7 @@
 
         /** Returns the scale-factor. */
-        double scaleFactor(const QString &strID, const int uScreenIndex = 0);
+        double scaleFactor(const QString &strID, const int uScreenIndex);
         /** Defines the @a dScaleFactor. */
-        void setScaleFactor(double dScaleFactor, const QString &strID, const int uScreenIndex = 0);
+        void setScaleFactor(double dScaleFactor, const QString &strID, const int uScreenIndex);
 
         /** Returns the scaling optimization type. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPoolRuntime.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPoolRuntime.cpp	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/UIActionPoolRuntime.cpp	(revision 74722)
@@ -3157,5 +3157,5 @@
     /* Change scale-factor directly: */
     const double dScaleFactor = pAction->property("Requested Scale Factor").toDouble();
-    gEDataManager->setScaleFactor(dScaleFactor, vboxGlobal().managedVMUuid());
+    gEDataManager->setScaleFactor(dScaleFactor, vboxGlobal().managedVMUuid(), 0);
 }
 
@@ -3783,5 +3783,5 @@
 
         /* Get current scale-factor: */
-        const double dCurrentScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid());
+        const double dCurrentScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid(), 0);
 
         /* Get device-pixel-ratio: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachineView.cpp	(revision 74722)
@@ -248,5 +248,5 @@
 {
     /* Acquire selected scale-factor: */
-    double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid());
+    double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid(), m_uScreenId);
 
     /* Take the device-pixel-ratio into account: */
@@ -508,5 +508,5 @@
 
     /* Acquire selected scale-factor: */
-    double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid());
+    double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid(), m_uScreenId);
 
     /* Take the device-pixel-ratio into account: */
@@ -702,5 +702,5 @@
 
         /* Acquire selected scale-factor: */
-        double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid());
+        double dScaleFactor = gEDataManager->scaleFactor(vboxGlobal().managedVMUuid(), m_uScreenId);
 
         /* Take the device-pixel-ratio into account: */
@@ -1904,3 +1904,2 @@
     return size;
 }
-
Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.cpp	(revision 74722)
@@ -75,4 +75,5 @@
                && (m_cGuestScreenCount == other.m_cGuestScreenCount)
                && (m_dScaleFactor == other.m_dScaleFactor)
+               && (m_scaleFactors == other.m_scaleFactors)
                && (m_f3dAccelerationEnabled == other.m_f3dAccelerationEnabled)
 #ifdef VBOX_WITH_VIDEOHWACCEL
@@ -245,4 +246,5 @@
     /** Holds the guest screen scale-factor. */
     double  m_dScaleFactor;
+    QList<double> m_scaleFactors;
     /** Holds whether the 3D acceleration is enabled. */
     bool    m_f3dAccelerationEnabled;
@@ -362,5 +364,9 @@
     oldDisplayData.m_iCurrentVRAM = m_machine.GetVRAMSize();
     oldDisplayData.m_cGuestScreenCount = m_machine.GetMonitorCount();
-    oldDisplayData.m_dScaleFactor = gEDataManager->scaleFactor(m_machine.GetId());
+    oldDisplayData.m_dScaleFactor = gEDataManager->scaleFactor(m_machine.GetId(), 0);
+    oldDisplayData.m_scaleFactors.clear();
+    for (unsigned i = 0; i < m_machine.GetMonitorCount(); ++i)
+        oldDisplayData.m_scaleFactors.append(gEDataManager->scaleFactor(m_machine.GetId(), (int)i));
+
     oldDisplayData.m_f3dAccelerationEnabled = m_machine.GetAccelerate3DEnabled();
 #ifdef VBOX_WITH_VIDEOHWACCEL
@@ -410,7 +416,5 @@
     m_pEditorVideoScreenCount->setValue(oldDisplayData.m_cGuestScreenCount);
     m_pScaleFactorEditor->setMonitorCount(oldDisplayData.m_cGuestScreenCount);
-    m_pScaleFactorEditor->hide();
-    m_pLabelGuestScreenScaleFactorEditor->hide();
-    m_pEditorGuestScreenScale->setValue((int)(oldDisplayData.m_dScaleFactor * 100));
+    m_pScaleFactorEditor->setScaleFactors(oldDisplayData.m_scaleFactors);
     m_pCheckbox3D->setChecked(oldDisplayData.m_f3dAccelerationEnabled);
 #ifdef VBOX_WITH_VIDEOHWACCEL
@@ -469,5 +473,5 @@
     newDisplayData.m_iCurrentVRAM = m_pEditorVideoMemorySize->value();
     newDisplayData.m_cGuestScreenCount = m_pEditorVideoScreenCount->value();
-    newDisplayData.m_dScaleFactor = (double)m_pEditorGuestScreenScale->value() / 100;
+    newDisplayData.m_scaleFactors = m_pScaleFactorEditor->scaleFactors();
     newDisplayData.m_f3dAccelerationEnabled = m_pCheckbox3D->isChecked();
 #ifdef VBOX_WITH_VIDEOHWACCEL
@@ -662,7 +666,4 @@
     setTabOrder(m_pEditorVideoMemorySize, m_pSliderVideoScreenCount);
     setTabOrder(m_pSliderVideoScreenCount, m_pEditorVideoScreenCount);
-    setTabOrder(m_pEditorVideoScreenCount, m_pSliderGuestScreenScale);
-    setTabOrder(m_pSliderGuestScreenScale, m_pEditorGuestScreenScale);
-    setTabOrder(m_pEditorGuestScreenScale, m_pCheckbox3D);
 #ifdef VBOX_WITH_VIDEOHWACCEL
     setTabOrder(m_pCheckbox3D, m_pCheckbox2DVideo);
@@ -702,6 +703,4 @@
     m_pLabelVideoScreenCountMin->setText(QString::number(1));
     m_pLabelVideoScreenCountMax->setText(QString::number(qMin(sys.GetMaxGuestMonitors(), (ULONG)8)));
-    m_pLabelGuestScreenScaleMin->setText(tr("%1%").arg(100));
-    m_pLabelGuestScreenScaleMax->setText(tr("%1%").arg(200));
 
     /* Remote Display stuff: */
@@ -741,9 +740,5 @@
     m_pLabelVideoScreenCountMax->setEnabled(isMachineOffline());
     m_pEditorVideoScreenCount->setEnabled(isMachineOffline());
-    m_pLabelGuestScreenScale->setEnabled(isMachineInValidMode());
-    m_pSliderGuestScreenScale->setEnabled(isMachineInValidMode());
-    m_pLabelGuestScreenScaleMin->setEnabled(isMachineInValidMode());
-    m_pLabelGuestScreenScaleMax->setEnabled(isMachineInValidMode());
-    m_pEditorGuestScreenScale->setEnabled(isMachineInValidMode());
+    m_pScaleFactorEditor->setEnabled(isMachineInValidMode());
     m_pLabelVideoOptions->setEnabled(isMachineOffline());
     m_pCheckbox3D->setEnabled(isMachineOffline());
@@ -820,20 +815,4 @@
     /* Revalidate: */
     revalidate();
-}
-
-void UIMachineSettingsDisplay::sltHandleGuestScreenScaleSliderChange()
-{
-    /* Apply proposed scale-factor: */
-    m_pEditorGuestScreenScale->blockSignals(true);
-    m_pEditorGuestScreenScale->setValue(m_pSliderGuestScreenScale->value());
-    m_pEditorGuestScreenScale->blockSignals(false);
-}
-
-void UIMachineSettingsDisplay::sltHandleGuestScreenScaleEditorChange()
-{
-    /* Apply proposed scale-factor: */
-    m_pSliderGuestScreenScale->blockSignals(true);
-    m_pSliderGuestScreenScale->setValue(m_pEditorGuestScreenScale->value());
-    m_pSliderGuestScreenScale->blockSignals(false);
 }
 
@@ -1017,25 +996,4 @@
             m_pEditorVideoScreenCount->setMinimum(1);
             m_pEditorVideoScreenCount->setMaximum(cMaxGuestScreens);
-        }
-
-        /* Scale-factor slider created in the .ui file. */
-        AssertPtrReturnVoid(m_pSliderGuestScreenScale);
-        {
-            /* Configure slider: */
-            m_pSliderGuestScreenScale->setMinimum(100);
-            m_pSliderGuestScreenScale->setMaximum(200);
-            m_pSliderGuestScreenScale->setPageStep(10);
-            m_pSliderGuestScreenScale->setSingleStep(1);
-            m_pSliderGuestScreenScale->setTickInterval(10);
-            m_pSliderGuestScreenScale->setSnappingEnabled(true);
-        }
-
-        /* Scale-factor editor created in the .ui file. */
-        AssertPtrReturnVoid(m_pEditorGuestScreenScale);
-        {
-            /* Configure editor: */
-            m_pEditorGuestScreenScale->setMinimum(100);
-            m_pEditorGuestScreenScale->setMaximum(200);
-            vboxGlobal().setMinimumWidthAccordingSymbolCount(m_pEditorGuestScreenScale, 5);
         }
     }
@@ -1211,6 +1169,5 @@
     connect(m_pSliderVideoScreenCount, SIGNAL(valueChanged(int)), this, SLOT(sltHandleGuestScreenCountSliderChange()));
     connect(m_pEditorVideoScreenCount, SIGNAL(valueChanged(int)), this, SLOT(sltHandleGuestScreenCountEditorChange()));
-    connect(m_pSliderGuestScreenScale, SIGNAL(valueChanged(int)), this, SLOT(sltHandleGuestScreenScaleSliderChange()));
-    connect(m_pEditorGuestScreenScale, SIGNAL(valueChanged(int)), this, SLOT(sltHandleGuestScreenScaleEditorChange()));
+
     connect(m_pCheckbox3D, SIGNAL(stateChanged(int)), this, SLOT(revalidate()));
 #ifdef VBOX_WITH_VIDEOHWACCEL
@@ -1452,5 +1409,11 @@
         /* Save guest-screen scale-factor: */
         if (fSuccess && newDisplayData.m_dScaleFactor != oldDisplayData.m_dScaleFactor)
-            /* fSuccess = */ gEDataManager->setScaleFactor(newDisplayData.m_dScaleFactor, strMachineId);
+            /* fSuccess = */ gEDataManager->setScaleFactor(newDisplayData.m_dScaleFactor, strMachineId, 0);
+        if (fSuccess && newDisplayData.m_scaleFactors != oldDisplayData.m_scaleFactors)
+        {
+            int listSize = newDisplayData.m_scaleFactors.size();
+            for (int i = 0; i < listSize; ++i)
+                gEDataManager->setScaleFactor(newDisplayData.m_scaleFactors[i], strMachineId, i);
+        }
     }
     /* Return result: */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.h	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.h	(revision 74722)
@@ -93,8 +93,4 @@
     /** Handles Guest Screen count editor change. */
     void sltHandleGuestScreenCountEditorChange();
-    /** Handles Guest Screen scale-factor slider change. */
-    void sltHandleGuestScreenScaleSliderChange();
-    /** Handles Guest Screen scale-factor editor change. */
-    void sltHandleGuestScreenScaleEditorChange();
 
     /** Handles Video Capture toggle. */
Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.ui
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.ui	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsDisplay.ui	(revision 74722)
@@ -147,60 +147,4 @@
           </item>
           <item row="4" column="0">
-           <widget class="QLabel" name="m_pLabelGuestScreenScale">
-            <property name="text">
-             <string>Scale Factor:</string>
-            </property>
-            <property name="alignment">
-             <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
-            </property>
-           </widget>
-          </item>
-          <item row="4" column="1" rowspan="2">
-           <layout class="QGridLayout" name="m_pLayoutGuestScreenScaleSlider">
-            <property name="spacing">
-             <number>0</number>
-            </property>
-            <item row="0" column="0" colspan="3">
-             <widget class="QIAdvancedSlider" name="m_pSliderGuestScreenScale">
-              <property name="whatsThis">
-               <string>Controls the guest screen scale factor.</string>
-              </property>
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-             </widget>
-            </item>
-            <item row="1" column="0">
-             <widget class="QLabel" name="m_pLabelGuestScreenScaleMin"/>
-            </item>
-            <item row="1" column="1">
-             <spacer name="m_pSpacerGuestScreenScale">
-              <property name="orientation">
-               <enum>Qt::Horizontal</enum>
-              </property>
-              <property name="sizeHint" stdset="0">
-               <size>
-                <width>0</width>
-                <height>0</height>
-               </size>
-              </property>
-             </spacer>
-            </item>
-            <item row="1" column="2">
-             <widget class="QLabel" name="m_pLabelGuestScreenScaleMax"/>
-            </item>
-           </layout>
-          </item>
-          <item row="4" column="2">
-           <widget class="QSpinBox" name="m_pEditorGuestScreenScale">
-            <property name="whatsThis">
-             <string>Controls the guest screen scale factor.</string>
-            </property>
-            <property name="suffix">
-             <string>%</string>
-            </property>
-           </widget>
-          </item>
-          <item row="6" column="0">
            <widget class="QLabel" name="m_pLabelGuestScreenScaleFactorEditor">
             <property name="text">
@@ -212,5 +156,5 @@
            </widget>
           </item>
-          <item row="6" column="1" rowspan="2" colspan="2">
+          <item row="4" column="1" rowspan="1" colspan="2">
            <layout class="QGridLayout" name="m_pLayoutGuestScreenScaleFactorEditor">
             <property name="spacing">
@@ -226,5 +170,5 @@
            </layout>
           </item>
-          <item row="8" column="0">
+          <item row="6" column="0">
            <widget class="QLabel" name="m_pLabelVideoOptions">
             <property name="text">
@@ -236,5 +180,5 @@
            </widget>
           </item>
-          <item row="8" column="1">
+          <item row="6" column="1">
            <widget class="QCheckBox" name="m_pCheckbox3D">
             <property name="sizePolicy">
@@ -252,5 +196,5 @@
            </widget>
           </item>
-          <item row="9" column="1">
+          <item row="7" column="1">
            <widget class="QCheckBox" name="m_pCheckbox2DVideo">
             <property name="sizePolicy">
Index: /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.cpp	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.cpp	(revision 74722)
@@ -43,8 +43,72 @@
 }
 
+void UIScaleFactorEditor::setMonitorCount(int iMonitorCount)
+{
+    if (!m_pMonitorComboBox)
+        return;
+    if (iMonitorCount == m_pMonitorComboBox->count())
+        return;
+
+    m_pMonitorComboBox->blockSignals(true);
+    m_pMonitorComboBox->clear();
+    for (int i = 0; i < iMonitorCount; ++i)
+    {
+        m_pMonitorComboBox->addItem(QString("Monitor %1").arg(i));
+
+    }
+    m_pMonitorComboBox->blockSignals(false);
+}
+
+void UIScaleFactorEditor::setScaleFactors(const QList<double> &scaleFactors)
+{
+    if (m_scaleFactors == scaleFactors)
+        return;
+    m_scaleFactors = scaleFactors;
+
+    /* Set the spinbox value for the currently selected monitor: */
+    if (m_pMonitorComboBox)
+    {
+        int currentMonitorIndex = m_pMonitorComboBox->currentIndex();
+        if (m_scaleFactors.size() > currentMonitorIndex && m_pScaleSpinBox)
+            m_pScaleSpinBox->setValue(100 * m_scaleFactors.at(currentMonitorIndex));
+    }
+}
+
+const QList<double>& UIScaleFactorEditor::scaleFactors() const
+{
+    return m_scaleFactors;
+}
+
+void UIScaleFactorEditor::retranslateUi()
+{
+}
+
+void UIScaleFactorEditor::sltScaleSpinBoxValueChanged(int value)
+{
+    setSliderValue(value);
+    if (m_pMonitorComboBox)
+        setScaleFactor(m_pMonitorComboBox->currentIndex(), value);
+}
+
+void UIScaleFactorEditor::sltScaleSliderValueChanged(int value)
+{
+    setSpinBoxValue(value);
+    if (m_pMonitorComboBox)
+        setScaleFactor(m_pMonitorComboBox->currentIndex(), value);
+}
+
+void UIScaleFactorEditor::sltMonitorComboIndexChanged(int index)
+{
+    if (index >= m_scaleFactors.size())
+        return;
+
+    /* Update the slider and spinbox values without emitting signals: */
+    int scaleFactor = 100 *m_scaleFactors[index];
+    setSliderValue(scaleFactor);
+    setSpinBoxValue(scaleFactor);
+}
+
 void UIScaleFactorEditor::prepare()
 {
-    setStyleSheet("background-color:yellow;");
-
     m_pMainLayout = new QGridLayout;
     if (!m_pMainLayout)
@@ -54,4 +118,6 @@
     {
         m_pMainLayout->addWidget(m_pMonitorComboBox, 0, 0);
+        connect(m_pMonitorComboBox ,static_cast<void(QComboBox::*)(int)>(&QComboBox::currentIndexChanged),
+                this, &UIScaleFactorEditor::sltMonitorComboIndexChanged);
     }
     m_pScaleSpinBox = new QSpinBox;
@@ -80,42 +146,32 @@
 }
 
-void UIScaleFactorEditor::setMonitorCount(int iMonitorCount)
+void UIScaleFactorEditor::setScaleFactor(int iMonitorIndex, int iScaleFactor)
 {
-    if (!m_pMonitorComboBox)
-        return;
-    if (iMonitorCount == m_pMonitorComboBox->count())
-        return;
-
-    m_pMonitorComboBox->blockSignals(true);
-    m_pMonitorComboBox->clear();
-    for (int i = 0; i < iMonitorCount; ++i)
+    /* Make sure we have the corresponding scale value for the @p iMonitorIndex: */
+    if (iMonitorIndex >= m_scaleFactors.size())
     {
-        m_pMonitorComboBox->addItem(QString("Monitor %1").arg(i));
-
+        for (int i = m_scaleFactors.size(); i <= iMonitorIndex; ++i)
+            m_scaleFactors.append(1.0);
     }
-    m_pMonitorComboBox->blockSignals(false);
+    m_scaleFactors[iMonitorIndex] = iScaleFactor / 100.0;
 }
 
-void UIScaleFactorEditor::sltScaleSpinBoxValueChanged(int value)
+void UIScaleFactorEditor::setSliderValue(int iValue)
 {
-    if (m_pScaleSlider && value != m_pScaleSlider->value())
+    if (m_pScaleSlider && iValue != m_pScaleSlider->value())
     {
         m_pScaleSlider->blockSignals(true);
-        m_pScaleSlider->setValue(value);
+        m_pScaleSlider->setValue(iValue);
         m_pScaleSlider->blockSignals(false);
     }
 }
 
-void UIScaleFactorEditor::sltScaleSliderValueChanged(int value)
+void UIScaleFactorEditor::setSpinBoxValue(int iValue)
 {
-    if (m_pScaleSpinBox && value != m_pScaleSpinBox->value())
+    if (m_pScaleSpinBox && iValue != m_pScaleSpinBox->value())
     {
         m_pScaleSpinBox->blockSignals(true);
-        m_pScaleSpinBox->setValue(value);
+        m_pScaleSpinBox->setValue(iValue);
         m_pScaleSpinBox->blockSignals(false);
     }
 }
-
-void UIScaleFactorEditor::retranslateUi()
-{
-}
Index: /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.h	(revision 74721)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIScaleFactorEditor.h	(revision 74722)
@@ -41,5 +41,4 @@
 
 signals:
-    void sigScaleFactorChanged(int iMonitorID, double scaleFactor);
 
 public:
@@ -48,4 +47,6 @@
     UIScaleFactorEditor(QWidget *pParent);
     void setMonitorCount(int iMonitorCount);
+    void setScaleFactors(const QList<double> &scaleFactors);
+    const QList<double>& scaleFactors() const;
 
 protected:
@@ -55,11 +56,17 @@
     void sltScaleSpinBoxValueChanged(int value);
     void sltScaleSliderValueChanged(int value);
+    void sltMonitorComboIndexChanged(int index);
 
 private:
     void prepare();
+    void setScaleFactor(int iMonitorIndex, int iScaleFactor);
+    void setSliderValue(int iValue);
+    void setSpinBoxValue(int iValue);
     QSpinBox          *m_pScaleSpinBox;
     QGridLayout       *m_pMainLayout;
     QComboBox         *m_pMonitorComboBox;
     QIAdvancedSlider  *m_pScaleSlider;
+    /* Stores the per-monitor scale factors in range [.., 1, ..] */
+    QList<double>      m_scaleFactors;
 };
 
