VirtualBox

Changeset 91267 in vbox


Ignore:
Timestamp:
Sep 16, 2021 6:01:20 AM (3 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:9996. Fixing medium path update logic in the guided new vd wizard.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/wizards
Files:
7 edited

Legend:

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

    r91256 r91267  
    9595                                              UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), pWizard->deviceType()));
    9696    QFileInfo mediumPath(strMediumPath);
    97     m_pMediumSizePathGroupBox->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     97    m_pMediumSizePathGroupBox->setMediumFilePath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
    9898}
    9999
     
    148148        UIDiskEditorGroupBox::constructMediumFilePath(UIDiskVariantGroupBox::appendExtension(strDiskName,
    149149                                                                                             strExtension), strSourceDiskPath);
    150     m_pMediumSizePathGroupBox->setMediumPath(strMediumFilePath);
     150    m_pMediumSizePathGroupBox->setMediumFilePath(strMediumFilePath);
    151151    pWizard->setMediumPath(strMediumFilePath);
    152152    m_pMediumSizePathGroupBox->blockSignals(false);
     
    200200    m_pMediumSizePathGroupBox->blockSignals(false);
    201201    /* Update the wizard parameters explicitly since we blocked th signals: */
    202     pWizard->setMediumPath(m_pMediumSizePathGroupBox->mediumPath());
     202    pWizard->setMediumPath(m_pMediumSizePathGroupBox->mediumFilePath());
    203203    pWizard->setMediumVariant(m_pVariantGroupBox->mediumVariant());
    204204}
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd/UIWizardCloneVDPathSizePage.cpp

    r91256 r91267  
    8181            UIDiskEditorGroupBox::constructMediumFilePath(UIDiskVariantGroupBox::appendExtension(strDiskName,
    8282                                                                                                 strExtension), strSourceDiskPath);
    83         m_pMediumSizePathGroupBox->setMediumPath(strMediumFilePath);
     83        m_pMediumSizePathGroupBox->setMediumFilePath(strMediumFilePath);
    8484        pWizard->setMediumPath(strMediumFilePath);
    8585    }
     
    121121                                              UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), pWizard->deviceType()));
    122122    QFileInfo mediumPath(strMediumPath);
    123     m_pMediumSizePathGroupBox->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     123    m_pMediumSizePathGroupBox->setMediumFilePath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
    124124}
    125125
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/editors/UIWizardDiskEditors.cpp

    r91258 r91267  
    317317bool UIMediumSizeAndPathGroupBox::isComplete() const
    318318{
    319     if (QFileInfo(mediumPath()).exists())
     319    if (QFileInfo(mediumFilePath()).exists())
    320320    {
    321321        m_pLocationEditor->mark(true, tr("Disk file name is not unique"));
     
    388388}
    389389
    390 QString UIMediumSizeAndPathGroupBox::mediumPath() const
    391 {
    392     if (m_pLocationEditor)
    393         return m_pLocationEditor->text();
    394     return QString();
    395 }
    396 
    397 void UIMediumSizeAndPathGroupBox::setMediumPath(const QString &strMediumPath)
     390QString UIMediumSizeAndPathGroupBox::mediumName() const
     391{
     392    if (!m_pLocationEditor)
     393        return QString();
     394    return QFileInfo(m_pLocationEditor->text()).completeBaseName();
     395}
     396
     397QString UIMediumSizeAndPathGroupBox::mediumFilePath() const
     398{
     399    if (!m_pLocationEditor)
     400        return QString();
     401    return m_pLocationEditor->text();
     402}
     403
     404void UIMediumSizeAndPathGroupBox::setMediumFilePath(const QString &strMediumPath)
    398405{
    399406    if (!m_pLocationEditor)
     
    417424                                  arg(stripFormatExtension(fileInfo.fileName(), formatExtensions)).
    418425                                  arg(strDefaultExtension));
    419             setMediumPath(newFileInfo.absoluteFilePath());
     426            setMediumFilePath(newFileInfo.absoluteFilePath());
    420427        }
    421428    }
     429}
     430
     431QString UIMediumSizeAndPathGroupBox::mediumPath() const
     432{
     433    if (!m_pLocationEditor)
     434        return QString();
     435    return QDir::toNativeSeparators(QFileInfo(m_pLocationEditor->text()).absolutePath());
    422436}
    423437
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/editors/UIWizardDiskEditors.h

    r91258 r91267  
    127127
    128128    UIMediumSizeAndPathGroupBox(bool fExpertMode, QWidget *pParent, qulonglong uMinimumMediumSize);
     129    /** Returns name of the medium file without extension and path. */
     130    QString mediumName() const;
     131    /** Returns the file pat of the medium file including file name and extension. */
     132    QString mediumFilePath() const;
     133    void setMediumFilePath(const QString &strMediumPath);
     134    /** Returns path of the medium file without the file name. */
    129135    QString mediumPath() const;
    130     void setMediumPath(const QString &strMediumPath);
    131136    /** Checks if the file extension is correct. Fixs it if necessary. */
    132137    void updateMediumPath(const CMediumFormat &mediumFormat, const QStringList &formatExtensions, KDeviceType enmDeviceType);
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVDExpertPage.cpp

    r91256 r91267  
    117117                                              UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk));
    118118    QFileInfo mediumPath(strMediumPath);
    119     m_pSizeAndPathGroup->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     119    m_pSizeAndPathGroup->setMediumFilePath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
    120120    emit completeChanged();
    121121}
     
    140140                                                                                             strExtension), m_strDefaultPath);
    141141    m_pSizeAndPathGroup->blockSignals(true);
    142     m_pSizeAndPathGroup->setMediumPath(strMediumFilePath);
     142    m_pSizeAndPathGroup->setMediumFilePath(strMediumFilePath);
    143143    m_pSizeAndPathGroup->blockSignals(false);
    144     pWizard->setMediumPath(m_pSizeAndPathGroup->mediumPath());
     144    pWizard->setMediumPath(m_pSizeAndPathGroup->mediumFilePath());
    145145
    146146    m_pSizeAndPathGroup->blockSignals(true);
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd/UIWizardNewVDSizeLocationPage.cpp

    r91256 r91267  
    7272                                              UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk));
    7373    QFileInfo mediumPath(strMediumPath);
    74     m_pMediumSizePathGroup->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     74    m_pMediumSizePathGroup->setMediumFilePath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
    7575}
    7676
     
    105105    AssertReturnVoid(pWizard && m_pMediumSizePathGroup);
    106106
     107    QString strExtension = UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk);
     108    QString strMediumFilePath;
     109    printf("%s %s\n", qPrintable(m_strDefaultPath), qPrintable(m_pMediumSizePathGroup->mediumPath()));
    107110    if (!m_userModifiedParameters.contains("MediumPath"))
     111        strMediumFilePath =
     112            UIDiskEditorGroupBox::constructMediumFilePath(UIDiskVariantGroupBox::appendExtension(m_strDefaultName,
     113                                                                                                 strExtension), m_strDefaultPath);
     114    else
     115        strMediumFilePath =
     116            UIDiskEditorGroupBox::constructMediumFilePath(UIDiskVariantGroupBox::appendExtension(m_pMediumSizePathGroup->mediumName(),
     117                                                                                                 strExtension), m_pMediumSizePathGroup->mediumPath());
     118
     119
    108120    {
    109         QString strExtension = UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk);
    110         QString strMediumFilePath =
    111             UIDiskEditorGroupBox::constructMediumFilePath(UIDiskVariantGroupBox::appendExtension(m_strDefaultName,
    112                                                                                                     strExtension), m_strDefaultPath);
     121
    113122        m_pMediumSizePathGroup->blockSignals(true);
    114         m_pMediumSizePathGroup->setMediumPath(strMediumFilePath);
     123        m_pMediumSizePathGroup->setMediumFilePath(strMediumFilePath);
    115124        m_pMediumSizePathGroup->blockSignals(false);
    116         pWizard->setMediumPath(m_pMediumSizePathGroup->mediumPath());
     125        pWizard->setMediumPath(m_pMediumSizePathGroup->mediumFilePath());
    117126    }
    118127    if (!m_userModifiedParameters.contains("MediumSize"))
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMExpertPage.cpp

    r91257 r91267  
    691691                                              UIDiskEditorGroupBox::defaultExtension(pWizard->mediumFormat(), KDeviceType_HardDisk));
    692692    QFileInfo mediumPath(strMediumPath);
    693     m_pSizeAndLocationGroup->setMediumPath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
     693    m_pSizeAndLocationGroup->setMediumFilePath(QDir::toNativeSeparators(mediumPath.absoluteFilePath()));
    694694}
    695695
     
    814814                                                                                      strExtension), strMediumPath);
    815815        m_pSizeAndLocationGroup->blockSignals(true);
    816         m_pSizeAndLocationGroup->setMediumPath(strMediumFilePath);
     816        m_pSizeAndLocationGroup->setMediumFilePath(strMediumFilePath);
    817817        m_pSizeAndLocationGroup->blockSignals(false);
    818         pWizard->setMediumPath(m_pSizeAndLocationGroup->mediumPath());
     818        pWizard->setMediumPath(m_pSizeAndLocationGroup->mediumFilePath());
    819819    }
    820820}
     
    836836    m_pSizeAndLocationGroup->blockSignals(false);
    837837    /* Update the wizard parameters explicitly since we blocked th signals: */
    838     pWizard->setMediumPath(m_pSizeAndLocationGroup->mediumPath());
     838    pWizard->setMediumPath(m_pSizeAndLocationGroup->mediumFilePath());
    839839    pWizard->setMediumVariant(m_pDiskVariantGroupBox->mediumVariant());
    840840}
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