Changeset 87872 in vbox
- Timestamp:
- Feb 25, 2021 10:55:32 AM (4 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.cpp
r87871 r87872 36 36 #include "CBIOSSettings.h" 37 37 #include "CGraphicsAdapter.h" 38 #include "CMediumFormat.h" 38 39 #include "CUSBController.h" 39 40 #include "CUSBDeviceFilters.h" … … 175 176 } 176 177 178 bool UIWizardNewVM::createVirtualDisk() 179 { 180 /* Gather attributes: */ 181 CMediumFormat mediumFormat = field("mediumFormat").value<CMediumFormat>(); 182 qulonglong uVariant = field("mediumVariant").toULongLong(); 183 QString strMediumPath = field("mediumPath").toString(); 184 qulonglong uSize = field("mediumSize").toULongLong(); 185 /* Check attributes: */ 186 AssertReturn(!strMediumPath.isNull(), false); 187 AssertReturn(uSize > 0, false); 188 189 /* Get VBox object: */ 190 CVirtualBox vbox = uiCommon().virtualBox(); 191 192 /* Create new virtual hard-disk: */ 193 CMedium virtualDisk = vbox.CreateMedium(mediumFormat.GetName(), strMediumPath, KAccessMode_ReadWrite, KDeviceType_HardDisk); 194 if (!vbox.isOk()) 195 { 196 msgCenter().cannotCreateHardDiskStorage(vbox, strMediumPath, this); 197 return false; 198 } 199 200 /* Compose medium-variant: */ 201 QVector<KMediumVariant> variants(sizeof(qulonglong)*8); 202 for (int i = 0; i < variants.size(); ++i) 203 { 204 qulonglong temp = uVariant; 205 temp &= UINT64_C(1)<<i; 206 variants[i] = (KMediumVariant)temp; 207 } 208 209 /* Create base storage for the new virtual-disk: */ 210 CProgress progress = virtualDisk.CreateBaseStorage(uSize, variants); 211 if (!virtualDisk.isOk()) 212 { 213 msgCenter().cannotCreateHardDiskStorage(virtualDisk, strMediumPath, this); 214 return false; 215 } 216 217 /* Show creation progress: */ 218 msgCenter().showModalProgressDialog(progress, windowTitle(), ":/progress_media_create_90px.png", this); 219 if (progress.GetCanceled()) 220 return false; 221 if (!progress.isOk() || progress.GetResultCode() != 0) 222 { 223 msgCenter().cannotCreateHardDiskStorage(progress, strMediumPath, this); 224 return false; 225 } 226 227 /* Remember created virtual-disk: */ 228 m_virtualDisk = virtualDisk; 229 230 /* Inform UICommon about it: */ 231 uiCommon().createMedium(UIMedium(m_virtualDisk, UIMediumDeviceType_HardDisk, KMediumState_Created)); 232 233 return true; 234 } 235 177 236 void UIWizardNewVM::configureVM(const QString &strGuestTypeId, const CGuestOSType &comGuestType) 178 237 { -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVM.h
r87870 r87872 28 28 #include "COMEnums.h" 29 29 #include "CMachine.h" 30 #include "CMedium.h" 30 31 31 32 /** Container for unattended install related data. */ … … 89 90 protected: 90 91 91 /* Creates a new VM: */92 92 bool createVM(); 93 /* Configures the newly created VM: */ 93 bool createVirtualDisk(); 94 94 95 void configureVM(const QString &strGuestTypeId, const CGuestOSType &comGuestType); 95 /* Attaches default devices: */96 96 bool attachDefaultDevices(const CGuestOSType &comGuestType); 97 97 … … 129 129 int m_iSASCount; 130 130 int m_iUSBCount; 131 CMedium m_virtualDisk; 131 132 132 133 mutable UIUnattendedInstallData m_unattendedInstallData; -
trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm/UIWizardNewVMPageBasic5.h
r87871 r87872 27 27 /* GUI includes: */ 28 28 #include "UIWizardPage.h" 29 #include "UIWizardNewVDPageBasic1.h" 29 30 #include "UIWizardNewVDPageBasic2.h" 30 31 #include "UIWizardNewVDPageBasic3.h" … … 32 33 /* COM includes: */ 33 34 #include "COMEnums.h" 34 #include "CMedium.h"35 35 36 36 /* Forward declarations: */ … … 42 42 43 43 class UIWizardNewVMPageBasic5 : public UIWizardPage, 44 public UIWizardNewVDPage1, 44 45 public UIWizardNewVDPage2, 45 46 public UIWizardNewVDPage3
Note:
See TracChangeset
for help on using the changeset viewer.