Changeset 91335 in vbox
- Timestamp:
- Sep 22, 2021 7:45:29 PM (3 years ago)
- svn:sync-xref-src-repo-rev:
- 147002
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/wizards
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/wizards/addcloudvm/UIWizardAddCloudVM.cpp
r91334 r91335 32 32 const QString &strFullGroupName /* = QString() */) 33 33 : UINativeWizard(pParent, WizardType_AddCloudVM, WizardMode_Auto) 34 , m_strFullGroupName(strFullGroupName)35 34 { 36 35 #ifndef VBOX_WS_MAC … … 41 40 setPixmapName(":/wizard_new_cloud_vm_bg.png"); 42 41 #endif 42 43 /* Parse passed full group name: */ 44 const QString strProviderShortName = strFullGroupName.section('/', 1, 1); 45 const QString strProfileName = strFullGroupName.section('/', 2, 2); 46 if (!strProviderShortName.isEmpty() && !strProfileName.isEmpty()) 47 { 48 m_strProviderShortName = strProviderShortName; 49 m_strProfileName = strProfileName; 50 } 43 51 } 44 52 -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/addcloudvm/UIWizardAddCloudVM.h
r91334 r91335 40 40 UIWizardAddCloudVM(QWidget *pParent, const QString &strFullGroupName = QString()); 41 41 42 /** Returns full group name. */43 QString fullGroupName() const { return m_strFullGroupName; }44 45 42 /** Defines @a strProviderShortName. */ 46 43 void setProviderShortName(const QString &strProviderShortName) { m_strProviderShortName = strProviderShortName; } … … 76 73 private: 77 74 78 /** Holds the full group name (/provider/profile) to add VM to. */79 QString m_strFullGroupName;80 75 /** Holds the short provider name. */ 81 76 QString m_strProviderShortName; -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/addcloudvm/UIWizardAddCloudVMPageExpert.cpp
r91334 r91335 269 269 updateComboToolTip(m_pProviderComboBox); 270 270 setProviderShortName(m_pProviderComboBox->currentData(ProviderData_ShortName).toString()); 271 CCloudProvider comCloudProvider = cloudProviderByShortName(providerShortName(), wizard()); 272 populateProfiles(m_pProfileComboBox, comCloudProvider); 271 populateProfiles(m_pProfileComboBox, providerShortName(), profileName()); 273 272 updateProfile(); 274 273 } -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/addcloudvm/UIWizardAddCloudVMPageSource.cpp
r91334 r91335 104 104 } 105 105 106 void UIWizardAddCloudVMPage1::populateProfiles(QIComboBox *pCombo, const CCloudProvider &comProvider) 106 void UIWizardAddCloudVMPage1::populateProfiles(QIComboBox *pCombo, 107 const QString &strProviderShortName, 108 const QString &strProfileName) 107 109 { 108 110 /* Sanity check: */ 109 111 AssertPtrReturnVoid(pCombo); 110 AssertReturnVoid(comProvider.isNotNull());111 112 /* We need top-level parent as well: */ 112 113 QWidget *pParent = pCombo->window(); 113 114 AssertPtrReturnVoid(pParent); 115 /* Acquire provider: */ 116 CCloudProvider comProvider = cloudProviderByShortName(strProviderShortName, pParent); 117 AssertReturnVoid(comProvider.isNotNull()); 114 118 115 119 /* Block signals while updating: */ … … 120 124 if (pCombo->currentIndex() != -1) 121 125 strOldData = pCombo->itemData(pCombo->currentIndex(), ProfileData_Name).toString(); 122 else 123 { 124 /* Try to fetch "old" profile name from wizard full group name: */ 125 UIWizardAddCloudVM *pWizard = qobject_cast<UIWizardAddCloudVM*>(pParent); 126 AssertPtrReturnVoid(pWizard); 127 const QString strFullGroupName = pWizard->fullGroupName(); 128 const QString strProfileName = strFullGroupName.section('/', 2, 2); 129 if (!strProfileName.isEmpty()) 130 strOldData = strProfileName; 131 } 126 else if (!strProfileName.isEmpty()) 127 strOldData = strProfileName; 132 128 133 129 /* Clear combo initially: */ … … 140 136 if (comProfile.isNull()) 141 137 continue; 142 /* Acquire profile name: */143 QString str ProfileName;144 if (!cloudProfileName(comProfile, str ProfileName, pParent))138 /* Acquire current profile name: */ 139 QString strCurrentProfileName; 140 if (!cloudProfileName(comProfile, strCurrentProfileName, pParent)) 145 141 continue; 146 142 147 143 /* Compose item, fill the data: */ 148 pCombo->addItem(str ProfileName);149 pCombo->setItemData(pCombo->count() - 1, str ProfileName, ProfileData_Name);144 pCombo->addItem(strCurrentProfileName); 145 pCombo->setItemData(pCombo->count() - 1, strCurrentProfileName, ProfileData_Name); 150 146 } 151 147 … … 525 521 updateComboToolTip(m_pProviderComboBox); 526 522 setProviderShortName(m_pProviderComboBox->currentData(ProviderData_ShortName).toString()); 527 CCloudProvider comCloudProvider = cloudProviderByShortName(providerShortName(), wizard()); 528 populateProfiles(m_pProfileComboBox, comCloudProvider); 523 populateProfiles(m_pProfileComboBox, providerShortName(), profileName()); 529 524 updateProfile(); 530 525 } -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/addcloudvm/UIWizardAddCloudVMPageSource.h
r91334 r91335 55 55 /** Populates @a pCombo with known providers. */ 56 56 void populateProviders(QIComboBox *pCombo); 57 /** Populates @a pCombo with known profiles of @a comProvider specified. */ 58 void populateProfiles(QIComboBox *pCombo, const CCloudProvider &comProvider); 57 /** Populates @a pCombo with known profiles. 58 * @param strProviderShortName Brings the short name of provider profiles related to. 59 * @param strProfileName Brings the name of profile to be chosen by default. */ 60 void populateProfiles(QIComboBox *pCombo, const QString &strProviderShortName, const QString &strProfileName); 59 61 /** Populates @a pList with profile instances available in @a comClient. */ 60 62 void populateProfileInstances(QListWidget *pList, const CCloudClient &comClient); -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm/UIWizardNewCloudVM.cpp
r91334 r91335 40 40 WizardMode enmMode /* = WizardMode_Auto */) 41 41 : UINativeWizard(pParent, WizardType_NewCloudVM, enmMode) 42 , m_strFullGroupName(strFullGroupName)43 42 , m_comClient(comClient) 44 43 , m_comVSD(comVSD) … … 53 52 setPixmapName(":/wizard_new_cloud_vm_bg.png"); 54 53 #endif 54 55 /* Parse passed full group name: */ 56 const QString strProviderShortName = strFullGroupName.section('/', 1, 1); 57 const QString strProfileName = strFullGroupName.section('/', 2, 2); 58 if (!strProviderShortName.isEmpty() && !strProfileName.isEmpty()) 59 { 60 m_strProviderShortName = strProviderShortName; 61 m_strProfileName = strProfileName; 62 } 55 63 } 56 64 -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm/UIWizardNewCloudVM.h
r91334 r91335 51 51 void setFinalStepPrevented(bool fPrevented) { m_fFinalStepPrevented = fPrevented; } 52 52 53 /** Returns full group name. */54 QString fullGroupName() const { return m_strFullGroupName; }55 56 53 /** Defines @a strProviderShortName. */ 57 54 void setProviderShortName(const QString &strProviderShortName) { m_strProviderShortName = strProviderShortName; } … … 104 101 private: 105 102 106 /** Holds the full group name (/provider/profile) to add VM to. */107 QString m_strFullGroupName;108 103 /** Holds the short provider name. */ 109 104 QString m_strProviderShortName; -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm/UIWizardNewCloudVMPageExpert.cpp
r91334 r91335 410 410 updateComboToolTip(m_pProviderComboBox); 411 411 setProviderShortName(m_pProviderComboBox->currentData(ProviderData_ShortName).toString()); 412 CCloudProvider comCloudProvider = cloudProviderByShortName(providerShortName(), wizard()); 413 populateProfiles(m_pProfileComboBox, comCloudProvider); 412 populateProfiles(m_pProfileComboBox, providerShortName(), profileName()); 414 413 updateProfile(); 415 414 } -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm/UIWizardNewCloudVMPageSource.cpp
r91334 r91335 107 107 } 108 108 109 void UIWizardNewCloudVMPage1::populateProfiles(QIComboBox *pCombo, const CCloudProvider &comProvider) 109 void UIWizardNewCloudVMPage1::populateProfiles(QIComboBox *pCombo, 110 const QString &strProviderShortName, 111 const QString &strProfileName) 110 112 { 111 113 /* Sanity check: */ 112 114 AssertPtrReturnVoid(pCombo); 113 AssertReturnVoid(comProvider.isNotNull());114 115 /* We need top-level parent as well: */ 115 116 QWidget *pParent = pCombo->window(); 116 117 AssertPtrReturnVoid(pParent); 118 /* Acquire provider: */ 119 CCloudProvider comProvider = cloudProviderByShortName(strProviderShortName, pParent); 120 AssertReturnVoid(comProvider.isNotNull()); 117 121 118 122 /* Block signals while updating: */ … … 123 127 if (pCombo->currentIndex() != -1) 124 128 strOldData = pCombo->itemData(pCombo->currentIndex(), ProfileData_Name).toString(); 125 else 126 { 127 /* Try to fetch "old" profile name from wizard full group name: */ 128 UIWizardNewCloudVM *pWizard = qobject_cast<UIWizardNewCloudVM*>(pParent); 129 AssertPtrReturnVoid(pWizard); 130 const QString strFullGroupName = pWizard->fullGroupName(); 131 const QString strProfileName = strFullGroupName.section('/', 2, 2); 132 if (!strProfileName.isEmpty()) 133 strOldData = strProfileName; 134 } 129 else if (!strProfileName.isEmpty()) 130 strOldData = strProfileName; 135 131 136 132 /* Clear combo initially: */ … … 143 139 if (comProfile.isNull()) 144 140 continue; 145 /* Acquire profile name: */146 QString str ProfileName;147 if (!cloudProfileName(comProfile, str ProfileName, pParent))141 /* Acquire current profile name: */ 142 QString strCurrentProfileName; 143 if (!cloudProfileName(comProfile, strCurrentProfileName, pParent)) 148 144 continue; 149 145 150 146 /* Compose item, fill the data: */ 151 pCombo->addItem(str ProfileName);152 pCombo->setItemData(pCombo->count() - 1, str ProfileName, ProfileData_Name);147 pCombo->addItem(strCurrentProfileName); 148 pCombo->setItemData(pCombo->count() - 1, strCurrentProfileName, ProfileData_Name); 153 149 } 154 150 … … 605 601 updateComboToolTip(m_pProviderComboBox); 606 602 setProviderShortName(m_pProviderComboBox->currentData(ProviderData_ShortName).toString()); 607 CCloudProvider comCloudProvider = cloudProviderByShortName(providerShortName(), wizard()); 608 populateProfiles(m_pProfileComboBox, comCloudProvider); 603 populateProfiles(m_pProfileComboBox, providerShortName(), profileName()); 609 604 updateProfile(); 610 605 } -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm/UIWizardNewCloudVMPageSource.h
r91334 r91335 59 59 /** Populates @a pCombo with known providers. */ 60 60 void populateProviders(QIComboBox *pCombo); 61 /** Populates @a pCombo with known profiles of @a comProvider specified. */ 62 void populateProfiles(QIComboBox *pCombo, const CCloudProvider &comProvider); 61 /** Populates @a pCombo with known profiles. 62 * @param strProviderShortName Brings the short name of provider profiles related to. 63 * @param strProfileName Brings the name of profile to be chosen by default. */ 64 void populateProfiles(QIComboBox *pCombo, const QString &strProviderShortName, const QString &strProfileName); 63 65 /** Populates @a pList with source images from tab of @a pTabBar available in @a comClient. */ 64 66 void populateSourceImages(QListWidget *pList, QTabBar *pTabBar, const CCloudClient &comClient);
Note:
See TracChangeset
for help on using the changeset viewer.