Index: trunk/src/VBox/Frontends/VirtualBox4/include/VBoxFilePathSelectorWidget.h
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/include/VBoxFilePathSelectorWidget.h	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/include/VBoxFilePathSelectorWidget.h	(revision 11229)
@@ -27,17 +27,10 @@
 
 /* Qt includes */
-#include <QWidget>
+#include <QComboBox>
 
-#ifdef Q_WS_MAC
-#define VBOX_USE_COMBOBOX_PATH_SELECTOR
-#endif /* Q_WS_MAC */
+class QFileIconProvider;
+class QAction;
 
-class QLabel;
-class QToolButton;
-class QFileIconProvider;
-class QComboBox;
-class QILabel;
-
-class VBoxFilePathSelectorWidget: public QIWithRetranslateUI<QWidget>
+class VBoxFilePathSelectorWidget: public QIWithRetranslateUI<QComboBox>
 {
     Q_OBJECT;
@@ -45,12 +38,12 @@
 public:
 
-    enum SelectorMode 
-    { 
+    enum SelectorMode
+    {
         PathMode = 0,
         FileMode
     };
 
-    VBoxFilePathSelectorWidget (QWidget *aParent = NULL);
-    ~VBoxFilePathSelectorWidget();
+    VBoxFilePathSelectorWidget (QWidget *aParent = 0);
+   ~VBoxFilePathSelectorWidget();
 
     void setMode (SelectorMode aMode);
@@ -60,7 +53,7 @@
     bool isResetEnabled () const;
 
-    void setPathWhatsThis (const QString &aText);
-    void setSelectorWhatsThis (const QString &aText);
-    void setResetWhatsThis (const QString &aText);
+    void setNoneToolTip (const QString &aText);
+    void setSelectToolTip (const QString &aText);
+    void setResetToolTip (const QString &aText);
 
     bool isModified() const;
@@ -78,31 +71,26 @@
 protected:
 
+    void resizeEvent (QResizeEvent *aEvent);
     void retranslateUi();
 
 private slots:
-     
-    void cbActivated (int aIndex);
+
+    void onActivated (int aIndex);
+    void copyToClipboard();
 
 private:
 
-    void init();
     QIcon defaultIcon() const;
-    QString filePath (const QString &aName, bool bLast) const;
+    QString filePath() const;
+    QString shrinkText (int aWidth) const;
+    void refreshText();
 
     /* Private member vars */
+    QFileIconProvider *mIconProvider;
+    QAction *mCopyAction;
     SelectorMode mMode;
-    QString      mPath;
-    QString      mNoneStr;
-
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    QComboBox   *mCbPath;
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    QLabel      *mLbIcon;
-    QILabel     *mLbPath;
-    QToolButton *mTbSelect;
-    QToolButton *mTbReset;
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-
-    QFileIconProvider *mIconProvider;
+    QString mPath;
+    QString mNoneStr;
+    QString mNoneTip;
 };
 
Index: trunk/src/VBox/Frontends/VirtualBox4/src/VBoxFilePathSelectorWidget.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/src/VBoxFilePathSelectorWidget.cpp	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/src/VBoxFilePathSelectorWidget.cpp	(revision 11229)
@@ -22,19 +22,13 @@
 
 #include "VBoxFilePathSelectorWidget.h"
-#include "VBoxGlobal.h"
-#include "QILabel.h"
 
 /* Qt includes */
+#include <QAction>
+#include <QApplication>
+#include <QClipboard>
+#include <QDir>
 #include <QFileIconProvider>
-#include <QDir>
-
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-# include <QComboBox>
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-# include <QLabel>
-# include <QToolButton>
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-
-enum 
+
+enum
 {
     PathId = 0,
@@ -43,9 +37,32 @@
 };
 
-VBoxFilePathSelectorWidget::VBoxFilePathSelectorWidget (QWidget *aParent /* = NULL */)
-    : QIWithRetranslateUI<QWidget> (aParent)
+VBoxFilePathSelectorWidget::VBoxFilePathSelectorWidget (QWidget *aParent /* = 0 */)
+    : QIWithRetranslateUI<QComboBox> (aParent)
+    , mIconProvider (new QFileIconProvider())
+    , mCopyAction (new QAction (this))
     , mMode (PathMode)
 {
-    init();
+    /* Populate items */
+    insertItem (PathId, "");
+    insertItem (SelectId, "");
+    insertItem (ResetId, "");
+
+    /* Setup context menu */
+    addAction (mCopyAction);
+    mCopyAction->setShortcut (QKeySequence (QKeySequence::Copy));
+    mCopyAction->setShortcutContext (Qt::WidgetShortcut);
+
+    /* Setup connections */
+    connect (this, SIGNAL (activated (int)), this, SLOT (onActivated (int)));
+    connect (mCopyAction, SIGNAL (triggered (bool)), this, SLOT (copyToClipboard()));
+
+    /* Applying language settings */
+    retranslateUi();
+
+    /* Initial Setup */
+    setContextMenuPolicy (Qt::ActionsContextMenu);
+    setMinimumWidth (200);
+    /* Set path to None */
+    setPath (QString::null);
 }
 
@@ -67,52 +84,34 @@
 void VBoxFilePathSelectorWidget::setResetEnabled (bool aEnabled)
 {
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    if (!aEnabled &&
-        mCbPath->count() - 1 == ResetId)
-        mCbPath->removeItem (ResetId);
-    else
-    if (aEnabled &&
-        mCbPath->count() - 1  == ResetId - 1)
-        mCbPath->insertItem (ResetId, "");
+    if (!aEnabled && count() - 1 == ResetId)
+        removeItem (ResetId);
+    else if (aEnabled && count() - 1 == ResetId - 1)
+        insertItem (ResetId, "");
     retranslateUi();
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mTbReset->setVisible (aEnabled);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
 }
 
 bool VBoxFilePathSelectorWidget::isResetEnabled () const
 {
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    return (mCbPath->count() - 1  == ResetId);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    return mTbReset->isVisible();
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-}
-
-void VBoxFilePathSelectorWidget::setPathWhatsThis (const QString &aText)
-{
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    NOREF (aText);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mLbPath->setWhatsThis (aText);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-}
-
-void VBoxFilePathSelectorWidget::setSelectorWhatsThis (const QString &aText)
-{
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    mCbPath->setItemData (SelectId, aText, Qt::WhatsThisRole);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mTbSelect->setWhatsThis (aText);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-}
-
-void VBoxFilePathSelectorWidget::setResetWhatsThis (const QString &aText)
-{
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    mCbPath->setItemData (ResetId, aText, Qt::WhatsThisRole);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mTbReset->setWhatsThis (aText);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
+    return (count() - 1  == ResetId);
+}
+
+void VBoxFilePathSelectorWidget::setNoneToolTip (const QString &aText)
+{
+    mNoneTip = aText;
+    if (mPath.isNull())
+    {
+        setItemData (PathId, mNoneTip, Qt::ToolTipRole);
+        setToolTip (mNoneTip);
+    }
+}
+
+void VBoxFilePathSelectorWidget::setSelectToolTip (const QString &aText)
+{
+    setItemData (SelectId, aText, Qt::ToolTipRole);
+}
+
+void VBoxFilePathSelectorWidget::setResetToolTip (const QString &aText)
+{
+    setItemData (ResetId, aText, Qt::ToolTipRole);
 }
 
@@ -124,21 +123,16 @@
 void VBoxFilePathSelectorWidget::setPath (const QString &aPath)
 {
-    mPath = aPath;
-    QString tmpPath (aPath);
-    QIcon icon;
-    QFileInfo fi (tmpPath);
-    if (fi.exists())
-        icon = mIconProvider->icon (fi);
-    else
-        icon = defaultIcon();
-    if (tmpPath.isEmpty())
-        tmpPath = mNoneStr;
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    mCbPath->setItemText (PathId, filePath (tmpPath, true));
-    mCbPath->setItemIcon (PathId, icon);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mLbPath->setText (QString ("<compact elipsis=\"start\">%1</compact>").arg (tmpPath));
-    mLbIcon->setPixmap (icon.pixmap (16, 16));
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
+    mPath = aPath.isEmpty() ? QString::null : aPath;
+
+    /* Attach corresponding icon */
+    setItemIcon (PathId, QFileInfo (mPath).exists() ?
+                         mIconProvider->icon (QFileInfo (mPath)) :
+                         defaultIcon());
+
+    /* Store full path as tooltip */
+    setToolTip (filePath());
+    setItemData (PathId, toolTip(), Qt::ToolTipRole);
+
+    refreshText();
 }
 
@@ -148,78 +142,57 @@
 }
 
