VirtualBox

Changeset 90374 in vbox for trunk/src


Ignore:
Timestamp:
Jul 28, 2021 3:37:53 PM (4 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
145955
Message:

FE/Qt: bugref:10067: A bit of reordering for UINotificationObjects.

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  
    2121
    2222/*********************************************************************************************************************************
     23*   Class UINotificationProgressMediumCreate implementation.                                                                     *
     24*********************************************************************************************************************************/
     25
     26UINotificationProgressMediumCreate::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
     37QString UINotificationProgressMediumCreate::name() const
     38{
     39    return UINotificationProgress::tr("Creating medium ...");
     40}
     41
     42QString 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
     48CProgress 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
     58void 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
     69UINotificationProgressMediumCopy::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
     80QString UINotificationProgressMediumCopy::name() const
     81{
     82    return UINotificationProgress::tr("Copying medium ...");
     83}
     84
     85QString 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
     91CProgress 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
     101void UINotificationProgressMediumCopy::sltHandleProgressFinished()
     102{
     103    if (m_comTarget.isNotNull() && !m_comTarget.GetId().isNull())
     104        emit sigMediumCopied(m_comTarget);
     105}
     106
     107
     108/*********************************************************************************************************************************
    23109*   Class UINotificationProgressMediumMove implementation.                                                                       *
    24110*********************************************************************************************************************************/
     
    51137    /* Return progress-wrapper: */
    52138    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() const
    72 {
    73     return UINotificationProgress::tr("Creating medium ...");
    74 }
    75 
    76 QString UINotificationProgressMediumCreate::details() const
    77 {
    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() const
    115 {
    116     return UINotificationProgress::tr("Copying medium ...");
    117 }
    118 
    119 QString UINotificationProgressMediumCopy::details() const
    120 {
    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);
    139139}
    140140
  • trunk/src/VBox/Frontends/VirtualBox/src/notificationcenter/UINotificationObjects.h

    r90373 r90374  
    3636#include "CVirtualSystemDescription.h"
    3737
     38/** UINotificationProgress extension for medium create functionality. */
     39class SHARED_LIBRARY_STUFF UINotificationProgressMediumCreate : public UINotificationProgress
     40{
     41    Q_OBJECT;
     42
     43signals:
     44
     45    /** Notifies listeners about @a comMedium was created. */
     46    void sigMediumCreated(const CMedium &comMedium);
     47
     48public:
     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
     58protected:
     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
     67private slots:
     68
     69    /** Handles signal about progress being finished. */
     70    void sltHandleProgressFinished();
     71
     72private:
     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. */
     83class SHARED_LIBRARY_STUFF UINotificationProgressMediumCopy : public UINotificationProgress
     84{
     85    Q_OBJECT;
     86
     87signals:
     88
     89    /** Notifies listeners about @a comMedium was copied. */
     90    void sigMediumCopied(const CMedium &comMedium);
     91
     92public:
     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
     102protected:
     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
     111private slots:
     112
     113    /** Handles signal about progress being finished. */
     114    void sltHandleProgressFinished();
     115
     116private:
     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
    38126/** UINotificationProgress extension for medium move functionality. */
    39127class SHARED_LIBRARY_STUFF UINotificationProgressMediumMove : public UINotificationProgress
     
    68156    /** Holds the final location. */
    69157    QString  m_strTo;
    70 };
    71 
    72 /** UINotificationProgress extension for medium create functionality. */
    73 class SHARED_LIBRARY_STUFF UINotificationProgressMediumCreate : public UINotificationProgress
    74 {
    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 UINotificationProgress
    118 {
    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;
    158158};
    159159
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette