Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp	(revision 85955)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSB.cpp	(revision 85956)
@@ -758,19 +758,19 @@
     /* Configure USB filter details dialog: */
     UIMachineSettingsUSBFilterDetails dlgFilterDetails(this);
-    dlgFilterDetails.m_pLineEditName->setText(pItem->m_strName);
-    dlgFilterDetails.m_pLineEditVendorID->setText(pItem->m_strVendorId);
-    dlgFilterDetails.m_pLineEditProductID->setText(pItem->m_strProductId);
-    dlgFilterDetails.m_pLineEditRevision->setText(pItem->m_strRevision);
-    dlgFilterDetails.m_pLineEditPort->setText(pItem->m_strPort);
-    dlgFilterDetails.m_pLineEditManufacturer->setText(pItem->m_strManufacturer);
-    dlgFilterDetails.m_pLineEditProduct->setText(pItem->m_strProduct);
-    dlgFilterDetails.m_pLineEditSerialNo->setText(pItem->m_strSerialNumber);
+    dlgFilterDetails.m_pEditorName->setText(pItem->m_strName);
+    dlgFilterDetails.m_pEditorVendorID->setText(pItem->m_strVendorId);
+    dlgFilterDetails.m_pEditorProductID->setText(pItem->m_strProductId);
+    dlgFilterDetails.m_pEditorRevision->setText(pItem->m_strRevision);
+    dlgFilterDetails.m_pEditorPort->setText(pItem->m_strPort);
+    dlgFilterDetails.m_pEditorManufacturer->setText(pItem->m_strManufacturer);
+    dlgFilterDetails.m_pEditorProduct->setText(pItem->m_strProduct);
+    dlgFilterDetails.m_pEditorSerialNo->setText(pItem->m_strSerialNumber);
     const QString strRemote = pItem->m_strRemote.toLower();
     if (strRemote == "yes" || strRemote == "true" || strRemote == "1")
-        dlgFilterDetails.m_pComboBoxRemote->setCurrentIndex(ModeOn);
+        dlgFilterDetails.m_pComboRemote->setCurrentIndex(ModeOn);
     else if (strRemote == "no" || strRemote == "false" || strRemote == "0")
-        dlgFilterDetails.m_pComboBoxRemote->setCurrentIndex(ModeOff);
+        dlgFilterDetails.m_pComboRemote->setCurrentIndex(ModeOff);
     else
-        dlgFilterDetails.m_pComboBoxRemote->setCurrentIndex(ModeAny);
+        dlgFilterDetails.m_pComboRemote->setCurrentIndex(ModeAny);
 
     /* Run USB filter details dialog: */
