VirtualBox

Changeset 82570 in vbox for trunk/src


Ignore:
Timestamp:
Dec 12, 2019 4:22:53 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
135446
Message:

FE/Qt: bugref:9611: UIApplianceEditorWidget: Get rid of hardcoded network adapter types, instead acquire these types through CSystemProperties interface.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/widgets/UIApplianceEditorWidget.cpp

    r81296 r82570  
    822822            case KVirtualSystemDescriptionType_NetworkAdapter:
    823823            {
     824                /* Create combo editor: */
    824825                QComboBox *pComboBox = new QComboBox(pParent);
    825                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_Am79C970A), KNetworkAdapterType_Am79C970A);
    826                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_Am79C973), KNetworkAdapterType_Am79C973);
    827 #ifdef VBOX_WITH_E1000
    828                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_I82540EM), KNetworkAdapterType_I82540EM);
    829                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_I82543GC), KNetworkAdapterType_I82543GC);
    830                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_I82545EM), KNetworkAdapterType_I82545EM);
    831 #endif /* VBOX_WITH_E1000 */
    832 #ifdef VBOX_WITH_VIRTIO
    833                 pComboBox->addItem(gpConverter->toString(KNetworkAdapterType_Virtio), KNetworkAdapterType_Virtio);
    834 #endif /* VBOX_WITH_VIRTIO */
     826                /* Load currently supported network adapter types: */
     827                CSystemProperties comProperties = uiCommon().virtualBox().GetSystemProperties();
     828                QVector<KNetworkAdapterType> supportedTypes = comProperties.GetSupportedNetworkAdapterTypes();
     829                /* Take currently requested type into account if it's sane: */
     830                const KNetworkAdapterType enmAdapterType = static_cast<KNetworkAdapterType>(m_strConfigValue.toInt());
     831                if (!supportedTypes.contains(enmAdapterType) && enmAdapterType != KNetworkAdapterType_Null)
     832                    supportedTypes.prepend(enmAdapterType);
     833                /* Populate adapter types: */
     834                int iAdapterTypeIndex = 0;
     835                foreach (const KNetworkAdapterType &enmType, supportedTypes)
     836                {
     837                    pComboBox->insertItem(iAdapterTypeIndex, gpConverter->toString(enmType));
     838                    pComboBox->setItemData(iAdapterTypeIndex, QVariant::fromValue((int)enmType));
     839                    pComboBox->setItemData(iAdapterTypeIndex, pComboBox->itemText(iAdapterTypeIndex), Qt::ToolTipRole);
     840                    ++iAdapterTypeIndex;
     841                }
     842                /* Pass editor back: */
    835843                pEditor = pComboBox;
    836844                break;
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette