- Timestamp:
- Jul 28, 2021 3:37:53 PM (4 years ago)
- svn:sync-xref-src-repo-rev:
- 145955
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.cpp
r90373 r90374 21 21 22 22 /********************************************************************************************************************************* 23 * Class UINotificationProgressMediumCreate implementation. * 24 *********************************************************************************************************************************/ 25 26 UINotificationProgressMediumCreate::UINotificationProgressMediumCreate(const CMedium &comTarget, 27 qulonglong uSize, 28 const QVector<KMediumVariant> &variants) 29 : m_comTarget(comTarget) 30 , m_uSize(uSize) 31 , m_variants(variants) 32 { 33 connect(this, &UINotificationProgress::sigProgressFinished, 34 this, &UINotificationProgressMediumCreate::sltHandleProgressFinished); 35 } 36 37 QString UINotificationProgressMediumCreate::name() const 38 { 39 return UINotificationProgress::tr("Creating medium ..."); 40 } 41 42 QString UINotificationProgressMediumCreate::details() const 43 { 44 return UINotificationProgress::tr("<b>Location:</b> %1<br><b>Size:</b> %2") 45 .arg(m_comTarget.GetLocation()).arg(m_uSize); 46 } 47 48 CProgress UINotificationProgressMediumCreate::createProgress(COMResult &comResult) 49 { 50 /* Initialize progress-wrapper: */ 51 CProgress comProgress = m_comTarget.CreateBaseStorage(m_uSize, m_variants); 52 /* Store COM result: */ 53 comResult = m_comTarget; 54 /* Return progress-wrapper: */ 55 return comProgress; 56 } 57 58 void UINotificationProgressMediumCreate::sltHandleProgressFinished() 59 { 60 if (m_comTarget.isNotNull() && !m_comTarget.GetId().isNull()) 61 emit sigMediumCreated(m_comTarget); 62 } 63 64 65 /********************************************************************************************************************************* 66 * Class UINotificationProgressMediumCopy implementation. * 67 *********************************************************************************************************************************/ 68 69 UINotificationProgressMediumCopy::UINotificationProgressMediumCopy(const CMedium &comSource, 70 const CMedium &comTarget, 71 const QVector<KMediumVariant> &variants) 72 : m_comSource(comSource) 73 , m_comTarget(comTarget) 74 , m_variants(variants) 75 { 76 connect(this, &UINotificationProgress::sigProgressFinished, 77 this, &UINotificationProgressMediumCopy::sltHandleProgressFinished); 78 } 79 80 QString UINotificationProgressMediumCopy::name() const 81 { 82 return UINotificationProgress::tr("Copying medium ..."); 83 } 84 85 QString UINotificationProgressMediumCopy::details() const 86 { 87 return UINotificationProgress::tr("<b>From:</b> %1<br><b>To:</b> %2") 88 .arg(m_comSource.GetLocation(), m_comTarget.GetLocation()); 89 } 90 91 CProgress UINotificationProgressMediumCopy::createProgress(COMResult &comResult) 92 { 93 /* Initialize progress-wrapper: */ 94 CProgress comProgress = m_comSource.CloneTo(m_comTarget, m_variants, CMedium()); 95 /* Store COM result: */ 96 comResult = m_comSource; 97 /* Return progress-wrapper: */ 98 return comProgress; 99 } 100 101 void UINotificationProgressMediumCopy::sltHandleProgressFinished() 102 { 103 if (m_comTarget.isNotNull() && !m_comTarget.GetId().isNull()) 104 emit sigMediumCopied(m_comTarget); 105 } 106 107 108 /********************************************************************************************************************************* 23 109 * Class UINotificationProgressMediumMove implementation. * 24 110 *********************************************************************************************************************************/ … … 51 137 /* Return progress-wrapper: */ 52 138 return comProgress; 53 }54 55 56 /*********************************************************************************************************************************57 * Class UINotificationProgressMediumCreate implementation. *58 *********************************************************************************************************************************/59 60 UINotificationProgressMediumCreate::UINotificationProgressMediumCreate(const CMedium &comTarget,61 qulonglong uSize,62 const QVector<KMediumVariant> &variants)63 : m_comTarget(comTarget)64 , m_uSize(uSize)65 , m_variants(variants)66 {67 connect(this, &UINotificationProgress::sigProgressFinished,68 this, &UINotificationProgressMediumCreate::sltHandleProgressFinished);69 }70 71 QString UINotificationProgressMediumCreate::name() const72 {73 return UINotificationProgress::tr("Creating medium ...");74 }75 76 QString UINotificationProgressMediumCreate::details() const77 {78 return UINotificationProgress::tr("<b>Location:</b> %1<br><b>Size:</b> %2")79 .arg(m_comTarget.GetLocation()).arg(m_uSize);80 }81 82 CProgress UINotificationProgressMediumCreate::createProgress(COMResult &comResult)83 {84 /* Initialize progress-wrapper: */85 CProgress comProgress = m_comTarget.CreateBaseStorage(m_uSize, m_variants);86 /* Store COM result: */87 comResult = m_comTarget;88 /* Return progress-wrapper: */89 return comProgress;90 }91 92 void UINotificationProgressMediumCreate::sltHandleProgressFinished()93 {94 if (m_comTarget.isNotNull() && !m_comTarget.GetId().isNull())95 emit sigMediumCreated(m_comTarget);96 }97 98 99 /*********************************************************************************************************************************100 * Class UINotificationProgressMediumCopy implementation. *101 *********************************************************************************************************************************/102 103 UINotificationProgressMediumCopy::UINotificationProgressMediumCopy(const CMedium &comSource,104 const CMedium &comTarget,105 const QVector<KMediumVariant> &variants)106 : m_comSource(comSource)107 , m_comTarget(comTarget)108 , m_variants(variants)109 {110 connect(this, &UINotificationProgress::sigProgressFinished,111 this, &UINotificationProgressMediumCopy::sltHandleProgressFinished);112 }113 114 QString UINotificationProgressMediumCopy::name() const115 {116 return UINotificationProgress::tr("Copying medium ...");117 }118 119 QString UINotificationProgressMediumCopy::details() const120 {121 return UINotificationProgress::tr("<b>From:</b> %1<br><b>To:</b> %2")122 .arg(m_comSource.GetLocation(), m_comTarget.GetLocation());123 }124 125 CProgress UINotificationProgressMediumCopy::createProgress(COMResult &comResult)126 {127 /* Initialize progress-wrapper: */128 CProgress comProgress = m_comSource.CloneTo(m_comTarget, m_variants, CMedium());129 /* Store COM result: */130 comResult = m_comSource;131 /* Return progress-wrapper: */132 return comProgress;133 }134 135 void UINotificationProgressMediumCopy::sltHandleProgressFinished()136 {137 if (m_comTarget.isNotNull() && !m_comTarget.GetId().isNull())138 emit sigMediumCopied(m_comTarget);139 139 } 140 140 -
trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h
r90373 r90374 36 36 #include "CVirtualSystemDescription.h" 37 37 38 /** UINotificationProgress extension for medium create functionality. */ 39 class SHARED_LIBRARY_STUFF UINotificationProgressMediumCreate : public UINotificationProgress 40 { 41 Q_OBJECT; 42 43 signals: 44 45 /** Notifies listeners about @a comMedium was created. */ 46 void sigMediumCreated(const CMedium &comMedium); 47 48 public: 49 50 /** Constructs medium create notification-progress. 51 * @param comTarget Brings the medium being the target. 52 * @param uSize Brings the target medium size. 53 * @param variants Brings the target medium options. */ 54 UINotificationProgressMediumCreate(const CMedium &comTarget, 55 qulonglong uSize, 56 const QVector<KMediumVariant> &variants); 57 58 protected: 59 60 /** Returns object name. */ 61 virtual QString name() const /* override final */; 62 /** Returns object details. */ 63 virtual QString details() const /* override final */; 64 /** Creates and returns started progress-wrapper. */ 65 virtual CProgress createProgress(COMResult &comResult) /* override final */; 66 67 private slots: 68 69 /** Handles signal about progress being finished. */ 70 void sltHandleProgressFinished(); 71 72 private: 73 74 /** Holds the medium being the target. */ 75 CMedium m_comTarget; 76 /** Holds the target medium size. */ 77 qulonglong m_uSize; 78 /** Holds the target medium options. */ 79 QVector<KMediumVariant> m_variants; 80 }; 81 82 /** UINotificationProgress extension for medium copy functionality. */ 83 class SHARED_LIBRARY_STUFF UINotificationProgressMediumCopy : public UINotificationProgress 84 { 85 Q_OBJECT; 86 87 signals: 88 89 /** Notifies listeners about @a comMedium was copied. */ 90 void sigMediumCopied(const CMedium &comMedium); 91 92 public: 93 94 /** Constructs medium copy notification-progress. 95 * @param comSource Brings the medium being copied. 96 * @param comTarget Brings the medium being the target. 97 * @param variants Brings the target medium options. */ 98 UINotificationProgressMediumCopy(const CMedium &comSource, 99 const CMedium &comTarget, 100 const QVector<KMediumVariant> &variants); 101 102 protected: 103 104 /** Returns object name. */ 105 virtual QString name() const /* override final */; 106 /** Returns object details. */ 107 virtual QString details() const /* override final */; 108 /** Creates and returns started progress-wrapper. */ 109 virtual CProgress createProgress(COMResult &comResult) /* override final */; 110 111 private slots: 112 113 /** Handles signal about progress being finished. */ 114 void sltHandleProgressFinished(); 115 116 private: 117 118 /** Holds the medium being copied. */ 119 CMedium m_comSource; 120 /** Holds the medium being the target. */ 121 CMedium m_comTarget; 122 /** Holds the target medium options. */ 123 QVector<KMediumVariant> m_variants; 124 }; 125 38 126 /** UINotificationProgress extension for medium move functionality. */ 39 127 class SHARED_LIBRARY_STUFF UINotificationProgressMediumMove : public UINotificationProgress … … 68 156 /** Holds the final location. */ 69 157 QString m_strTo; 70 };71 72 /** UINotificationProgress extension for medium create functionality. */73 class SHARED_LIBRARY_STUFF UINotificationProgressMediumCreate : public UINotificationProgress74 {75 Q_OBJECT;76 77 signals:78 79 /** Notifies listeners about @a comMedium was created. */80 void sigMediumCreated(const CMedium &comMedium);81 82 public:83 84 /** Constructs medium create notification-progress.85 * @param comTarget Brings the medium being the target.86 * @param uSize Brings the target medium size.87 * @param variants Brings the target medium options. */88 UINotificationProgressMediumCreate(const CMedium &comTarget,89 qulonglong uSize,90 const QVector<KMediumVariant> &variants);91 92 protected:93 94 /** Returns object name. */95 virtual QString name() const /* override final */;96 /** Returns object details. */97 virtual QString details() const /* override final */;98 /** Creates and returns started progress-wrapper. */99 virtual CProgress createProgress(COMResult &comResult) /* override final */;100 101 private slots:102 103 /** Handles signal about progress being finished. */104 void sltHandleProgressFinished();105 106 private:107 108 /** Holds the medium being the target. */109 CMedium m_comTarget;110 /** Holds the target medium size. */111 qulonglong m_uSize;112 /** Holds the target medium options. */113 QVector<KMediumVariant> m_variants;114 };115 116 /** UINotificationProgress extension for medium copy functionality. */117 class SHARED_LIBRARY_STUFF UINotificationProgressMediumCopy : public UINotificationProgress118 {119 Q_OBJECT;120 121 signals:122 123 /** Notifies listeners about @a comMedium was copied. */124 void sigMediumCopied(const CMedium &comMedium);125 126 public:127 128 /** Constructs medium copy notification-progress.129 * @param comSource Brings the medium being copied.130 * @param comTarget Brings the medium being the target.131 * @param variants Brings the target medium options. */132 UINotificationProgressMediumCopy(const CMedium &comSource,133 const CMedium &comTarget,134 const QVector<KMediumVariant> &variants);135 136 protected:137 138 /** Returns object name. */139 virtual QString name() const /* override final */;140 /** Returns object details. */141 virtual QString details() const /* override final */;142 /** Creates and returns started progress-wrapper. */143 virtual CProgress createProgress(COMResult &comResult) /* override final */;144 145 private slots:146 147 /** Handles signal about progress being finished. */148 void sltHandleProgressFinished();149 150 private:151 152 /** Holds the medium being copied. */153 CMedium m_comSource;154 /** Holds the medium being the target. */155 CMedium m_comTarget;156 /** Holds the target medium options. */157 QVector<KMediumVariant> m_variants;158 158 }; 159 159
Note:
See TracChangeset
for help on using the changeset viewer.