Changeset 104972 in vbox
- Timestamp:
- Jun 20, 2024 9:21:03 AM (3 months ago)
- Location:
- trunk/src/VBox/Frontends/VirtualBox/src/activity/overview
- Files:
-
- 2 edited
-
UIVMActivityOverviewModelView.cpp (modified) (11 diffs)
-
UIVMActivityOverviewModelView.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewModelView.cpp
r104970 r104972 116 116 QString m_strMachineName; 117 117 quint64 m_uTotalRAM; 118 118 119 private: 119 120 … … 148 149 private: 149 150 150 151 152 151 KMachineState m_enmMachineState; 153 152 CMachineDebugger m_comDebugger; 154 153 CSession m_comSession; 155 154 CGuest m_comGuest; 156 157 158 155 quint64 m_uFreeRAM; 159 160 156 quint64 m_uNetworkDownTotal; 161 157 quint64 m_uNetworkUpTotal; 162 163 158 quint64 m_uVMExitTotal; 164 159 quint64 m_uDiskWriteTotal; 165 160 quint64 m_uDiskReadTotal; 166 167 161 }; 168 162 … … 176 170 { 177 171 Q_OBJECT; 172 178 173 public: 174 179 175 UIVMActivityOverviewRowCloud(QITableView *pTableView, const QUuid &uMachineId, 180 176 const QString &strMachineName, CCloudMachine &comCloudMachine); … … 185 181 virtual void setMachineState(int iState) RT_OVERRIDE RT_FINAL; 186 182 187 188 protected:189 190 183 private slots: 191 184 … … 205 198 }; 206 199 200 201 /********************************************************************************************************************************* 202 * UIVMActivityOverviewCell implementation. * 203 *********************************************************************************************************************************/ 204 205 UIVMActivityOverviewCell::UIVMActivityOverviewCell(QITableViewRow *pRow, int iColumnIndex) 206 :QITableViewCell(pRow) 207 , m_iColumnIndex(iColumnIndex) 208 { 209 } 210 211 QString UIVMActivityOverviewCell::text() const 212 { 213 return m_strText; 214 } 215 216 int UIVMActivityOverviewCell::columnLength(int /*iColumnIndex*/) const 217 { 218 return 0; 219 //return m_columnData.value(iColumnIndex, QString()).length(); 220 } 221 222 void UIVMActivityOverviewCell::setText(const QString &strText) 223 { 224 m_strText = strText; 225 } 226 227 /********************************************************************************************************************************* 228 * UIVMActivityOverviewRow implementation. * 229 *********************************************************************************************************************************/ 230 231 UIVMActivityOverviewRow::UIVMActivityOverviewRow(QITableView *pTableView, const QUuid &uMachineId, 232 const QString &strMachineName) 233 : QITableViewRow(pTableView) 234 , m_uMachineId(uMachineId) 235 , m_strMachineName(strMachineName) 236 , m_uTotalRAM(0) 237 { 238 initCells(); 239 } 240 241 int UIVMActivityOverviewRow::childCount() const 242 { 243 return m_cells.size(); 244 } 245 246 QITableViewCell *UIVMActivityOverviewRow::childItem(int iIndex) const 247 { 248 return m_cells.value(iIndex, 0); 249 } 250 251 QString UIVMActivityOverviewRow::cellText(int iColumn) const 252 { 253 if (!m_cells.contains(iColumn)) 254 return QString(); 255 if (!m_cells[iColumn]) 256 return QString(); 257 return m_cells[iColumn]->text(); 258 } 259 260 int UIVMActivityOverviewRow::columnLength(int iColumnIndex) const 261 { 262 UIVMActivityOverviewCell *pCell = m_cells.value(iColumnIndex, 0); 263 if (!pCell) 264 return 0; 265 return pCell->text().length(); 266 } 267 268 UIVMActivityOverviewRow::~UIVMActivityOverviewRow() 269 { 270 qDeleteAll(m_cells); 271 } 272 273 void UIVMActivityOverviewRow::initCells() 274 { 275 for (int i = (int) VMActivityOverviewColumn_Name; i < (int) VMActivityOverviewColumn_Max; ++i) 276 m_cells[i] = new UIVMActivityOverviewCell(this, i); 277 m_cells[VMActivityOverviewColumn_Name]->setText(m_strMachineName); 278 } 279 280 const QUuid &UIVMActivityOverviewRow::machineId() const 281 { 282 return m_uMachineId; 283 } 284 285 void UIVMActivityOverviewRow::updateCellText(int /*VMActivityOverviewColumn*/ enmColumnIndex, const QString &strText) 286 { 287 if (m_cells.value(enmColumnIndex, 0)) 288 m_cells[enmColumnIndex]->setText(strText); 289 } 207 290 208 291 /********************************************************************************************************************************* … … 223 306 if (m_enmMachineState == KMachineState_Running) 224 307 resetDebugger(); 225 226 308 } 227 309 … … 292 374 updateCellText(VMActivityOverviewColumn_VMExits, QString("%1/%2").arg(UITranslator::addMetricSuffixToNumber(uVMExitRate)). 293 375 arg(UITranslator::addMetricSuffixToNumber(m_uVMExitTotal))); 294 295 296 376 } 297 377 … … 359 439 return gpConverter->toString(m_enmMachineState); 360 440 } 361 362 441 363 442 /********************************************************************************************************************************* … … 623 702 } 624 703 } 625 626 704 627 705 /********************************************************************************************************************************* … … 1019 1097 } 1020 1098 1021 1022 1099 /********************************************************************************************************************************* 1023 1100 * UIVMActivityOverviewProxyModel implementation. * 1024 1101 *********************************************************************************************************************************/ 1102 1025 1103 UIVMActivityOverviewProxyModel::UIVMActivityOverviewProxyModel(QObject *pParent /* = 0 */) 1026 1104 : QSortFilterProxyModel(pParent) … … 1095 1173 1096 1174 1097 1098 /*********************************************************************************************************************************1099 * UIVMActivityOverviewRow implementation. *1100 *********************************************************************************************************************************/1101 1102 UIVMActivityOverviewRow::UIVMActivityOverviewRow(QITableView *pTableView, const QUuid &uMachineId,1103 const QString &strMachineName)1104 : QITableViewRow(pTableView)1105 , m_uMachineId(uMachineId)1106 , m_strMachineName(strMachineName)1107 , m_uTotalRAM(0)1108 {1109 initCells();1110 }1111 1112 int UIVMActivityOverviewRow::childCount() const1113 {1114 return m_cells.size();1115 }1116 1117 QITableViewCell *UIVMActivityOverviewRow::childItem(int iIndex) const1118 {1119 return m_cells.value(iIndex, 0);1120 }1121 1122 QString UIVMActivityOverviewRow::cellText(int iColumn) const1123 {1124 if (!m_cells.contains(iColumn))1125 return QString();1126 if (!m_cells[iColumn])1127 return QString();1128 return m_cells[iColumn]->text();1129 }1130 1131 int UIVMActivityOverviewRow::columnLength(int iColumnIndex) const1132 {1133 UIVMActivityOverviewCell *pCell = m_cells.value(iColumnIndex, 0);1134 if (!pCell)1135 return 0;1136 return pCell->text().length();1137 }1138 1139 UIVMActivityOverviewRow::~UIVMActivityOverviewRow()1140 {1141 qDeleteAll(m_cells);1142 }1143 1144 void UIVMActivityOverviewRow::initCells()1145 {1146 for (int i = (int) VMActivityOverviewColumn_Name; i < (int) VMActivityOverviewColumn_Max; ++i)1147 m_cells[i] = new UIVMActivityOverviewCell(this, i);1148 m_cells[VMActivityOverviewColumn_Name]->setText(m_strMachineName);1149 }1150 1151 const QUuid &UIVMActivityOverviewRow::machineId() const1152 {1153 return m_uMachineId;1154 }1155 1156 void UIVMActivityOverviewRow::updateCellText(int /*VMActivityOverviewColumn*/ enmColumnIndex, const QString &strText)1157 {1158 if (m_cells.value(enmColumnIndex, 0))1159 m_cells[enmColumnIndex]->setText(strText);1160 }1161 1162 1163 /*********************************************************************************************************************************1164 * UIVMActivityOverviewCell implementation. *1165 *********************************************************************************************************************************/1166 1167 UIVMActivityOverviewCell::UIVMActivityOverviewCell(QITableViewRow *pRow, int iColumnIndex)1168 :QITableViewCell(pRow)1169 , m_iColumnIndex(iColumnIndex)1170 {1171 }1172 1173 QString UIVMActivityOverviewCell::text() const1174 {1175 return m_strText;1176 }1177 1178 int UIVMActivityOverviewCell::columnLength(int /*iColumnIndex*/) const1179 {1180 return 0;1181 //return m_columnData.value(iColumnIndex, QString()).length();1182 }1183 1184 void UIVMActivityOverviewCell::setText(const QString &strText)1185 {1186 m_strText = strText;1187 }1188 1189 1175 #include "UIVMActivityOverviewModelView.moc" -
trunk/src/VBox/Frontends/VirtualBox/src/activity/overview/UIVMActivityOverviewModelView.h
r104970 r104972 52 52 class UIVirtualMachineItemCloud; 53 53 54 /*********************************************************************************************************************************55 * Class UIVMActivityOverviewHostStats definition. *56 *********************************************************************************************************************************/57 54 /** A simple container to store host related performance values. */ 58 55 class UIVMActivityOverviewHostStats … … 93 90 virtual void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected) RT_OVERRIDE; 94 91 virtual void mousePressEvent(QMouseEvent *pEvent) RT_OVERRIDE; 95 96 92 /** Resizes all the columns in response to resizeEvent. Columns cannot be narrower than m_minimumColumnWidths values. */ 97 93 void resizeHeaders(); 98 94 /** Value is in pixels. Columns cannot be narrower than this width. */ 99 95 QMap<int, int> m_minimumColumnWidths; 100 101 96 }; 102 103 104 97 105 98 class UIVMActivityOverviewProxyModel : public QSortFilterProxyModel … … 124 117 bool m_fShowNotRunningVMs; 125 118 bool m_fShowCloudVMs; 126 127 119 }; 128 120 … … 171 163 void getHostRAMStats(); 172 164 QVector<UIVMActivityOverviewRow*> m_rows; 173 QITableView *m_pTableView;165 QITableView *m_pTableView; 174 166 QMap<int, QString> m_columnTitles; 175 QMap<int, bool> m_columnVisible;176 QTimer *m_pLocalVMUpdateTimer;167 QMap<int, bool> m_columnVisible; 168 QTimer *m_pLocalVMUpdateTimer; 177 169 /** Maximum length of string length of data displayed in column. Updated in UIVMActivityOverviewModel::data(..). */ 178 170 mutable QMap<int, int> m_columnDataMaxLength; … … 180 172 /** @name The following are used during UIPerformanceCollector::QueryMetricsData(..) 181 173 * @{ */ 182 QVector<QString> m_nameList;174 QVector<QString> m_nameList; 183 175 QVector<CUnknown> m_objectList; 184 176 /** @} */
Note:
See TracChangeset
for help on using the changeset viewer.