@@ -778,13 +778,13 @@
     {
         /* Update edited tree-widget item: */
-        pItem->m_strName = dlgFilterDetails.m_pLineEditName->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditName->text();
-        pItem->m_strVendorId = dlgFilterDetails.m_pLineEditVendorID->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditVendorID->text();
-        pItem->m_strProductId = dlgFilterDetails.m_pLineEditProductID->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditProductID->text();
-        pItem->m_strRevision = dlgFilterDetails.m_pLineEditRevision->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditRevision->text();
-        pItem->m_strManufacturer = dlgFilterDetails.m_pLineEditManufacturer->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditManufacturer->text();
-        pItem->m_strProduct = dlgFilterDetails.m_pLineEditProduct->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditProduct->text();
-        pItem->m_strSerialNumber = dlgFilterDetails.m_pLineEditSerialNo->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditSerialNo->text();
-        pItem->m_strPort = dlgFilterDetails.m_pLineEditPort->text().isEmpty() ? QString() : dlgFilterDetails.m_pLineEditPort->text();
-        switch (dlgFilterDetails.m_pComboBoxRemote->currentIndex())
+        pItem->m_strName = dlgFilterDetails.m_pEditorName->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorName->text();
+        pItem->m_strVendorId = dlgFilterDetails.m_pEditorVendorID->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorVendorID->text();
+        pItem->m_strProductId = dlgFilterDetails.m_pEditorProductID->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorProductID->text();
+        pItem->m_strRevision = dlgFilterDetails.m_pEditorRevision->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorRevision->text();
+        pItem->m_strManufacturer = dlgFilterDetails.m_pEditorManufacturer->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorManufacturer->text();
+        pItem->m_strProduct = dlgFilterDetails.m_pEditorProduct->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorProduct->text();
+        pItem->m_strSerialNumber = dlgFilterDetails.m_pEditorSerialNo->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorSerialNo->text();
+        pItem->m_strPort = dlgFilterDetails.m_pEditorPort->text().isEmpty() ? QString() : dlgFilterDetails.m_pEditorPort->text();
+        switch (dlgFilterDetails.m_pComboRemote->currentIndex())
         {
             case ModeAny: pItem->m_strRemote = QString(); break;
Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp	(revision 85955)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.cpp	(revision 85956)
@@ -30,41 +30,26 @@
 UIMachineSettingsUSBFilterDetails::UIMachineSettingsUSBFilterDetails(QWidget *pParent /* = 0 */)
     : QIWithRetranslateUI2<QIDialog>(pParent, Qt::Sheet)
-    , m_pComboBoxRemote(0)
-    , m_pLineEditName(0)
-    , m_pLineEditVendorID(0)
-    , m_pLineEditProductID(0)
-    , m_pLineEditRevision(0)
-    , m_pLineEditPort(0)
-    , m_pLineEditManufacturer(0)
-    , m_pLineEditProduct(0)
-    , m_pLineEditSerialNo(0)
+    , m_pLayoutMain(0)
+    , m_pLabelName(0)
+    , m_pEditorName(0)
+    , m_pLabelVendorID(0)
+    , m_pEditorVendorID(0)
+    , m_pLabelProductID(0)
+    , m_pEditorProductID(0)
+    , m_pLabelRevision(0)
+    , m_pEditorRevision(0)
+    , m_pLabelManufacturer(0)
+    , m_pEditorManufacturer(0)
+    , m_pLabelProduct(0)
+    , m_pEditorProduct(0)
+    , m_pLabelSerialNo(0)
+    , m_pEditorSerialNo(0)
     , m_pLabelPort(0)
+    , m_pEditorPort(0)
     , m_pLabelRemote(0)
-    , m_pLabelProductID(0)
-    , m_pLabelName(0)
-    , m_pLabelVendorID(0)
-    , m_pLabelRevision(0)
-    , m_pLabelManufacturer(0)
-    , m_pLabelProduct(0)
-    , m_pLabelSerialNo(0)
-    , gridLayout(0)
-{
-    prepareWidgets();
-
-    m_pComboBoxRemote->insertItem (UIMachineSettingsUSB::ModeAny, ""); /* Any */
-    m_pComboBoxRemote->insertItem (UIMachineSettingsUSB::ModeOn,  ""); /* Yes */
-    m_pComboBoxRemote->insertItem (UIMachineSettingsUSB::ModeOff, ""); /* No */
-
-    m_pLineEditName->setValidator (new QRegExpValidator (QRegExp (".+"), this));
-    m_pLineEditVendorID->setValidator (new QRegExpValidator (QRegExp ("[0-9a-fA-F]{0,4}"), this));
-    m_pLineEditProductID->setValidator (new QRegExpValidator (QRegExp ("[0-9a-fA-F]{0,4}"), this));
-    m_pLineEditRevision->setValidator (new QRegExpValidator (QRegExp ("[0-9a-fA-F]{0,4}"), this));
-    m_pLineEditPort->setValidator (new QRegExpValidator (QRegExp ("[0-9]*"), this));
-
-    /* Applying language settings */
-    retranslateUi();
-
-    resize (minimumSize());
-    setSizePolicy (QSizePolicy::Fixed, QSizePolicy::Fixed);
+    , m_pComboRemote(0)
+    , m_pButtonBox(0)
+{
+    prepare();
 }
 
@@ -72,155 +57,215 @@
 {
     setWindowTitle(tr("USB Filter Details"));
+
     m_pLabelName->setText(tr("&Name:"));
-    m_pLineEditName->setToolTip(tr("Holds the filter name."));
+    m_pEditorName->setToolTip(tr("Holds the filter name."));
     m_pLabelVendorID->setText(tr("&Vendor ID:"));
-    m_pLineEditVendorID->setToolTip(tr("Holds the vendor ID filter. The "
+    m_pEditorVendorID->setToolTip(tr("Holds the vendor ID filter. The "
                                        "<i>exact match</i> string format is <tt>XXXX</tt> where <tt>X</tt> is a "
                                        "hexadecimal digit. An empty string will match any value."));
     m_pLabelProductID->setText(tr("&Product ID:"));
-    m_pLineEditProductID->setToolTip(tr("Holds the product ID filter. The "
+    m_pEditorProductID->setToolTip(tr("Holds the product ID filter. The "
                                         "<i>exact match</i> string format is <tt>XXXX</tt> where <tt>X</tt> is a "
                                         "hexadecimal digit. An empty string will match any value."));
     m_pLabelRevision->setText(tr("&Revision:"));
-    m_pLineEditRevision->setToolTip(tr("Holds the revision number filter. The "
+    m_pEditorRevision->setToolTip(tr("Holds the revision number filter. The "
                                        "<i>exact match</i> string format is <tt>IIFF</tt> where <tt>I</tt> is a decimal "
                                        "digit of the integer part and <tt>F</tt> is a decimal digit of the fractional "
                                        "part. An empty string will match any value."));
     m_pLabelManufacturer->setText(tr("&Manufacturer:"));
-    m_pLineEditManufacturer->setToolTip(tr("Holds the manufacturer filter as an "
+    m_pEditorManufacturer->setToolTip(tr("Holds the manufacturer filter as an "
                                            "<i>exact match</i> string. An empty string will match any value."));
     m_pLabelProduct->setText(tr("Pro&duct:"));
-    m_pLineEditProduct->setToolTip(tr("Holds the product name filter as an "
+    m_pEditorProduct->setToolTip(tr("Holds the product name filter as an "
                                       "<i>exact match</i> string. An empty string will match any value."));
     m_pLabelSerialNo->setText(tr("&Serial No.:"));
-    m_pLineEditSerialNo->setToolTip(tr("Holds the serial number filter as an "
+    m_pEditorSerialNo->setToolTip(tr("Holds the serial number filter as an "
                                        "<i>exact match</i> string. An empty string will match any value."));
     m_pLabelPort->setText(tr("Por&t:"));
-    m_pLineEditPort->setToolTip(tr("Holds the host USB port filter as an "
+    m_pEditorPort->setToolTip(tr("Holds the host USB port filter as an "
                                    "<i>exact match</i> string. An empty string will match any value."));
     m_pLabelRemote->setText(tr("R&emote:"));
-    m_pComboBoxRemote->setToolTip(tr("Holds whether this filter applies to USB "
+    m_pComboRemote->setToolTip(tr("Holds whether this filter applies to USB "
                                      "devices attached locally to the host computer (<i>No</i>), to a VRDP client's "
                                      "computer (<i>Yes</i>), or both (<i>Any</i>)."));
 
-    m_pComboBoxRemote->setItemText (UIMachineSettingsUSB::ModeAny, tr ("Any", "remote"));
-    m_pComboBoxRemote->setItemText (UIMachineSettingsUSB::ModeOn,  tr ("Yes", "remote"));
-    m_pComboBoxRemote->setItemText (UIMachineSettingsUSB::ModeOff, tr ("No",  "remote"));
-}
-
+    m_pComboRemote->setItemText(UIMachineSettingsUSB::ModeAny, tr("Any", "remote"));
+    m_pComboRemote->setItemText(UIMachineSettingsUSB::ModeOn,  tr("Yes", "remote"));
+    m_pComboRemote->setItemText(UIMachineSettingsUSB::ModeOff, tr("No",  "remote"));
+}
+
+void UIMachineSettingsUSBFilterDetails::prepare()
+{
+    /* Prepare everything: */
+    prepareWidgets();
+    prepareConnections();
+
+    /* Apply language settings: */
+    retranslateUi();
+
+    /* Adjust size: */
+    resize(minimumSize());
+    setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
+}
 
 void UIMachineSettingsUSBFilterDetails::prepareWidgets()
 {
-    if (objectName().isEmpty())
-        setObjectName(QStringLiteral("UIMachineSettingsUSBFilterDetails"));
-    resize(350, 363);
-    setMinimumSize(QSize(350, 0));
-    gridLayout = new QGridLayout(this);
-    gridLayout->setObjectName(QStringLiteral("gridLayout"));
-    m_pLabelName = new QLabel();
-    m_pLabelName->setObjectName(QStringLiteral("m_pLabelName"));
-    m_pLabelName->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelName, 0, 0, 1, 1);
-
-    m_pLineEditName = new QLineEdit();
-    m_pLineEditName->setObjectName(QStringLiteral("m_pLineEditName"));
-    gridLayout->addWidget(m_pLineEditName, 0, 1, 1, 1);
-
-    m_pLabelVendorID = new QLabel();
-    m_pLabelVendorID->setObjectName(QStringLiteral("m_pLabelVendorID"));
-    m_pLabelVendorID->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelVendorID, 1, 0, 1, 1);
-
-    m_pLineEditVendorID = new QLineEdit();
-    m_pLineEditVendorID->setObjectName(QStringLiteral("m_pLineEditVendorID"));
-    gridLayout->addWidget(m_pLineEditVendorID, 1, 1, 1, 1);
-
-    m_pLabelProductID = new QLabel();
-    m_pLabelProductID->setObjectName(QStringLiteral("m_pLabelProductID"));
-    m_pLabelProductID->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelProductID, 2, 0, 1, 1);
-
-    m_pLineEditProductID = new QLineEdit();
-    m_pLineEditProductID->setObjectName(QStringLiteral("m_pLineEditProductID"));
-    gridLayout->addWidget(m_pLineEditProductID, 2, 1, 1, 1);
-
-    m_pLabelRevision = new QLabel();
-    m_pLabelRevision->setObjectName(QStringLiteral("m_pLabelRevision"));
-    m_pLabelRevision->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelRevision, 3, 0, 1, 1);
-
-    m_pLineEditRevision = new QLineEdit();
-    m_pLineEditRevision->setObjectName(QStringLiteral("m_pLineEditRevision"));
-    gridLayout->addWidget(m_pLineEditRevision, 3, 1, 1, 1);
-
-    m_pLabelManufacturer = new QLabel();
-    m_pLabelManufacturer->setObjectName(QStringLiteral("m_pLabelManufacturer"));
-    m_pLabelManufacturer->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelManufacturer, 4, 0, 1, 1);
-
-    m_pLineEditManufacturer = new QLineEdit();
-    m_pLineEditManufacturer->setObjectName(QStringLiteral("m_pLineEditManufacturer"));
-    gridLayout->addWidget(m_pLineEditManufacturer, 4, 1, 1, 1);
-
-    m_pLabelProduct = new QLabel();
-    m_pLabelProduct->setObjectName(QStringLiteral("m_pLabelProduct"));
-    m_pLabelProduct->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelProduct, 5, 0, 1, 1);
-
-    m_pLineEditProduct = new QLineEdit();
-    m_pLineEditProduct->setObjectName(QStringLiteral("m_pLineEditProduct"));
-    gridLayout->addWidget(m_pLineEditProduct, 5, 1, 1, 1);
-
-    m_pLabelSerialNo = new QLabel();
-    m_pLabelSerialNo->setObjectName(QStringLiteral("m_pLabelSerialNo"));
-    m_pLabelSerialNo->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelSerialNo, 6, 0, 1, 1);
-
-    m_pLineEditSerialNo = new QLineEdit();
-    m_pLineEditSerialNo->setObjectName(QStringLiteral("m_pLineEditSerialNo"));
-    gridLayout->addWidget(m_pLineEditSerialNo, 6, 1, 1, 1);
-
-    m_pLabelPort = new QLabel();
-    m_pLabelPort->setObjectName(QStringLiteral("m_pLabelPort"));
-    m_pLabelPort->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelPort, 7, 0, 1, 1);
-
-    m_pLineEditPort = new QLineEdit();
-    m_pLineEditPort->setObjectName(QStringLiteral("m_pLineEditPort"));
-    gridLayout->addWidget(m_pLineEditPort, 7, 1, 1, 1);
-
-    m_pLabelRemote = new QLabel();
-    m_pLabelRemote->setObjectName(QStringLiteral("m_pLabelRemote"));
-    m_pLabelRemote->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter);
-    gridLayout->addWidget(m_pLabelRemote, 8, 0, 1, 1);
-
-    m_pComboBoxRemote = new QComboBox();
-    m_pComboBoxRemote->setObjectName(QStringLiteral("m_pComboBoxRemote"));
-    QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
-    sizePolicy.setHorizontalStretch(0);
-    sizePolicy.setVerticalStretch(0);
-    sizePolicy.setHeightForWidth(m_pComboBoxRemote->sizePolicy().hasHeightForWidth());
-    m_pComboBoxRemote->setSizePolicy(sizePolicy);
-    gridLayout->addWidget(m_pComboBoxRemote, 8, 1, 1, 1);
-
-    QSpacerItem *pSpacerItem = new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding);
-    gridLayout->addItem(pSpacerItem, 9, 1, 1, 1);
-
-    QIDialogButtonBox *pButtonBox = new QIDialogButtonBox();
-    pButtonBox->setObjectName(QStringLiteral("pButtonBox"));
-    pButtonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::NoButton|QDialogButtonBox::Ok);
-    gridLayout->addWidget(pButtonBox, 10, 0, 1, 2);
-
-    m_pLabelName->setBuddy(m_pLineEditName);
-    m_pLabelVendorID->setBuddy(m_pLineEditVendorID);
-    m_pLabelProductID->setBuddy(m_pLineEditProductID);
-    m_pLabelRevision->setBuddy(m_pLineEditRevision);
-    m_pLabelManufacturer->setBuddy(m_pLineEditManufacturer);
-    m_pLabelProduct->setBuddy(m_pLineEditProduct);
-    m_pLabelSerialNo->setBuddy(m_pLineEditSerialNo);
-    m_pLabelPort->setBuddy(m_pLineEditPort);
-    m_pLabelRemote->setBuddy(m_pComboBoxRemote);
-
-    QObject::connect(pButtonBox, &QIDialogButtonBox::accepted, this, &UIMachineSettingsUSBFilterDetails::accept);
-    QObject::connect(pButtonBox, &QIDialogButtonBox::rejected, this, &UIMachineSettingsUSBFilterDetails::reject);
-}
+    m_pLayoutMain = new QGridLayout(this);
+    if (m_pLayoutMain)
+    {
+        m_pLayoutMain->setRowStretch(9, 1);
+
+        m_pLabelName = new QLabel(this);
+        if (m_pLabelName)
+        {
+            m_pLabelName->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelName, 0, 0);
+        }
+        m_pEditorName = new QLineEdit(this);
+        if (m_pEditorName)
+        {
+            if (m_pLabelName)
+                m_pLabelName->setBuddy(m_pEditorName);
+            m_pEditorName->setValidator(new QRegExpValidator(QRegExp(".+"), this));
+
+            m_pLayoutMain->addWidget(m_pEditorName, 0, 1);
+        }
+
+        m_pLabelVendorID = new QLabel(this);
+        if (m_pLabelVendorID)
+        {
+            m_pLabelVendorID->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelVendorID, 1, 0);
+        }
+        m_pEditorVendorID = new QLineEdit(this);
+        if (m_pEditorVendorID)
+        {
+            if (m_pLabelVendorID)
+                m_pLabelVendorID->setBuddy(m_pEditorVendorID);
+            m_pEditorVendorID->setValidator(new QRegExpValidator(QRegExp("[0-9a-fA-F]{0,4}"), this));
+
+            m_pLayoutMain->addWidget(m_pEditorVendorID, 1, 1);
+        }
+
+        m_pLabelProductID = new QLabel(this);
+        if (m_pLabelProductID)
+        {
+            m_pLabelProductID->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelProductID, 2, 0);
+        }
+        m_pEditorProductID = new QLineEdit(this);
+        if (m_pEditorProductID)
+        {
+            if (m_pLabelProductID)
+                m_pLabelProductID->setBuddy(m_pEditorProductID);
+            m_pEditorProductID->setValidator(new QRegExpValidator(QRegExp("[0-9a-fA-F]{0,4}"), this));
+
+            m_pLayoutMain->addWidget(m_pEditorProductID, 2, 1);
+        }
+
+        m_pLabelRevision = new QLabel(this);
+        if (m_pLabelRevision)
+        {
+            m_pLabelRevision->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelRevision, 3, 0);
+        }
+        m_pEditorRevision = new QLineEdit(this);
+        if (m_pEditorRevision)
+        {
+            if (m_pLabelRevision)
+                m_pLabelRevision->setBuddy(m_pEditorRevision);
+            m_pEditorRevision->setValidator(new QRegExpValidator(QRegExp("[0-9a-fA-F]{0,4}"), this));
+
+            m_pLayoutMain->addWidget(m_pEditorRevision, 3, 1);
+        }
+
+        m_pLabelManufacturer = new QLabel(this);
+        if (m_pLabelManufacturer)
+        {
+            m_pLabelManufacturer->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelManufacturer, 4, 0);
+        }
+        m_pEditorManufacturer = new QLineEdit(this);
+        if (m_pEditorManufacturer)
+        {
+            if (m_pLabelManufacturer)
+                m_pLabelManufacturer->setBuddy(m_pEditorManufacturer);
+            m_pLayoutMain->addWidget(m_pEditorManufacturer, 4, 1);
+        }
+
+        m_pLabelProduct = new QLabel(this);
+        if (m_pLabelProduct)
+        {
+            m_pLabelProduct->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelProduct, 5, 0);
+        }
+        m_pEditorProduct = new QLineEdit(this);
+        if (m_pEditorProduct)
+        {
+            if (m_pLabelProduct)
+                m_pLabelProduct->setBuddy(m_pEditorProduct);
+            m_pLayoutMain->addWidget(m_pEditorProduct, 5, 1);
+        }
+
+        m_pLabelSerialNo = new QLabel(this);
+        if (m_pLabelSerialNo)
+        {
+            m_pLabelSerialNo->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelSerialNo, 6, 0);
+        }
+        m_pEditorSerialNo = new QLineEdit(this);
+        if (m_pEditorSerialNo)
+        {
+            if (m_pLabelSerialNo)
+                m_pLabelSerialNo->setBuddy(m_pEditorSerialNo);
+            m_pLayoutMain->addWidget(m_pEditorSerialNo, 6, 1);
+        }
+
+        m_pLabelPort = new QLabel(this);
+        if (m_pLabelPort)
+        {
+            m_pLabelPort->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelPort, 7, 0);
+        }
+        m_pEditorPort = new QLineEdit(this);
+        if (m_pEditorPort)
+        {
+            if (m_pLabelPort)
+                m_pLabelPort->setBuddy(m_pEditorPort);
+            m_pEditorPort->setValidator(new QRegExpValidator(QRegExp("[0-9]*"), this));
+
+            m_pLayoutMain->addWidget(m_pEditorPort, 7, 1);
+        }
+
+        m_pLabelRemote = new QLabel(this);
+        if (m_pLabelRemote)
+        {
+            m_pLabelRemote->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
+            m_pLayoutMain->addWidget(m_pLabelRemote, 8, 0);
+        }
+        m_pComboRemote = new QComboBox(this);
+        if (m_pComboRemote)
+        {
+            if (m_pLabelRemote)
+                m_pLabelRemote->setBuddy(m_pComboRemote);
+            m_pComboRemote->insertItem(UIMachineSettingsUSB::ModeAny, QString()); /* Any */
+            m_pComboRemote->insertItem(UIMachineSettingsUSB::ModeOn,  QString()); /* Yes */
+            m_pComboRemote->insertItem(UIMachineSettingsUSB::ModeOff, QString()); /* No */
+
+            m_pLayoutMain->addWidget(m_pComboRemote, 8, 1);
+        }
+
+        m_pButtonBox = new QIDialogButtonBox(this);
+        if (m_pButtonBox)
+        {
+            m_pButtonBox->setStandardButtons(QDialogButtonBox::Cancel | QDialogButtonBox::Ok);
+            m_pLayoutMain->addWidget(m_pButtonBox, 10, 0, 1, 2);
+        }
+    }
+}
+
+void UIMachineSettingsUSBFilterDetails::prepareConnections()
+{
+    connect(m_pButtonBox, &QIDialogButtonBox::accepted, this, &UIMachineSettingsUSBFilterDetails::accept);
+    connect(m_pButtonBox, &QIDialogButtonBox::rejected, this, &UIMachineSettingsUSBFilterDetails::reject);
+}
Index: /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.h
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.h	(revision 85955)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsUSBFilterDetails.h	(revision 85956)
@@ -31,4 +31,5 @@
 class QLabel;
 class QLineEdit;
