- Timestamp:
- Oct 23, 2018 3:48:45 PM (6 years ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
r74942 r75006 72 72 # include "UIMediumEnumerator.h" 73 73 # include "UIMedium.h" 74 # include "UIMediumSelector.h" 74 75 # include "UIModalWindowManager.h" 75 76 # include "UIIconPool.h" … … 2735 2736 } 2736 2737 2738 QUuid VBoxGlobal::openMediumSelectorDialog(QWidget *pParent, UIMediumDeviceType enmMediumType, 2739 const QString &strMachineName, const QString &strMachineFolder) 2740 { 2741 QWidget *pDialogParent = windowManager().realParentWindow(pParent); 2742 QPointer<UIMediumSelector> pSelector = new UIMediumSelector(enmMediumType, strMachineName, 2743 strMachineFolder, pDialogParent); 2744 2745 if (!pSelector) 2746 return QString(); 2747 windowManager().registerNewParent(pSelector, pDialogParent); 2748 if (pSelector->execute(true, false)) 2749 { 2750 QList<QUuid> selectedMediumIds = pSelector->selectedMediumIds(); 2751 delete pSelector; 2752 /* Currently we only care about the 0th since we support single selection by intention: */ 2753 if (selectedMediumIds.isEmpty()) 2754 return QUuid(); 2755 else 2756 return selectedMediumIds[0]; 2757 } 2758 delete pSelector; 2759 return QUuid(); 2760 } 2761 2737 2762 void VBoxGlobal::prepareStorageMenu(QMenu &menu, 2738 2763 QObject *pListener, const char *pszSlotName, -
trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.h
r74942 r75006 523 523 QUuid showCreateFloppyDiskDialog(QWidget *pParent, const QString &strMachineName, const QString &strMachineFolder); 524 524 525 /** Creates and shows a UIMediumSelector dialog. 526 * @param parent Passes the parent of the dialog, 527 * @param enmMediumType Passes the medium type. 528 * @param strMachineName Passes the name of the machine, 529 * @param strMachineFolder Passes the machine folder, 530 * returns the ID of the selected/created medium if successful, an empty string otherwise.*/ 531 QUuid openMediumSelectorDialog(QWidget *pParent, UIMediumDeviceType enmMediumType, 532 const QString &strMachineName, const QString &strMachineFolder); 533 525 534 /** Prepares storage menu according passed parameters. 526 535 * @param menu Brings the #QMenu to be prepared. -
trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp
r74946 r75006 3796 3796 } 3797 3797 3798 QUuid UIMachineSettingsStorage::openMediumSelectorDialog(UIMediumDeviceType enmMediumType)3799 {3800 QWidget *pParent = windowManager().realParentWindow(this);3801 QPointer<UIMediumSelector> pSelector = new UIMediumSelector(enmMediumType, m_strMachineName,3802 m_strMachineSettingsFilePath, pParent);3803 3804 if (!pSelector)3805 return QString();3806 windowManager().registerNewParent(pSelector, pParent);3807 if (pSelector->execute(true, false))3808 {3809 QList<QUuid> selectedMediumIds = pSelector->selectedMediumIds();3810 delete pSelector;3811 /* Currently we only care about the 0th since we support single selection by intention: */3812 if (selectedMediumIds.isEmpty())3813 return QUuid();3814 else3815 return selectedMediumIds[0];3816 }3817 3818 delete pSelector;3819 return QUuid();3820 }3821 3822 3798 void UIMachineSettingsStorage::addAttachmentWrapper(KDeviceType enmDevice) 3823 3799 { … … 3838 3814 uMediumId = getWithNewHDWizard(); 3839 3815 else if (iAnswer == AlertButton_Choice2) 3840 uMediumId = openMediumSelectorDialog(UIMediumDeviceType_HardDisk); 3816 uMediumId = vboxGlobal().openMediumSelectorDialog(this, UIMediumDeviceType_HardDisk, 3817 m_strMachineName, m_strMachineSettingsFilePath); 3841 3818 else if (iAnswer == AlertButton_Cancel) 3842 3819 fCancelled = true; … … 3847 3824 int iAnswer = msgCenter().confirmOpticalAttachmentCreation(strControllerName, this); 3848 3825 if (iAnswer == AlertButton_Choice2) 3849 uMediumId = openMediumSelectorDialog(UIMediumDeviceType_DVD); 3826 uMediumId = vboxGlobal().openMediumSelectorDialog(this, UIMediumDeviceType_DVD, 3827 m_strMachineName, m_strMachineSettingsFilePath); 3850 3828 else if (iAnswer == AlertButton_Cancel) 3851 3829 fCancelled = true; … … 3856 3834 int iAnswer = msgCenter().confirmFloppyAttachmentCreation(strControllerName, this); 3857 3835 if (iAnswer == AlertButton_Choice2) 3858 uMediumId = openMediumSelectorDialog(UIMediumDeviceType_Floppy); 3836 uMediumId = vboxGlobal().openMediumSelectorDialog(this, UIMediumDeviceType_Floppy, 3837 m_strMachineName, m_strMachineSettingsFilePath); 3859 3838 else if (iAnswer == AlertButton_Cancel) 3860 3839 fCancelled = true; -
trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.h
r74942 r75006 742 742 void prepareConnections(); 743 743 /** Opens medium selector dialog and retrieves uuid of a selected medium (if any). */ 744 QUuid openMediumSelectorDialog(UIMediumDeviceType enmMediumType); 744 QUuid openMediumSelectorDialog(UIMediumDeviceType enmMediumType, 745 const QString &strMachineName, const QString &strMachineSettingsFilePath); 745 746 /** Cleanups all. */ 746 747 void cleanup();
Note:
See TracChangeset
for help on using the changeset viewer.