VirtualBox

Changeset 90210 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Jul 15, 2021 11:28:32 AM (4 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:9996. Completing inserting disk related widgets to expert page.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMDiskPageBasic.cpp

    r90092 r90210  
    541541    if (pMainLayout)
    542542    {
     543        QVBoxLayout *pVariantLayout = new QVBoxLayout;
     544        if (pVariantLayout)
     545        {
     546            m_pFixedCheckBox = new QCheckBox;
     547            pVariantLayout->addWidget(m_pFixedCheckBox);
     548        }
    543549        if (fWithLabels)
    544550        {
     
    546552            m_pDynamicLabel = new QIRichTextLabel;
    547553            m_pFixedLabel = new QIRichTextLabel;
    548         }
    549         QVBoxLayout *pVariantLayout = new QVBoxLayout;
    550         if (pVariantLayout)
    551         {
    552             m_pFixedCheckBox = new QCheckBox;
    553             pVariantLayout->addWidget(m_pFixedCheckBox);
    554         }
    555         if (fWithLabels)
    556         {
     554
    557555            pMainLayout->addWidget(m_pDescriptionLabel);
    558556            pMainLayout->addWidget(m_pDynamicLabel);
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageExpert.cpp

    r90208 r90210  
    6161    , m_pAdditionalOptionsContainer(0)
    6262    , m_pGAInstallationISOContainer(0)
     63    , m_pDiskSourceButtonGroup(0)
     64    , m_pDiskEmpty(0)
     65    , m_pDiskNew(0)
     66    , m_pDiskExisting(0)
     67    , m_pDiskSelector(0)
     68    , m_pDiskSelectionButton(0)
    6369{
    6470    /* Create widgets: */
     
    7076        m_pHardwareWidgetContainer = new UINewVMHardwareContainer;
    7177        m_pToolBox->insertPage(ExpertToolboxItems_Hardware, m_pHardwareWidgetContainer, "");
    72         m_pToolBox->insertPage(ExpertToolboxItems_Disk, createNewDiskWidgets(), "");
     78        m_pToolBox->insertPage(ExpertToolboxItems_Disk, createDiskWidgets(), "");
    7379        m_pToolBox->setCurrentPage(ExpertToolboxItems_NameAndOSType);
    7480        pMainLayout->addWidget(m_pToolBox);
     
    182188    }
    183189
     190    if (m_pDiskEmpty)
     191        m_pDiskEmpty->setText(UIWizardNewVM::tr("&Do Not Add a Virtual Hard Disk"));
     192    if (m_pDiskNew)
     193        m_pDiskNew->setText(UIWizardNewVM::tr("&Create a Virtual Hard Disk Now"));
     194    if (m_pDiskExisting)
     195        m_pDiskExisting->setText(UIWizardNewVM::tr("U&se an Existing Virtual Hard Disk File"));
     196    if (m_pDiskSelectionButton)
     197        m_pDiskSelectionButton->setToolTip(UIWizardNewVM::tr("Choose a Virtual Hard Fisk File..."));
     198
     199
     200
    184201    // if (m_pFormatButtonGroup)
    185202    // {
     
    385402    QGridLayout *pDiskContainerLayout = new QGridLayout(pNewDiskContainerWidget);
    386403
    387     /* Disk location widgets: */
    388 
    389     // m_pLocationLabel = new QLabel;
    390     // m_pLocationLabel->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Fixed);
    391     // m_pLocationEditor = new QLineEdit;
    392     // m_pLocationOpenButton = new QIToolButton;
    393     // if (m_pLocationOpenButton)
    394     // {
    395     //     m_pLocationOpenButton->setAutoRaise(true);
    396     //     m_pLocationOpenButton->setIcon(UIIconPool::iconSet(":/select_file_16px.png", "select_file_disabled_16px.png"));
    397     // }
    398     // m_pLocationLabel->setBuddy(m_pLocationEditor);
    399 
    400     // /* Disk file size widgets: */
    401     // m_pMediumSizeEditorLabel = new QLabel;
    402     // m_pMediumSizeEditorLabel->setAlignment(Qt::AlignRight);
    403     // m_pMediumSizeEditorLabel->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
    404     // m_pMediumSizeEditor = new UIMediumSizeEditor;
    405     // m_pMediumSizeEditorLabel->setBuddy(m_pMediumSizeEditor);
    406     // m_pMediumSizeEditor = new UIMediumSizeEditor;
    407 
    408     // pDiskContainerLayout->addWidget(m_pLocationLabel, 0, 0, 1, 1);
    409     // pDiskContainerLayout->addWidget(m_pLocationEditor, 0, 1, 1, 2);
    410     // pDiskContainerLayout->addWidget(m_pLocationOpenButton, 0, 3, 1, 1);
    411 
    412     // pDiskContainerLayout->addWidget(m_pMediumSizeEditorLabel, 1, 0, 1, 1, Qt::AlignBottom);
    413     // pDiskContainerLayout->addWidget(m_pMediumSizeEditor, 1, 1, 2, 3);
    414 
    415404    m_pSizeAndLocationGroup = new UIDiskSizeAndLocationGroupBox;
    416405    pDiskContainerLayout->addWidget(m_pSizeAndLocationGroup, 0, 0, 2, 2);
     
    421410
    422411    return pNewDiskContainerWidget;
     412}
     413
     414QWidget *UIWizardNewVMPageExpert::createDiskWidgets()
     415{
     416    QWidget *pDiskContainer = new QWidget;
     417    QGridLayout *pDiskLayout = new QGridLayout(pDiskContainer);
     418    pDiskLayout->setContentsMargins(0, 0, 0, 0);
     419    m_pDiskSourceButtonGroup = new QButtonGroup;
     420    m_pDiskEmpty = new QRadioButton;
     421    m_pDiskNew = new QRadioButton;
     422    m_pDiskExisting = new QRadioButton;
     423    m_pDiskSourceButtonGroup->addButton(m_pDiskEmpty);
     424    m_pDiskSourceButtonGroup->addButton(m_pDiskNew);
     425    m_pDiskSourceButtonGroup->addButton(m_pDiskExisting);
     426    QStyleOptionButton options;
     427    options.initFrom(m_pDiskExisting);
     428    int iWidth = m_pDiskExisting->style()->pixelMetric(QStyle::PM_ExclusiveIndicatorWidth, &options, m_pDiskExisting);
     429    pDiskLayout->setColumnMinimumWidth(0, iWidth);
     430    m_pDiskSelector = new UIMediaComboBox;
     431    {
     432        m_pDiskSelector->setType(UIMediumDeviceType_HardDisk);
     433        m_pDiskSelector->repopulate();
     434    }
     435    m_pDiskSelectionButton = new QIToolButton;
     436    {
     437        m_pDiskSelectionButton->setAutoRaise(true);
     438        m_pDiskSelectionButton->setIcon(UIIconPool::iconSet(":/select_file_16px.png", ":/select_file_disabled_16px.png"));
     439    }
     440    pDiskLayout->addWidget(m_pDiskNew, 0, 0, 1, 6);
     441    pDiskLayout->addWidget(createNewDiskWidgets(), 1, 2, 3, 4);
     442    pDiskLayout->addWidget(m_pDiskExisting, 4, 0, 1, 6);
     443    pDiskLayout->addWidget(m_pDiskSelector, 5, 2, 1, 3);
     444    pDiskLayout->addWidget(m_pDiskSelectionButton, 5, 5, 1, 1);
     445    pDiskLayout->addWidget(m_pDiskEmpty, 6, 0, 1, 6);
     446    return pDiskContainer;
    423447}
    424448
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageExpert.h

    r90208 r90210  
    3737class QLabel;
    3838class QLineEdit;
     39class QRadioButton;
    3940class QVBoxLayout;
     41class QIToolButton;
    4042class UIAdditionalUnattendedOptions;
    4143class UIDiskFormatsGroupBox;
     
    4547class UIGAInstallationGroupBox;
    4648class UIHostnameDomainNameEditor;
     49class UIMediaComboBox;
    4750class UIMediumSizeEditor;
    4851class UINameAndSystemEditor;
     
    5053class UIToolBox;
    5154class UIUserNamePasswordGroupBox;
    52 class QIToolButton;
     55
    5356
    5457/** Expert page of the New Virtual Machine wizard. */
     
    114117    void markWidgets() const;
    115118    QWidget *createUnattendedWidgets();
    116     virtual QWidget *createNewDiskWidgets() /* override */;
    117     QWidget *createFormatButtonGroup(bool fExpertMode);
    118     QWidget *createMediumVariantWidgets();
    119     void addFormatButton(QWidget *pParent, QVBoxLayout *pFormatLayout,
    120                                                   CMediumFormat medFormat, bool fPreferred /* = false */);
     119    QWidget *createNewDiskWidgets();
     120    QWidget *createDiskWidgets();
     121
    121122    QWidget *createNameOSTypeWidgets();
    122     QWidget *createAdditionalOptionsWidgets();
    123123
    124124    void updateVirtualDiskPathFromMachinePathName();
     
    140140        UIGAInstallationGroupBox *m_pGAInstallationISOContainer;
    141141        UIUserNamePasswordGroupBox *m_pUserNamePasswordGroupBox;
     142
     143
     144    QButtonGroup *m_pDiskSourceButtonGroup;
     145    QRadioButton *m_pDiskEmpty;
     146    QRadioButton *m_pDiskNew;
     147    QRadioButton *m_pDiskExisting;
     148    UIMediaComboBox *m_pDiskSelector;
     149    QIToolButton *m_pDiskSelectionButton;
     150
     151
    142152    /** @} */
    143153};
Note: See TracChangeset for help on using the changeset viewer.

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