+void VBoxFilePathSelectorWidget::resizeEvent (QResizeEvent *aEvent)
+{
+    QIWithRetranslateUI<QComboBox>::resizeEvent (aEvent);
+    refreshText();
+}
+
 void VBoxFilePathSelectorWidget::retranslateUi()
 {
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
+    /* Retranslate 'path' item */
     mNoneStr = tr ("None");
-    mCbPath->setItemText (SelectId, tr ("Other..."));
-    if (mCbPath->count() - 1 == ResetId)
-        mCbPath->setItemText (ResetId, tr ("Reset"));
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-}
-
-void VBoxFilePathSelectorWidget::cbActivated (int aIndex)
-{
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-   switch (aIndex)
-   {
-       case SelectId:
-           {
-               emit selectPath();
-               break;
-           }
-       case ResetId:
-           {
-               emit resetPath();
-               break;
-           }
-   }
-   mCbPath->setCurrentIndex (PathId);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-   NOREF (aIndex);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-}
-
-void VBoxFilePathSelectorWidget::init()
-{
-    mIconProvider = new QFileIconProvider();
-    QHBoxLayout *layout = new QHBoxLayout (this);
-    VBoxGlobal::setLayoutMargin (layout, 0);
-#ifdef VBOX_USE_COMBOBOX_PATH_SELECTOR
-    mCbPath = new QComboBox();
-    mCbPath->setMinimumWidth (200);
-    mCbPath->insertItem (PathId, "");
-    mCbPath->insertItem (SelectId, "");
-    mCbPath->insertItem (ResetId, "");
-    connect (mCbPath, SIGNAL (activated (int)),
-             this, SLOT (cbActivated (int)));
-    layout->addWidget (mCbPath);
-#else /* VBOX_USE_COMBOBOX_PATH_SELECTOR */
-    mLbIcon = new QLabel();
-    mLbPath = new QILabel();
-    mLbPath->setSizePolicy (QSizePolicy (QSizePolicy::Expanding, QSizePolicy::Fixed));
-    mLbPath->setMinimumWidth (180);
-    mLbPath->setFullSizeSelection (true);
-    mTbSelect = new QToolButton();
-    mTbSelect->setIcon (QIcon (":/select_file_16px.png"));
-    mTbSelect->setAutoRaise (true);
-    connect (mTbSelect, SIGNAL (clicked ()),
-             this, SIGNAL (selectPath()));
-    mTbReset = new QToolButton();
-    mTbReset->setIcon (QIcon (":/eraser_16px.png"));
-    mTbReset->setAutoRaise (true);
-    connect (mTbReset, SIGNAL (clicked ()),
-             this, SIGNAL (resetPath()));
-    
-    layout->addWidget (mLbIcon);
-    layout->addWidget (mLbPath);
-    layout->addWidget (mTbSelect);
-    layout->addWidget (mTbReset);
-#endif /* !VBOX_USE_COMBOBOX_PATH_SELECTOR */
-
-     /* Applying language settings */
-    retranslateUi();
-
-    /* Set to none */
-    setPath ("");
+    if (mPath.isNull())
+    {
+        setItemText (PathId, mNoneStr);
+        setItemData (PathId, mNoneTip, Qt::ToolTipRole);
+        setToolTip (mNoneTip);
+    }
+
+    /* Retranslate 'select' item */
+    setItemText (SelectId, tr ("Other..."));
+
+    /* Retranslate 'reset' item */
+    if (count() - 1 == ResetId)
+        setItemText (ResetId, tr ("Reset"));
+
+    /* Retranslate copy action */
+    mCopyAction->setText (tr ("&Copy"));
+}
+
+void VBoxFilePathSelectorWidget::onActivated (int aIndex)
+{
+    switch (aIndex)
+    {
+        case SelectId:
+        {
+            emit selectPath();
+            break;
+        }
+        case ResetId:
+        {
+            emit resetPath();
+            break;
+        }
+        default:
+            break;
+    }
+    setCurrentIndex (PathId);
+}
+
+void VBoxFilePathSelectorWidget::copyToClipboard()
+{
+    QString text = itemData (PathId, Qt::ToolTipRole).toString();
+    QApplication::clipboard()->setText (text, QClipboard::Clipboard);
+    QApplication::clipboard()->setText (text, QClipboard::Selection);
 }
 
