Changeset 74769 in vbox
- Timestamp:
- Oct 11, 2018 12:27:00 PM (6 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance
- Files:
-
- 6 edited
-
UIWizardExportApp.cpp (modified) (2 diffs)
-
UIWizardExportAppPageBasic2.cpp (modified) (17 diffs)
-
UIWizardExportAppPageBasic2.h (modified) (4 diffs)
-
UIWizardExportAppPageBasic3.cpp (modified) (1 diff)
-
UIWizardExportAppPageExpert.cpp (modified) (6 diffs)
-
UIWizardExportAppPageExpert.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportApp.cpp
r73926 r74769 68 68 69 69 /* For Filesystem formats only: */ 70 if ( field("format").toString() != "csp-1.0")70 if (!field("isFormatCloudOne").toBool()) 71 71 { 72 72 /* We need to know every filename which will be created, so that we can ask the user for confirmation of overwriting. … … 150 150 QString UIWizardExportApp::uri(bool fWithFile) const 151 151 { 152 /* For Cloud Service Providers: */153 if (field(" format").toString() == "csp-1.0")152 /* For Cloud formats: */ 153 if (field("isFormatCloudOne").toBool()) 154 154 return QString("%1://%2").arg(field("providerShortName").toString(), field("profileName").toString()); 155 155 else -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageBasic2.cpp
r74766 r74769 86 86 formats << "ovf-2.0"; 87 87 formats << "opc-1.0"; 88 formats << "csp-1.0";89 88 /* Add that list to combo: */ 90 89 foreach (const QString &strShortName, formats) … … 95 94 } 96 95 96 /* Iterate through existing providers: */ 97 foreach (const CCloudProvider &comProvider, m_comCloudProviderManager.GetProviders()) 98 { 99 /* Skip if we have nothing to populate (file missing?): */ 100 if (comProvider.isNull()) 101 continue; 102 103 /* Compose empty item, fill it's data: */ 104 m_pFormatComboBox->addItem(QString()); 105 m_pFormatComboBox->setItemData(m_pFormatComboBox->count() - 1, comProvider.GetId(), FormatData_ID); 106 m_pFormatComboBox->setItemData(m_pFormatComboBox->count() - 1, comProvider.GetName(), FormatData_Name); 107 m_pFormatComboBox->setItemData(m_pFormatComboBox->count() - 1, comProvider.GetShortName(), FormatData_ShortName); 108 m_pFormatComboBox->setItemData(m_pFormatComboBox->count() - 1, true, FormatData_IsItCloudFormat); 109 } 110 97 111 /* Set default: */ 98 112 setFormat("ovf-1.0"); … … 116 130 void UIWizardExportAppPage2::populateAccounts() 117 131 { 118 /* Make sure this combo isn't filled yet: */ 119 AssertReturnVoid(m_pAccountComboBox->count() == 0); 120 121 /* Iterate through providers: */ 122 foreach (const CCloudProvider &comCloudProvider, m_comCloudProviderManager.GetProviders()) 123 { 124 /* Skip if we have nothing to populate (file missing?): */ 125 if (comCloudProvider.isNull()) 126 continue; 127 128 /* Iterate through profile names: */ 129 foreach (const QString &strProfileName, comCloudProvider.GetProfileNames()) 130 { 131 m_pAccountComboBox->addItem(QString()); 132 m_pAccountComboBox->setItemData(m_pAccountComboBox->count() - 1, comCloudProvider.GetId(), AccountData_ProviderID); 133 m_pAccountComboBox->setItemData(m_pAccountComboBox->count() - 1, comCloudProvider.GetName(), AccountData_ProviderName); 134 m_pAccountComboBox->setItemData(m_pAccountComboBox->count() - 1, comCloudProvider.GetShortName(), AccountData_ProviderShortName); 135 m_pAccountComboBox->setItemData(m_pAccountComboBox->count() - 1, strProfileName, AccountData_ProfileName); 136 } 132 /* Clear combo initially: */ 133 m_pAccountComboBox->clear(); 134 /* Return if no provider chosen: */ 135 if (providerId().isNull()) 136 return; 137 138 /* Acquire Cloud Provider: */ 139 CCloudProvider comCloudProvider = m_comCloudProviderManager.GetProviderById(providerId()); 140 /* Return if the provider has disappeared: */ 141 if (comCloudProvider.isNull()) 142 return; 143 144 /* Iterate through profile names: */ 145 foreach (const QString &strProfileName, comCloudProvider.GetProfileNames()) 146 { 147 m_pAccountComboBox->addItem(strProfileName); 148 m_pAccountComboBox->setItemData(m_pAccountComboBox->count() - 1, strProfileName, AccountData_ProfileName); 137 149 } 138 150 139 151 /* Set default: */ 140 152 if (m_pAccountComboBox->count() != 0) 141 setProviderById("54e11de4-afcc-47fb-9c39-b24244cfa044");153 m_pAccountComboBox->setCurrentIndex(0); 142 154 } 143 155 … … 146 158 /* Clear table initially: */ 147 159 m_pAccountPropertyTable->clear(); 160 /* Return if no provider chosen: */ 161 if (providerId().isNull()) 162 return; 148 163 149 164 /* Acquire Cloud Provider: */ … … 214 229 { 215 230 /* Update page appearance according to chosen storage-type: */ 216 const bool fCSP = fieldImp("format").toString() == "csp-1.0"; 217 m_pSettingsWidget->setCurrentIndex((int)fCSP); 231 m_pSettingsWidget->setCurrentIndex((int)isFormatCloudOne()); 218 232 } 219 233 … … 233 247 void UIWizardExportAppPage2::refreshFileSelectorExtension() 234 248 { 235 /* If the format is set to CSP: */236 if ( fieldImp("format").toString() == "csp-1.0")249 /* If format is cloud one: */ 250 if (isFormatCloudOne()) 237 251 { 238 252 /* We use no extension: */ … … 279 293 void UIWizardExportAppPage2::refreshManifestCheckBoxAccess() 280 294 { 281 /* If the format is set to CSP ||OPC: */282 if ( fieldImp("format").toString() == "csp-1.0"295 /* If format is cloud one or OPC: */ 296 if ( isFormatCloudOne() 283 297 || fieldImp("format").toString() == "opc-1.0") 284 298 { … … 298 312 void UIWizardExportAppPage2::refreshIncludeISOsCheckBoxAccess() 299 313 { 300 /* If the format is set to CSP ||OPC: */301 if ( fieldImp("format").toString() == "csp-1.0"314 /* If format is cloud one or OPC: */ 315 if ( isFormatCloudOne() 302 316 || fieldImp("format").toString() == "opc-1.0") 303 317 { … … 375 389 } 376 390 391 bool UIWizardExportAppPage2::isFormatCloudOne(int iIndex /* = -1 */) const 392 { 393 if (iIndex == -1) 394 iIndex = m_pFormatComboBox->currentIndex(); 395 return m_pFormatComboBox->itemData(iIndex, FormatData_IsItCloudFormat).toBool(); 396 } 397 377 398 void UIWizardExportAppPage2::setPath(const QString &strPath) 378 399 { … … 420 441 void UIWizardExportAppPage2::setProviderById(const QString &strId) 421 442 { 422 const int iIndex = m_p AccountComboBox->findData(strId, AccountData_ProviderID);443 const int iIndex = m_pFormatComboBox->findData(strId, FormatData_ID); 423 444 AssertMsg(iIndex != -1, ("Data not found!")); 424 m_p AccountComboBox->setCurrentIndex(iIndex);445 m_pFormatComboBox->setCurrentIndex(iIndex); 425 446 } 426 447 427 448 QString UIWizardExportAppPage2::providerId() const 428 449 { 429 const int iIndex = m_p AccountComboBox->currentIndex();430 return m_p AccountComboBox->itemData(iIndex, AccountData_ProviderID).toString();450 const int iIndex = m_pFormatComboBox->currentIndex(); 451 return m_pFormatComboBox->itemData(iIndex, FormatData_ID).toString(); 431 452 } 432 453 433 454 QString UIWizardExportAppPage2::providerShortName() const 434 455 { 435 const int iIndex = m_p AccountComboBox->currentIndex();436 return m_p AccountComboBox->itemData(iIndex, AccountData_ProviderShortName).toString();456 const int iIndex = m_pFormatComboBox->currentIndex(); 457 return m_pFormatComboBox->itemData(iIndex, FormatData_ShortName).toString(); 437 458 } 438 459 … … 699 720 /* Register fields: */ 700 721 registerField("format", this, "format"); 722 registerField("isFormatCloudOne", this, "isFormatCloudOne"); 701 723 registerField("path", this, "path"); 702 724 registerField("macAddressPolicy", this, "macAddressPolicy"); … … 759 781 m_pFormatComboBox->setItemText(2, UIWizardExportApp::tr("Open Virtualization Format 2.0")); 760 782 m_pFormatComboBox->setItemText(3, UIWizardExportApp::tr("Oracle Public Cloud Format 1.0")); 761 m_pFormatComboBox->setItemText(4, UIWizardExportApp::tr("Cloud Service Provider"));762 783 m_pFormatComboBox->setItemData(0, UIWizardExportApp::tr("Write in legacy OVF 0.9 format for compatibility " 763 784 "with other virtualization products."), Qt::ToolTipRole); … … 765 786 m_pFormatComboBox->setItemData(2, UIWizardExportApp::tr("Write in new OVF 2.0 format."), Qt::ToolTipRole); 766 787 m_pFormatComboBox->setItemData(3, UIWizardExportApp::tr("Write in Oracle Public Cloud 1.0 format."), Qt::ToolTipRole); 767 m_pFormatComboBox->setItemData(4, UIWizardExportApp::tr("Export to Cloud Service Provider."), Qt::ToolTipRole); 788 /* Translate received values of Format combo-box. 789 * We are enumerating starting from 0 for simplicity: */ 790 for (int i = 0; i < m_pFormatComboBox->count(); ++i) 791 if (isFormatCloudOne(i)) 792 { 793 m_pFormatComboBox->setItemText(i, m_pFormatComboBox->itemData(i, FormatData_Name).toString()); 794 m_pFormatComboBox->setItemData(i, UIWizardExportApp::tr("Export to cloud service provider."), Qt::ToolTipRole); 795 } 768 796 769 797 /* Translate MAC address policy combo-box: */ … … 794 822 /* Translate Account combo-box: */ 795 823 m_pAccountComboBoxLabel->setText(UIWizardExportApp::tr("&Account:")); 796 for (int i = 0; i < m_pAccountComboBox->count(); ++i)797 {798 m_pAccountComboBox->setItemText(i, UIWizardExportApp::tr("%1: %2", "provider: profile")799 .arg(m_pAccountComboBox->itemData(i, AccountData_ProviderName).toString())800 .arg(m_pAccountComboBox->itemData(i, AccountData_ProfileName).toString()));801 }802 824 803 825 /* Adjust label widths: */ … … 855 877 || field("format").toString() == "ovf-2.0"; 856 878 const bool fOPC = field("format").toString() == "opc-1.0"; 857 const bool fCSP = field("format").toString() == "csp-1.0";879 const bool fCSP = isFormatCloudOne(); 858 880 859 881 fResult = ( fOVF … … 873 895 874 896 /* Update page appearance according to chosen storage-type: */ 875 if ( field("format").toString() == "csp-1.0")897 if (isFormatCloudOne()) 876 898 { 877 899 m_pLabelSettings->setText(UIWizardExportApp:: … … 902 924 refreshManifestCheckBoxAccess(); 903 925 refreshIncludeISOsCheckBoxAccess(); 926 populateAccounts(); 927 populateAccountProperties(); 904 928 } 905 929 -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageBasic2.h
r74766 r74769 56 56 enum 57 57 { 58 FormatData_ShortName = Qt::UserRole + 1 58 FormatData_ID = Qt::UserRole + 1, 59 FormatData_Name = Qt::UserRole + 2, 60 FormatData_ShortName = Qt::UserRole + 3, 61 FormatData_IsItCloudFormat = Qt::UserRole + 4 59 62 }; 60 63 … … 62 65 enum 63 66 { 64 AccountData_ProviderID = Qt::UserRole + 1, 65 AccountData_ProviderName = Qt::UserRole + 2, 66 AccountData_ProviderShortName = Qt::UserRole + 3, 67 AccountData_ProfileName = Qt::UserRole + 4 67 AccountData_ProfileName = Qt::UserRole + 1 68 68 }; 69 69 … … 113 113 /** Returns format. */ 114 114 QString format() const; 115 /** Returns whether format under certain @a iIndex is cloud one. */ 116 bool isFormatCloudOne(int iIndex = -1) const; 115 117 116 118 /** Defines @a strPath. */ … … 204 206 Q_OBJECT; 205 207 Q_PROPERTY(QString format READ format WRITE setFormat); 208 Q_PROPERTY(bool isFormatCloudOne READ isFormatCloudOne); 206 209 Q_PROPERTY(QString path READ path WRITE setPath); 207 210 Q_PROPERTY(MACAddressPolicy macAddressPolicy READ macAddressPolicy WRITE setMACAddressPolicy); -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageBasic3.cpp
r74186 r74769 262 262 if (comMachine.isOk() && comVsd.isNotNull()) 263 263 { 264 if (fieldImp(" format").toString() == "csp-1.0")264 if (fieldImp("isFormatCloudOne").toBool()) 265 265 { 266 266 /* Populate Cloud Client parameters: */ -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp
r74766 r74769 345 345 registerField("machineIDs", this, "machineIDs"); 346 346 registerField("format", this, "format"); 347 registerField("isFormatCloudOne", this, "isFormatCloudOne"); 347 348 registerField("path", this, "path"); 348 349 registerField("macAddressPolicy", this, "macAddressPolicy"); … … 396 397 m_pFormatComboBox->setItemText(2, UIWizardExportApp::tr("Open Virtualization Format 2.0")); 397 398 m_pFormatComboBox->setItemText(3, UIWizardExportApp::tr("Oracle Public Cloud Format 1.0")); 398 m_pFormatComboBox->setItemText(4, UIWizardExportApp::tr("Cloud Service Provider"));399 399 m_pFormatComboBox->setItemData(0, UIWizardExportApp::tr("Write in legacy OVF 0.9 format for compatibility " 400 400 "with other virtualization products."), Qt::ToolTipRole); … … 402 402 m_pFormatComboBox->setItemData(2, UIWizardExportApp::tr("Write in new OVF 2.0 format."), Qt::ToolTipRole); 403 403 m_pFormatComboBox->setItemData(3, UIWizardExportApp::tr("Write in Oracle Public Cloud 1.0 format."), Qt::ToolTipRole); 404 m_pFormatComboBox->setItemData(4, UIWizardExportApp::tr("Export to Cloud Service Provider."), Qt::ToolTipRole); 404 /* Translate received values of Format combo-box. 405 * We are enumerating starting from 0 for simplicity: */ 406 for (int i = 0; i < m_pFormatComboBox->count(); ++i) 407 if (isFormatCloudOne(i)) 408 { 409 m_pFormatComboBox->setItemText(i, m_pFormatComboBox->itemData(i, FormatData_Name).toString()); 410 m_pFormatComboBox->setItemData(i, UIWizardExportApp::tr("Export to cloud service provider."), Qt::ToolTipRole); 411 } 405 412 406 413 /* Translate MAC address policy combo-box: */ … … 431 438 /* Translate Account combo-box: */ 432 439 m_pAccountComboBoxLabel->setText(UIWizardExportApp::tr("&Account:")); 433 for (int i = 0; i < m_pAccountComboBox->count(); ++i)434 {435 m_pAccountComboBox->setItemText(i, UIWizardExportApp::tr("%1: %2", "provider: profile")436 .arg(m_pAccountComboBox->itemData(i, AccountData_ProviderName).toString())437 .arg(m_pAccountComboBox->itemData(i, AccountData_ProfileName).toString()));438 }439 440 440 441 /* Adjust label widths: */ … … 495 496 || field("format").toString() == "ovf-2.0"; 496 497 const bool fOPC = field("format").toString() == "opc-1.0"; 497 const bool fCSP = field("format").toString() == "csp-1.0";498 const bool fCSP = isFormatCloudOne(); 498 499 499 500 fResult = ( fOVF … … 545 546 refreshManifestCheckBoxAccess(); 546 547 refreshIncludeISOsCheckBoxAccess(); 548 populateAccounts(); 549 populateAccountProperties(); 547 550 refreshApplianceSettingsWidget(); 548 551 } -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.h
r73728 r74769 37 37 Q_PROPERTY(QStringList machineIDs READ machineIDs); 38 38 Q_PROPERTY(QString format READ format WRITE setFormat); 39 Q_PROPERTY(bool isFormatCloudOne READ isFormatCloudOne); 39 40 Q_PROPERTY(QString path READ path WRITE setPath); 40 41 Q_PROPERTY(MACAddressPolicy macAddressPolicy READ macAddressPolicy WRITE setMACAddressPolicy);
Note:
See TracChangeset
for help on using the changeset viewer.

