VirtualBox

Changeset 104964 in vbox


Ignore:
Timestamp:
Jun 19, 2024 12:13:28 PM (9 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
163573
Message:

FE/Qt. bugref:10659. Removing member variables for old model view classes.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/activity/overview
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewModelView.cpp

    r104962 r104964  
    733733}
    734734
     735const QMap<int, int> UIActivityOverviewAccessibleModel::dataLengths() const
     736{
     737    return m_columnDataMaxLength;
     738}
     739
    735740void UIActivityOverviewAccessibleModel::initialize()
    736741{
     
    803808}
    804809
     810void UIActivityOverviewAccessibleModel::getHostRAMStats()
     811{
     812    CHost comHost = gpGlobalSession->host();
     813    m_hostStats.m_iRAMTotal = _1M * (quint64)comHost.GetMemorySize();
     814    m_hostStats.m_iRAMFree = _1M * (quint64)comHost.GetMemoryAvailable();
     815}
     816
    805817void UIActivityOverviewAccessibleModel::sltLocalVMUpdateTimeout()
    806818{
    807819    /* Host's RAM usage is obtained from IHost not from IPerformanceCollector: */
    808     //getHostRAMStats();
     820    getHostRAMStats();
    809821
    810822    /* Use IPerformanceCollector to update VM RAM usage and Host CPU and file IO stats: */
     
    827839
    828840    emit sigDataUpdate();
    829     //emit sigHostStatsUpdate(m_hostStats);
     841    emit sigHostStatsUpdate(m_hostStats);
    830842}
    831843
     
    840852    }
    841853    return -1;
     854}
     855
     856QUuid UIActivityOverviewAccessibleModel::itemUid(int iIndex)
     857{
     858    if (iIndex >= m_rows.size() || !m_rows[iIndex])
     859        return QUuid();
     860    return m_rows[iIndex]->machineId();
    842861}
    843862
     
    899918            }
    900919        }
    901     //     else if (aReturnNames[i].contains("CPU/Load/User", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
    902     //     {
    903     //         CHost comHost = (CHost)aReturnObjects[i];
    904     //         if (!comHost.isNull())
    905     //             m_hostStats.m_iCPUUserLoad = fData;
    906     //     }
    907     //     else if (aReturnNames[i].contains("CPU/Load/Kernel", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
    908     //     {
    909     //         CHost comHost = (CHost)aReturnObjects[i];
    910     //         if (!comHost.isNull())
    911     //             m_hostStats.m_iCPUKernelLoad = fData;
    912     //     }
    913     //     else if (aReturnNames[i].contains("CPU/MHz", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
    914     //     {
    915     //         CHost comHost = (CHost)aReturnObjects[i];
    916     //         if (!comHost.isNull())
    917     //             m_hostStats.m_iCPUFreq = fData;
    918     //     }
    919     //    else if (aReturnNames[i].contains("FS", Qt::CaseInsensitive) &&
    920     //             aReturnNames[i].contains("Total", Qt::CaseInsensitive) &&
    921     //             !aReturnNames[i].contains(":"))
    922     //    {
    923     //         CHost comHost = (CHost)aReturnObjects[i];
    924     //         if (!comHost.isNull())
    925     //             m_hostStats.m_iFSTotal = _1M * fData;
    926     //    }
    927     //    else if (aReturnNames[i].contains("FS", Qt::CaseInsensitive) &&
    928     //             aReturnNames[i].contains("Free", Qt::CaseInsensitive) &&
    929     //             !aReturnNames[i].contains(":"))
    930     //    {
    931     //         CHost comHost = (CHost)aReturnObjects[i];
    932     //         if (!comHost.isNull())
    933     //             m_hostStats.m_iFSFree = _1M * fData;
    934     //    }
     920        else if (aReturnNames[i].contains("CPU/Load/User", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
     921        {
     922            CHost comHost = (CHost)aReturnObjects[i];
     923            if (!comHost.isNull())
     924                m_hostStats.m_iCPUUserLoad = fData;
     925        }
     926        else if (aReturnNames[i].contains("CPU/Load/Kernel", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
     927        {
     928            CHost comHost = (CHost)aReturnObjects[i];
     929            if (!comHost.isNull())
     930                m_hostStats.m_iCPUKernelLoad = fData;
     931        }
     932        else if (aReturnNames[i].contains("CPU/MHz", Qt::CaseInsensitive) && !aReturnNames[i].contains(":"))
     933        {
     934            CHost comHost = (CHost)aReturnObjects[i];
     935            if (!comHost.isNull())
     936                m_hostStats.m_iCPUFreq = fData;
     937        }
     938       else if (aReturnNames[i].contains("FS", Qt::CaseInsensitive) &&
     939                aReturnNames[i].contains("Total", Qt::CaseInsensitive) &&
     940                !aReturnNames[i].contains(":"))
     941       {
     942            CHost comHost = (CHost)aReturnObjects[i];
     943            if (!comHost.isNull())
     944                m_hostStats.m_iFSTotal = _1M * fData;
     945       }
     946       else if (aReturnNames[i].contains("FS", Qt::CaseInsensitive) &&
     947                aReturnNames[i].contains("Free", Qt::CaseInsensitive) &&
     948                !aReturnNames[i].contains(":"))
     949       {
     950            CHost comHost = (CHost)aReturnObjects[i];
     951            if (!comHost.isNull())
     952                m_hostStats.m_iFSFree = _1M * fData;
     953       }
    935954    }
    936955}
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewModelView.h

    r104962 r104964  
    5252class UIVirtualMachineItemCloud;
    5353
     54/*********************************************************************************************************************************
     55*   Class UIVMActivityOverviewHostStats definition.                                                                              *
     56*********************************************************************************************************************************/
     57/** A simple container to store host related performance values. */
     58class UIVMActivityOverviewHostStats
     59{
     60
     61public:
     62
     63    UIVMActivityOverviewHostStats();
     64    quint64 m_iCPUUserLoad;
     65    quint64 m_iCPUKernelLoad;
     66    quint64 m_iCPUFreq;
     67    quint64 m_iRAMTotal;
     68    quint64 m_iRAMFree;
     69    quint64 m_iFSTotal;
     70    quint64 m_iFSFree;
     71};
     72
     73
    5474class UIVMActivityOverviewAccessibleTableView : public QITableView
    5575{
     
    174194
    175195    void sigDataUpdate();
     196    void sigHostStatsUpdate(const UIVMActivityOverviewHostStats &stats);
    176197
    177198public:
     
    192213    bool columnVisible(int iColumnId) const;
    193214    void setCloudMachineItems(const QList<UIVirtualMachineItemCloud*> &cloudItems);
     215    QUuid itemUid(int iIndex);
     216    const QMap<int, int> dataLengths() const;
    194217
    195218private slots:
     
    206229    void setupPerformanceCollector();
    207230    void queryPerformanceCollector();
     231    void getHostRAMStats();
    208232    QVector<UIActivityOverviewAccessibleRow*> m_rows;
    209233    QITableView *m_pTableView;
     
    219243       QVector<CUnknown> m_objectList;
    220244    /** @} */
    221 
     245    UIVMActivityOverviewHostStats m_hostStats;
    222246};
    223247
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewWidget.cpp

    r104963 r104964  
    115115    /** If not empty this text is drawn at the center of the doughnut chart. */
    116116    QString m_strCenter;
    117 };
    118 
    119 
    120 /*********************************************************************************************************************************
    121 *   Class UIVMActivityOverviewHostStats definition.                                                                              *
    122 *********************************************************************************************************************************/
    123 /** A simple container to store host related performance values. */
    124 class UIVMActivityOverviewHostStats
    125 {
    126 
    127 public:
    128 
    129     UIVMActivityOverviewHostStats();
    130     quint64 m_iCPUUserLoad;
    131     quint64 m_iCPUKernelLoad;
    132     quint64 m_iCPUFreq;
    133     quint64 m_iRAMTotal;
    134     quint64 m_iRAMFree;
    135     quint64 m_iFSTotal;
    136     quint64 m_iFSFree;
    137117};
    138118
     
    17451725    , m_fShowToolbar(fShowToolbar)
    17461726    , m_pToolBar(0)
    1747     , m_pTableView(0)
    17481727    , m_pAccessibleTableView(0)
    1749     , m_pProxyModel(0)
    17501728    , m_pAccessibleProxyModel(0)
    1751     , m_pModel(0)
    17521729    , m_pAccessibleModel(0)
    17531730    , m_pColumnVisibilityToggleMenu(0)
     
    17791756{
    17801757    m_fIsCurrentTool = fIsCurrentTool;
    1781     if (m_pModel)
    1782         m_pModel->setShouldUpdate(fIsCurrentTool);
    17831758    if (m_pAccessibleModel)
    17841759        m_pAccessibleModel->setShouldUpdate(fIsCurrentTool);
     
    17871762void UIVMActivityOverviewWidget::setCloudMachineItems(const QList<UIVirtualMachineItemCloud*> &cloudItems)
    17881763{
    1789     if (m_pModel)
    1790         m_pModel->setCloudMachineItems(cloudItems);
    17911764    if (m_pAccessibleModel)
    17921765        m_pAccessibleModel->setCloudMachineItems(cloudItems);
     
    18121785    updateColumnsMenu();
    18131786
    1814     if (m_pModel)
    1815         m_pModel->setColumnCaptions(m_columnTitles);
    1816 
    18171787    if (m_pAccessibleModel)
    18181788        m_pAccessibleModel->setColumnCaptions(m_columnTitles);
     
    18231793void UIVMActivityOverviewWidget::showEvent(QShowEvent *pEvent)
    18241794{
    1825     if (m_pVMActivityMonitorAction && m_pTableView)
    1826         m_pVMActivityMonitorAction->setEnabled(m_pTableView->hasSelection());
     1795    if (m_pVMActivityMonitorAction && m_pAccessibleTableView)
     1796        m_pVMActivityMonitorAction->setEnabled(m_pAccessibleTableView->hasSelection());
    18271797
    18281798    QWidget::showEvent(pEvent);
     
    18761846    if (m_pHostStatsWidget)
    18771847        layout()->addWidget(m_pHostStatsWidget);
    1878 
    1879     m_pModel = new UIActivityOverviewModel(this);
    1880     m_pProxyModel = new UIActivityOverviewProxyModel(this);
    1881     m_pTableView = new UIVMActivityOverviewTableView();
    1882     if (m_pTableView && m_pModel && m_pProxyModel)
    1883     {
    1884         layout()->addWidget(m_pTableView);
    1885         m_pProxyModel->setSourceModel(m_pModel);
    1886         m_pProxyModel->setNotRunningVMVisibility(m_fShowNotRunningVMs);
    1887         m_pProxyModel->setSortCaseSensitivity(Qt::CaseInsensitive);
    1888         m_pTableView->setModel(m_pProxyModel);
    1889         m_pTableView->setItemDelegate(new UIVMActivityOverviewDelegate(this));
    1890         m_pTableView->setSelectionMode(QAbstractItemView::SingleSelection);
    1891         m_pTableView->setSelectionBehavior(QAbstractItemView::SelectRows);
    1892         m_pTableView->setShowGrid(false);
    1893         m_pTableView->setContextMenuPolicy(Qt::CustomContextMenu);
    1894         m_pTableView->horizontalHeader()->setHighlightSections(false);
    1895         m_pTableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);
    1896         m_pTableView->verticalHeader()->setVisible(false);
    1897         m_pTableView->setEditTriggers(QAbstractItemView::NoEditTriggers);
    1898         /* Minimize the row height: */
    1899         m_pTableView->verticalHeader()->setDefaultSectionSize(m_pTableView->verticalHeader()->minimumSectionSize());
    1900         m_pTableView->setAlternatingRowColors(true);
    1901         m_pTableView->setSortingEnabled(true);
    1902         m_pTableView->sortByColumn(0, Qt::AscendingOrder);
    1903 
    1904         connect(m_pModel, &UIActivityOverviewModel::sigDataUpdate,
    1905                 this, &UIVMActivityOverviewWidget::sltHandleDataUpdate);
    1906         connect(m_pAccessibleModel, &UIActivityOverviewAccessibleModel::sigDataUpdate,
    1907                 this, &UIVMActivityOverviewWidget::sltHandleDataUpdate);
    1908         connect(m_pModel, &UIActivityOverviewModel::sigHostStatsUpdate,
    1909                 this, &UIVMActivityOverviewWidget::sltHandleHostStatsUpdate);
    1910         connect(m_pTableView, &UIVMActivityOverviewTableView::sigSelectionChanged,
    1911                 this, &UIVMActivityOverviewWidget::sltHandleTableSelectionChanged);
    1912         updateModelColumVisibilityCache();
    1913     }
    1914 
    19151848
    19161849    m_pAccessibleProxyModel = new UIActivityOverviewAccessibleProxyModel(this);
     
    19411874    connect(m_pAccessibleTableView, &UIVMActivityOverviewAccessibleTableView::sigSelectionChanged,
    19421875            this, &UIVMActivityOverviewWidget::sltHandleTableSelectionChanged);
    1943 
     1876    connect(m_pAccessibleModel, &UIActivityOverviewAccessibleModel::sigDataUpdate,
     1877            this, &UIVMActivityOverviewWidget::sltHandleDataUpdate);
     1878    connect(m_pAccessibleModel, &UIActivityOverviewAccessibleModel::sigHostStatsUpdate,
     1879            this, &UIVMActivityOverviewWidget::sltHandleHostStatsUpdate);
     1880
     1881    updateModelColumVisibilityCache();
    19441882    layout()->addWidget(m_pAccessibleTableView);
    19451883}
     
    20251963void UIVMActivityOverviewWidget::sltClearCOMData()
    20261964{
    2027     if (m_pModel)
    2028         m_pModel->clearData();
    20291965    if (m_pAccessibleModel)
    20301966        m_pAccessibleModel->clearData();
     
    20561992{
    20571993    computeMinimumColumnWidths();
    2058     if (m_pProxyModel)
    2059         m_pProxyModel->dataUpdate();
    20601994    if (m_pAccessibleProxyModel)
    20611995        m_pAccessibleProxyModel->dataUpdate();
     
    20922026{
    20932027    Q_UNUSED(deselected);
    2094     if (!m_pVMActivityMonitorAction || !m_pModel || !m_pProxyModel)
     2028    if (!m_pVMActivityMonitorAction || !m_pAccessibleModel || !m_pAccessibleProxyModel)
    20952029        return;
    20962030
     
    21002034        return;
    21012035    }
    2102     int iMachineIndex = m_pProxyModel->mapToSource(selected.indexes()[0]).row();
    2103     if (!m_pModel->isVMRunning(iMachineIndex))
     2036    int iMachineIndex = m_pAccessibleProxyModel->mapToSource(selected.indexes()[0]).row();
     2037    if (!m_pAccessibleModel->isVMRunning(iMachineIndex))
    21042038    {
    21052039        m_pVMActivityMonitorAction->setEnabled(false);
     
    21112045void UIVMActivityOverviewWidget::sltHandleShowVMActivityMonitor()
    21122046{
    2113     if (!m_pTableView || !m_pModel)
    2114         return;
    2115     const QUuid uMachineId = m_pModel->itemUid(m_pTableView->selectedItemIndex());
     2047    if (!m_pAccessibleTableView || !m_pAccessibleModel)
     2048        return;
     2049    const QUuid uMachineId = m_pAccessibleModel->itemUid(m_pAccessibleTableView->selectedItemIndex());
    21162050    if (uMachineId.isNull())
    21172051        return;
     
    21222056{
    21232057    m_fShowNotRunningVMs = fShow;
    2124     if (m_pProxyModel)
    2125         m_pProxyModel->setNotRunningVMVisibility(m_fShowNotRunningVMs);
    21262058    if (m_pAccessibleProxyModel)
    21272059        m_pAccessibleProxyModel->setNotRunningVMVisibility(m_fShowNotRunningVMs);
    2128 
    21292060}
    21302061
     
    21322063{
    21332064    m_fShowCloudVMs = fShow;
    2134     if (m_pProxyModel)
    2135         m_pProxyModel->setCloudVMVisibility(m_fShowCloudVMs);
    21362065    if (m_pAccessibleProxyModel)
    21372066        m_pAccessibleProxyModel->setCloudVMVisibility(m_fShowCloudVMs);
     
    21482077void UIVMActivityOverviewWidget::updateModelColumVisibilityCache()
    21492078{
    2150     if (m_pModel)
    2151         m_pModel->setColumnVisible(m_columnVisible);
    21522079    if (m_pAccessibleModel)
    21532080        m_pAccessibleModel->setColumnVisible(m_columnVisible);
    21542081    /* Notify the table view for the changed column visibility: */
    2155     if (m_pTableView)
    2156         m_pTableView->updateColumVisibility();
    21572082    if (m_pAccessibleTableView)
    21582083        m_pAccessibleTableView->updateColumVisibility();
     
    21612086void UIVMActivityOverviewWidget::computeMinimumColumnWidths()
    21622087{
    2163     if (!m_pTableView || !m_pModel)
    2164         return;
    2165     QFontMetrics fontMetrics(m_pTableView->font());
    2166     const QMap<int, int> &columnDataStringLengths = m_pModel->dataLengths();
     2088    if (!m_pAccessibleTableView || !m_pAccessibleModel)
     2089        return;
     2090    QFontMetrics fontMetrics(m_pAccessibleTableView->font());
     2091    const QMap<int, int> &columnDataStringLengths = m_pAccessibleModel->dataLengths();
    21672092    QMap<int, int> columnWidthsInPixels;
    21682093    for (int i = 0; i < (int)VMActivityOverviewColumn_Max; ++i)
     
    21762101                                + m_iSortIndicatorWidth;
    21772102    }
    2178     m_pTableView->setMinimumColumnWidths(columnWidthsInPixels);
    21792103    m_pAccessibleTableView->setMinimumColumnWidths(columnWidthsInPixels);
    21802104}
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewWidget.h

    r104916 r104964  
    132132      * @{ */
    133133        QIToolBar *m_pToolBar;
    134         UIVMActivityOverviewTableView       *m_pTableView;
    135134        UIVMActivityOverviewAccessibleTableView    *m_pAccessibleTableView;
    136 
    137         UIActivityOverviewProxyModel        *m_pProxyModel;
    138135        UIActivityOverviewAccessibleProxyModel *m_pAccessibleProxyModel;
    139         UIActivityOverviewModel             *m_pModel;
    140136        UIActivityOverviewAccessibleModel   *m_pAccessibleModel;
    141137        QMenu                              *m_pColumnVisibilityToggleMenu;
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