@@ -230,28 +203,77 @@
     else
         return mIconProvider->icon (QFileIconProvider::File);
-}  
-
-QString VBoxFilePathSelectorWidget::filePath (const QString &aName, bool bLast) const
-{
-    if (!aName.isEmpty())
+}
+
+QString VBoxFilePathSelectorWidget::filePath() const
+{
+    if (!mPath.isNull())
     {
         if (mMode == PathMode)
+            return QDir (mPath).path();
+        else
+            return QFileInfo (mPath).filePath();
+    }
+
+    return mNoneTip;
+}
+
+QString VBoxFilePathSelectorWidget::shrinkText (int aWidth) const
+{
+    /* Full text stored in toolTip */
+    QString fullText = toolTip();
+    if (fullText.isEmpty())
+        return fullText;
+
+    int oldSize = fontMetrics().width (fullText);
+    int indentSize = fontMetrics().width ("...x");
+
+    /* Compress text */
+    int start = 0;
+    int finish = 0;
+    int position = 0;
+    int textWidth = 0;
+    do {
+        textWidth = fontMetrics().width (fullText);
+        if (textWidth + indentSize > aWidth)
         {
-            QDir dir (aName);
-            if (bLast)
-                return dir.dirName();
-            else
-                return dir.path();
+            start = 0;
+            finish = fullText.length();
+
+            /* Selecting remove position */
+            QRegExp regExp ("([\\\\/][^\\\\^/]+[\\\\/]?$)");
+            int newFinish = regExp.indexIn (fullText);
+            if (newFinish != -1)
+                finish = newFinish;
+            position = (finish - start) / 2;
+
+            if (position == finish)
+               break;
+
+            fullText.remove (position, 1);
         }
-        else
-        {
-            QFileInfo fi (aName);
-            if (bLast)
-                return fi.fileName();
-            else
-                return fi.filePath();
-        }
-    }
-    return "";
-}  
-
+    } while (textWidth + indentSize > aWidth);
+
+    fullText.insert (position, "...");
+    int newSize = fontMetrics().width (fullText);
+
+    return newSize < oldSize ? fullText : toolTip();
+}
+
+void VBoxFilePathSelectorWidget::refreshText()
+{
+    if (mPath.isNull())
+    {
+        if (itemText (PathId) != mNoneStr)
+            setItemText (PathId, mNoneStr);
+    }
+    else
+    {
+        /* Compress text in combobox */
+        QStyleOptionComboBox options;
+        options.initFrom (this);
+        QRect rect = QApplication::style()->subControlRect (
+            QStyle::CC_ComboBox, &options, QStyle::SC_ComboBoxEditField);
+        setItemText (PathId, shrinkText (rect.width() - iconSize().width()));
+    }
+}
+
Index: trunk/src/VBox/Frontends/VirtualBox4/src/VBoxGLSettingsGeneral.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/src/VBoxGLSettingsGeneral.cpp	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/src/VBoxGLSettingsGeneral.cpp	(revision 11229)
@@ -54,5 +54,5 @@
 
 void VBoxGLSettingsGeneral::putBackTo (CSystemProperties &aProps,
-                                           VBoxGlobalSettings &)
+                                       VBoxGlobalSettings &)
 {
     if (mPsVdi->isModified())
@@ -76,15 +76,18 @@
     Ui::VBoxGLSettingsGeneral::retranslateUi (this);
 
-    mPsVdi->setPathWhatsThis (tr ("Displays the path to the default VDI folder. This folder is used, if not explicitly specified otherwise, when adding existing or creating new virtual hard disks."));
-    mPsVdi->setSelectorWhatsThis (tr ("Opens a dialog to select the default VDI folder."));
-    mPsVdi->setResetWhatsThis (tr ("Resets the VDI folder path to the default value. The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsVdi->setWhatsThis (tr ("Displays the path to the default VDI folder. This folder is used, if not explicitly specified otherwise, when adding existing or creating new virtual hard disks."));
+    mPsVdi->setNoneToolTip (tr ("The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsVdi->setSelectToolTip (tr ("Opens a dialog to select the default VDI folder."));
+    mPsVdi->setResetToolTip (tr ("Resets the VDI folder path to the default value."));
 
-    mPsMach->setPathWhatsThis (tr ("Displays the path to the default virtual machine folder. This folder is used, if not explicitly specified otherwise, when creating new virtual machines."));
-    mPsMach->setSelectorWhatsThis (tr ("Opens a dialog to select the default virtual machine folder."));
-    mPsMach->setResetWhatsThis (tr ("Resets the virtual machine folder path to the default value. The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsMach->setWhatsThis (tr ("Displays the path to the default virtual machine folder. This folder is used, if not explicitly specified otherwise, when creating new virtual machines."));
+    mPsMach->setNoneToolTip (tr ("The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsMach->setSelectToolTip (tr ("Opens a dialog to select the default virtual machine folder."));
+    mPsMach->setResetToolTip (tr ("Resets the virtual machine folder path to the default value."));
 
-    mPsVRDP->setPathWhatsThis (tr ("Displays the path to the library that provides authentication for Remote Display (VRDP) clients."));
-    mPsVRDP->setSelectorWhatsThis (tr ("Opens a dialog to select the VRDP authentication library file."));
-    mPsVRDP->setResetWhatsThis (tr ("Resets the authentication library file to the default value. The actual default library file will be displayed after accepting the changes and opening this dialog again."));
+    mPsVRDP->setWhatsThis (tr ("Displays the path to the library that provides authentication for Remote Display (VRDP) clients."));
+    mPsVRDP->setNoneToolTip (tr ("The actual default library file will be displayed after accepting the changes and opening this dialog again."));
+    mPsVRDP->setSelectToolTip (tr ("Opens a dialog to select the VRDP authentication library file."));
+    mPsVRDP->setResetToolTip (tr ("Resets the authentication library file to the default value."));
 }
 
@@ -93,5 +96,5 @@
     VBoxFilePathSelectorWidget *ps = qobject_cast<VBoxFilePathSelectorWidget*> (sender());
     Assert (ps);
-    ps->setPath ("");
+    ps->setPath (QString::null);
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsGeneral.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsGeneral.cpp	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsGeneral.cpp	(revision 11229)
@@ -377,7 +377,8 @@
 
     /* Path selector */
-    mPsSnapshot->setPathWhatsThis (tr ("Displays the path where snapshots of this virtual machine will be stored. Note that snapshots can take quite a lot of disk space."));
-    mPsSnapshot->setSelectorWhatsThis (tr ("Selects the snapshot folder path."));
-    mPsSnapshot->setResetWhatsThis (tr ("Resets the snapshot folder path to the default value. The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsSnapshot->setWhatsThis (tr ("Displays the path where snapshots of this virtual machine will be stored. Note that snapshots can take quite a lot of disk space."));
+    mPsSnapshot->setNoneToolTip (tr ("The actual default path will be displayed after accepting the changes and opening this dialog again."));
+    mPsSnapshot->setSelectToolTip (tr ("Selects the snapshot folder path."));
+    mPsSnapshot->setResetToolTip (tr ("Resets the snapshot folder path to the default value."));
 }
 
@@ -468,5 +469,5 @@
 void VBoxVMSettingsGeneral::resetSnapshotFolder()
 {
-    mPsSnapshot->setPath ("");
+    mPsSnapshot->setPath (QString::null);
 }
 
Index: trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsSFDetails.cpp
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsSFDetails.cpp	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/src/VBoxVMSettingsSFDetails.cpp	(revision 11229)
@@ -58,5 +58,5 @@
      /* Applying language settings */
     retranslateUi();
-    
+
     /* Validate the initial fields */
     validate();
@@ -115,4 +115,7 @@
     Ui::VBoxVMSettingsSFDetails::retranslateUi (this);
 
+    mPsPath->setNoneToolTip (tr ("No shared folder path is currently selected."));
+    mPsPath->setSelectToolTip (tr ("Selects shared folder path."));
+
     switch (mType)
     {
@@ -136,5 +139,5 @@
 
     mButtonBox->button (QDialogButtonBox::Ok)->setEnabled (!mPsPath->path().isEmpty() &&
-                                                           !mLeName->text().trimmed().isEmpty() && 
+                                                           !mLeName->text().trimmed().isEmpty() &&
                                                            !mLeName->text().contains(" ") &&
                                                            !mUsedNames.contains (pair));
Index: trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxGLSettingsGeneral.ui
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxGLSettingsGeneral.ui	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxGLSettingsGeneral.ui	(revision 11229)
@@ -23,6 +23,6 @@
     <x>0</x>
     <y>0</y>
-    <width>377</width>
-    <height>162</height>
+    <width>390</width>
+    <height>172</height>
    </rect>
   </property>
@@ -54,5 +54,12 @@
    </item>
    <item row="0" column="1" >
-    <widget class="VBoxFilePathSelectorWidget" native="1" name="mPsVdi" />
+    <widget class="VBoxFilePathSelectorWidget" name="mPsVdi" >
+     <property name="sizePolicy" >
+      <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
    </item>
    <item row="1" column="0" >
@@ -70,8 +77,15 @@
    </item>
    <item row="1" column="1" >
-    <widget class="VBoxFilePathSelectorWidget" native="1" name="mPsMach" />
+    <widget class="VBoxFilePathSelectorWidget" name="mPsMach" >
+     <property name="sizePolicy" >
+      <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
    </item>
    <item row="2" column="0" colspan="2" >
-    <widget class="Line" name="line" >
+    <widget class="Line" name="mLnSeparator" >
      <property name="orientation" >
       <enum>Qt::Horizontal</enum>
@@ -80,5 +94,5 @@
    </item>
    <item row="3" column="0" >
-    <widget class="QLabel" name="label_2" >
+    <widget class="QLabel" name="mLbVRDP" >
      <property name="text" >
       <string>V&amp;RDP Authentication Library:</string>
@@ -93,7 +107,14 @@
    </item>
    <item row="3" column="1" >
-    <widget class="VBoxFilePathSelectorWidget" native="1" name="mPsVRDP" />
+    <widget class="VBoxFilePathSelectorWidget" name="mPsVRDP" >
+     <property name="sizePolicy" >
+      <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+    </widget>
    </item>
-   <item row="4" column="1" >
+   <item row="4" column="0" colspan="2" >
     <spacer>
      <property name="orientation" >
@@ -102,6 +123,6 @@
      <property name="sizeHint" >
       <size>
-       <width>20</width>
-       <height>40</height>
+       <width>0</width>
+       <height>0</height>
       </size>
      </property>
@@ -113,5 +134,5 @@
   <customwidget>
    <class>VBoxFilePathSelectorWidget</class>
-   <extends>QWidget</extends>
+   <extends>QComboBox</extends>
    <header>VBoxFilePathSelectorWidget.h</header>
    <container>1</container>
Index: trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsGeneral.ui
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsGeneral.ui	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsGeneral.ui	(revision 11229)
@@ -24,5 +24,5 @@
     <y>0</y>
     <width>451</width>
-    <height>477</height>
+    <height>497</height>
    </rect>
   </property>
@@ -843,5 +843,12 @@
        </item>
        <item row="4" column="1" >
-        <widget class="VBoxFilePathSelectorWidget" native="1" name="mPsSnapshot" />
+        <widget class="VBoxFilePathSelectorWidget" name="mPsSnapshot" >
+         <property name="sizePolicy" >
+          <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
+           <horstretch>0</horstretch>
+           <verstretch>0</verstretch>
+          </sizepolicy>
+         </property>
+        </widget>
        </item>
        <item row="5" column="1" >
@@ -958,4 +965,10 @@
  <customwidgets>
   <customwidget>
+   <class>VBoxFilePathSelectorWidget</class>
+   <extends>QComboBox</extends>
+   <header>VBoxFilePathSelectorWidget.h</header>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
    <class>BootItemsTable</class>
    <extends>QTreeWidget</extends>
@@ -967,10 +980,4 @@
    <header>QILabelSeparator.h</header>
   </customwidget>
-  <customwidget>
-   <class>VBoxFilePathSelectorWidget</class>
-   <extends>QWidget</extends>
-   <header>VBoxFilePathSelectorWidget.h</header>
-   <container>1</container>
-  </customwidget>
  </customwidgets>
  <resources/>
Index: trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsSFDetails.ui
===================================================================
--- trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsSFDetails.ui	(revision 11228)
+++ trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsSFDetails.ui	(revision 11229)
@@ -24,5 +24,5 @@
     <y>0</y>
     <width>218</width>
-    <height>181</height>
+    <height>196</height>
    </rect>
   </property>
@@ -42,9 +42,5 @@
    </item>
    <item row="0" column="1" >
-    <widget class="VBoxFilePathSelectorWidget" native="1" name="mPsPath" >
-     <property name="toolTip" >
-      <string>Displays the path to an existing folder on the host PC.</string>
-     </property>
-    </widget>
+    <widget class="VBoxFilePathSelectorWidget" name="mPsPath" />
    </item>
    <item row="1" column="0" >
@@ -106,13 +102,13 @@
  <customwidgets>
   <customwidget>
+   <class>VBoxFilePathSelectorWidget</class>
+   <extends>QComboBox</extends>
+   <header>VBoxFilePathSelectorWidget.h</header>
+   <container>1</container>
+  </customwidget>
+  <customwidget>
    <class>QIDialogButtonBox</class>
    <extends>QDialogButtonBox</extends>
    <header>QIDialogButtonBox.h</header>
-  </customwidget>
-  <customwidget>
-   <class>VBoxFilePathSelectorWidget</class>
-   <extends>QWidget</extends>
-   <header>VBoxFilePathSelectorWidget.h</header>
-   <container>1</container>
   </customwidget>
  </customwidgets>
