VirtualBox

Changeset 90826 in vbox for trunk


Ignore:
Timestamp:
Aug 24, 2021 7:52:10 AM (3 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:9996. Adding missing connections to clone vd pages.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageBasic2.cpp

    r90800 r90826  
    4545{
    4646    QVBoxLayout *pMainLayout = new QVBoxLayout(this);
     47
    4748    m_pDescriptionLabel = new QIRichTextLabel(this);
    4849    if (m_pDescriptionLabel)
    4950        pMainLayout->addWidget(m_pDescriptionLabel);
     51
    5052    m_pDynamicLabel = new QIRichTextLabel(this);
    5153    if (m_pDynamicLabel)
    5254        pMainLayout->addWidget(m_pDynamicLabel);
     55
    5356    m_pFixedLabel = new QIRichTextLabel(this);
    5457    if (m_pFixedLabel)
    5558        pMainLayout->addWidget(m_pFixedLabel);
     59
    5660    m_pSplitLabel = new QIRichTextLabel(this);
    5761    if (m_pSplitLabel)
    5862        pMainLayout->addWidget(m_pSplitLabel);
     63
    5964    m_pVariantGroupBox = new UIDiskVariantGroupBox(false /* expert mode */, 0);
    6065    if (m_pVariantGroupBox)
     66    {
    6167        pMainLayout->addWidget(m_pVariantGroupBox);
     68        connect(m_pVariantGroupBox, &UIDiskVariantGroupBox::sigMediumVariantChanged,
     69                this, &UIWizardCloneVDPageBasic2::sltMediumVariantChanged);
     70
     71    }
     72
    6273    retranslateUi();
    6374}
     
    118129        m_pSplitLabel->setHidden(!m_pVariantGroupBox->isCreateSplitPossible());
    119130}
     131
     132void UIWizardCloneVDPageBasic2::sltMediumVariantChanged(qulonglong uVariant)
     133{
     134    if (cloneWizard())
     135        cloneWizard()->setMediumVariant(uVariant);
     136}
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageBasic2.h

    r90800 r90826  
    4646    UIWizardCloneVDPageBasic2(KDeviceType enmDeviceType);
    4747
     48private slots:
     49
     50    void sltMediumVariantChanged(qulonglong uVariant);
     51
    4852private:
    4953
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageBasic3.cpp

    r90800 r90826  
    4545    m_pMediumSizePathGroupBox = new UIMediumSizeAndPathGroupBox(false /* expert mode */, 0 /* parent */, uSourceDiskLogicaSize);
    4646    if (m_pMediumSizePathGroupBox)
     47    {
    4748        pMainLayout->addWidget(m_pMediumSizePathGroupBox);
     49        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumLocationButtonClicked,
     50                this, &UIWizardCloneVDPageBasic3::sltSelectLocationButtonClicked);
     51        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumPathChanged,
     52                this, &UIWizardCloneVDPageBasic3::sltMediumPathChanged);
     53        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumSizeChanged,
     54                this, &UIWizardCloneVDPageBasic3::sltMediumSizeChanged);
     55    }
    4856
    4957    pMainLayout->addStretch();
    50 
    51     connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumLocationButtonClicked,
    52             this, &UIWizardCloneVDPageBasic3::sltSelectLocationButtonClicked);
    53     connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumPathChanged,
    54             this, &UIWizardCloneVDPageBasic3::sltMediumPathChanged);
    55 
    5658    retranslateUi();
    5759}
     
    148150    emit completeChanged();
    149151}
     152
     153void UIWizardCloneVDPageBasic3::sltMediumSizeChanged(qulonglong uSize)
     154{
     155    UIWizardCloneVD *pWizard = cloneWizard();
     156    AssertReturnVoid(pWizard);
     157    m_userModifiedParameters << "MediumSize";
     158    pWizard->setMediumSize(uSize);
     159    emit completeChanged();
     160}
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageBasic3.h

    r90761 r90826  
    3737class UIWizardCloneVD;
    3838
    39 // /** 4th page of the Clone Virtual Disk Image wizard (base part): */
    40 // class UIWizardCloneVDPage3 : public UIWizardPageBase
    41 // {
    42 // protected:
    43 
    44 //     /** Constructs page basis. */
    45 //     UIWizardCloneVDPage3();
    46 
    47 //     /** Handles command to open target disk. */
    48 //     void onSelectLocationButtonClicked();
    49 
    50 //     /** Helps to compose full file name on the basis of incoming @a strName and @a strExtension. */
    51 //     static QString toFileName(const QString &strName, const QString &strExtension);
    52 //     /** Converts the @a strFileName to absolute one if necessary using @a strDefaultPath as advice. */
    53 //     static QString absoluteFilePath(const QString &strFileName, const QString &strDefaultPath);
    54 //     /** Acquires the list of @a aAllowedExtensions and @a strDefaultExtension
    55 //       * on the basis of incoming @a comMediumFormat and @a enmDeviceType. */
    56 //     static void acquireExtensions(const CMediumFormat &comMediumFormat, KDeviceType enmDeviceType,
    57 //                                   QStringList &aAllowedExtensions, QString &strDefaultExtension);
    58 
    59 //     /** Returns 'mediumPath' field value. */
    60 //     QString mediumPath() const;
    61 
    62 //     /** Returns 'mediumSize' field value. */
    63 //     qulonglong mediumSize();
    64 
    65 //     /** Holds the default path. */
    66 //     QString      m_strDefaultPath;
    67 //     /** Holds the default extension. */
    68 //     QString      m_strDefaultExtension;
    69 //     /** Holds the allowed extensions. */
    70 //     QStringList  m_aAllowedExtensions;
    71 
    72 //     /** Holds the target disk path editor instance. */
    73 //     QLineEdit    *m_pDestinationDiskEditor;
    74 //     /** Holds the open-target-disk button instance. */
    75 //     QIToolButton *m_pDestinationDiskOpenButton;
    76 // };
    77 
    78 
    79 // /** 4th page of the Clone Virtual Disk Image wizard (basic extension): */
     39/** 4th page of the Clone Virtual Disk Image wizard (basic extension): */
    8040class UIWizardCloneVDPageBasic3 : public UINativeWizardPage
    8141{
     
    9252    void sltSelectLocationButtonClicked();
    9353    void sltMediumPathChanged(const QString &strPath);
     54    void sltMediumSizeChanged(qulonglong uSize);
    9455
    9556private:
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageExpert.cpp

    r90800 r90826  
    5050
    5151    if (m_pMediumSizePathGroupBox)
     52    {
    5253        pMainLayout->addWidget(m_pMediumSizePathGroupBox, 0, 0, 2, 2);
     54        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumLocationButtonClicked,
     55                this, &UIWizardCloneVDPageExpert::sltSelectLocationButtonClicked);
     56        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumPathChanged,
     57                this, &UIWizardCloneVDPageExpert::sltMediumPathChanged);
     58        connect(m_pMediumSizePathGroupBox, &UIMediumSizeAndPathGroupBox::sigMediumSizeChanged,
     59                this, &UIWizardCloneVDPageExpert::sltMediumSizeChanged);
     60    }
    5361
    5462    m_pFormatGroupBox = new UIDiskFormatsGroupBox(true /* expert mode */, enmDeviceType, 0);
    5563    if (m_pFormatGroupBox)
     64    {
    5665        pMainLayout-> addWidget(m_pFormatGroupBox, 2, 0, 6, 1);
     66        connect(m_pFormatGroupBox, &UIDiskFormatsGroupBox::sigMediumFormatChanged,
     67                this, &UIWizardCloneVDPageExpert::sltMediumFormatChanged);
     68    }
    5769
    5870    m_pVariantGroupBox = new UIDiskVariantGroupBox(true /* expert mode */, 0);
    5971    if (m_pVariantGroupBox)
     72    {
    6073        pMainLayout-> addWidget(m_pVariantGroupBox, 2, 1, 6, 1);
     74        connect(m_pVariantGroupBox, &UIDiskVariantGroupBox::sigMediumVariantChanged,
     75                this, &UIWizardCloneVDPageExpert::sltMediumVariantChanged);
     76    }
    6177}
    62 
    6378
    6479void UIWizardCloneVDPageExpert::sltMediumFormatChanged()
    6580{
     81    if (cloneWizard() && m_pFormatGroupBox)
     82        cloneWizard()->setMediumFormat(m_pFormatGroupBox->mediumFormat());
     83    emit completeChanged();
    6684}
    6785
    6886void UIWizardCloneVDPageExpert::sltSelectLocationButtonClicked()
    6987{
     88    UIWizardCloneVD *pWizard = cloneWizard();
     89    AssertReturnVoid(pWizard);
     90    CMediumFormat comMediumFormat(pWizard->mediumFormat());
     91    QString strSelectedPath =
     92        UIDiskEditorGroupBox::openFileDialogForDiskFile(pWizard->mediumPath(), comMediumFormat, pWizard->deviceType(), pWizard);
    7093
     94    if (strSelectedPath.isEmpty())
     95        return;
     96    QString strMediumPath =
     97        UIDiskEditorGroupBox::appendExtension(strSelectedPath,
     98                                              UIDiskFormatsGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk));
     99    QFileInfo mediumPath(strMediumPath);
     100    m_pMediumSizePathGroupBox->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     101}
     102
     103void UIWizardCloneVDPageExpert::sltMediumVariantChanged(qulonglong uVariant)
     104{
     105    if (cloneWizard())
     106        cloneWizard()->setMediumVariant(uVariant);
     107}
     108
     109void UIWizardCloneVDPageExpert::sltMediumSizeChanged(qulonglong uSize)
     110{
     111    UIWizardCloneVD *pWizard = cloneWizard();
     112    AssertReturnVoid(pWizard);
     113    pWizard->setMediumSize(uSize);
     114    emit completeChanged();
     115}
     116
     117void UIWizardCloneVDPageExpert::sltMediumPathChanged(const QString &strPath)
     118{
     119    UIWizardCloneVD *pWizard = cloneWizard();
     120    AssertReturnVoid(pWizard);
     121    QString strMediumPath =
     122        UIDiskEditorGroupBox::appendExtension(strPath,
     123                                              UIDiskFormatsGroupBox::defaultExtension(pWizard->mediumFormat(), pWizard->deviceType()));
     124    pWizard->setMediumPath(strMediumPath);
     125    emit completeChanged();
    71126}
    72127
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPageExpert.h

    r90800 r90826  
    5151    /** Handles target disk change. */
    5252    void sltSelectLocationButtonClicked();
     53    void sltMediumPathChanged(const QString &strPath);
     54    void sltMediumVariantChanged(qulonglong uVariant);
     55    void sltMediumSizeChanged(qulonglong uSize);
    5356
    5457private:
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