+class QIDialogButtonBox;
 
 class SHARED_LIBRARY_STUFF UIMachineSettingsUSBFilterDetails : public QIWithRetranslateUI2<QIDialog>
@@ -40,30 +41,60 @@
     UIMachineSettingsUSBFilterDetails(QWidget *pParent = 0);
 
+protected:
+
+    /** Handles translation event. */
+    virtual void retranslateUi() /* override */;
+
 private:
 
+    /** Prepares all. */
+    void prepare();
+    /** Prepares widgets. */
     void prepareWidgets();
-    void retranslateUi();
+    /** Prepares connections. */
+    void prepareConnections();
 
     /** @name Widgets
      * @{ */
-       QComboBox *m_pComboBoxRemote;
-       QLineEdit *m_pLineEditName;
-       QLineEdit *m_pLineEditVendorID;
-       QLineEdit *m_pLineEditProductID;
-       QLineEdit *m_pLineEditRevision;
-       QLineEdit *m_pLineEditPort;
-       QLineEdit *m_pLineEditManufacturer;
-       QLineEdit *m_pLineEditProduct;
-       QLineEdit *m_pLineEditSerialNo;
-       QLabel *m_pLabelPort;
-       QLabel *m_pLabelRemote;
-       QLabel *m_pLabelProductID;
-       QLabel *m_pLabelName;
-       QLabel *m_pLabelVendorID;
-       QLabel *m_pLabelRevision;
-       QLabel *m_pLabelManufacturer;
-       QLabel *m_pLabelProduct;
-       QLabel *m_pLabelSerialNo;
-       QGridLayout *gridLayout;
+        /** Holds the main layout instance. */
+        QGridLayout       *m_pLayoutMain;
+        /** Holds the name label instance. */
+        QLabel            *m_pLabelName;
+        /** Holds the name editor instance. */
+        QLineEdit         *m_pEditorName;
+        /** Holds the vendor ID label instance. */
+        QLabel            *m_pLabelVendorID;
+        /** Holds the vendor ID editor instance. */
+        QLineEdit         *m_pEditorVendorID;
+        /** Holds the product ID label instance. */
+        QLabel            *m_pLabelProductID;
+        /** Holds the product ID editor instance. */
+        QLineEdit         *m_pEditorProductID;
+        /** Holds the revision label instance. */
+        QLabel            *m_pLabelRevision;
+        /** Holds the revision editor instance. */
+        QLineEdit         *m_pEditorRevision;
+        /** Holds the manufacturer label instance. */
+        QLabel            *m_pLabelManufacturer;
+        /** Holds the manufacturer editor instance. */
+        QLineEdit         *m_pEditorManufacturer;
+        /** Holds the product label instance. */
+        QLabel            *m_pLabelProduct;
+        /** Holds the product editor instance. */
+        QLineEdit         *m_pEditorProduct;
+        /** Holds the serial NO label instance. */
+        QLabel            *m_pLabelSerialNo;
+        /** Holds the serial NO editor instance. */
+        QLineEdit         *m_pEditorSerialNo;
+        /** Holds the port label instance. */
+        QLabel            *m_pLabelPort;
+        /** Holds the port editor instance. */
+        QLineEdit         *m_pEditorPort;
+        /** Holds the remote label instance. */
+        QLabel            *m_pLabelRemote;
+        /** Holds the remote combo instance. */
+        QComboBox         *m_pComboRemote;
+        /** Holds the button-box instance. */
+        QIDialogButtonBox *m_pButtonBox;
     /** @} */
 
