VirtualBox

Changeset 68744 in vbox for trunk


Ignore:
Timestamp:
Sep 13, 2017 2:01:54 PM (7 years ago)
Author:
vboxsync
Message:

FE/Qt: bugref:8901: Reworking snapshot details report code (step 1).

Location:
trunk/src/VBox/Frontends/VirtualBox/src/selector
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/selector/UISnapshotDetailsWidget.cpp

    r68735 r68744  
    631631        /* Rebuild the details report: */
    632632        foreach (const DetailsElementType &enmType, m_details.keys())
    633             m_details.value(enmType)->setText(detailsReport(comMachine, enmType));
     633            m_details.value(enmType)->setText(detailsReport(enmType, comMachine));
    634634    }
    635635
     
    11191119}
    11201120
    1121 QString UISnapshotDetailsWidget::detailsReport(const CMachine &comMachine, DetailsElementType enmType)
     1121QString UISnapshotDetailsWidget::detailsReport(DetailsElementType enmType,
     1122                                               const CMachine &comMachine) const
    11221123{
    11231124    /* Details templates: */
     
    11551156    /* Compose report: */
    11561157    QString strReport;
     1158    QString strItem;
     1159    int iRowCount = 0;
    11571160    switch (enmType)
    11581161    {
    11591162        case DetailsElementType_General:
    11601163        {
    1161             /* Name, Operating System: */
    1162             int iRowCount = 2;
    1163             QString strItem = QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Name", "details (general)"),
    1164                                                             comMachine.GetName())
    1165                             + QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Operating System", "details (general)"),
    1166                                                             vboxGlobal().vmGuestOSTypeDescription(comMachine.GetOSTypeId()));
     1164            /* Name: */
     1165            ++iRowCount;
     1166            strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Name", "details (general)"),
     1167                                                     comMachine.GetName());
     1168
     1169            /* Operating System: */
     1170            ++iRowCount;
     1171            strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Operating System", "details (general)"),
     1172                                                     vboxGlobal().vmGuestOSTypeDescription(comMachine.GetOSTypeId()));
    11671173
    11681174            /* Groups? */
     
    11741180            if (!aGroups.isEmpty())
    11751181            {
    1176                 ++iRowCount;
    11771182                /* For all groups => Trim first '/' symbol: */
    11781183                for (int i = 0; i < aGroups.size(); ++i)
     
    11821187                        strGroup.remove(0, 1);
    11831188                }
     1189                ++iRowCount;
    11841190                strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Groups", "details (general)"),
    11851191                                                         aGroups.join(", "));
    11861192            }
    1187 
    1188             /* Append report: */
    1189             strReport += strSectionTpl
    1190                 .arg(1 + iRowCount) /* rows */
    1191                 .arg("details://general", /* icon */
    1192                      QString::number(iIconArea), /* icon area */
    1193                      gpConverter->toString(enmType), /* title */
    1194                      strItem /* items */);
    11951193
    11961194            break;
     
    11991197        {
    12001198            /* Base Memory: */
    1201             int iRowCount = 1;
    1202             QString strItem = QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Base Memory", "details (system)"),
    1203                                                             QApplication::translate("UIGDetails", "%1 MB", "details").arg(comMachine.GetMemorySize()));
     1199            ++iRowCount;
     1200            strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Base Memory", "details (system)"),
     1201                                                     QApplication::translate("UIGDetails", "%1 MB", "details").arg(comMachine.GetMemorySize()));
    12041202
    12051203            /* Processors? */
     
    12221220
    12231221            /* Boot Order: */
    1224             ++iRowCount;
    12251222            QStringList aBootOrder;
    12261223            for (ulong i = 1; i <= vboxGlobal().virtualBox().GetSystemProperties().GetMaxBootPosition(); ++i)
     
    12321229            if (aBootOrder.isEmpty())
    12331230                aBootOrder << gpConverter->toString(KDeviceType_Null);
     1231            ++iRowCount;
    12341232            strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Boot Order", "details (system)"),
    12351233                                                     aBootOrder.join(", "));
     
    12521250                case KFirmwareType_EFIDUAL:
    12531251                {
     1252                    const QString strEFI = QApplication::translate("UIGDetails", "Enabled", "details (system/EFI)");
    12541253                    ++iRowCount;
    1255                     const QString strEFI = QApplication::translate("UIGDetails", "Enabled", "details (system/EFI)");
    12561254                    strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "EFI", "details (system)"), strEFI);
    12571255                    break;
     
    12591257                default:
    12601258                {
     1259                    const QString strEFI = QApplication::translate("UIGDetails", "Disabled", "details (system/EFI)"); Q_UNUSED(strEFI);
    12611260                    //++iRowCount;
    1262                     const QString strEFI = QApplication::translate("UIGDetails", "Disabled", "details (system/EFI)"); Q_UNUSED(strEFI);
    12631261                    //strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "EFI", "details (system)"), strEFI);
    12641262                    break;
     
    12981296            }
    12991297
    1300             /* Append report: */
    1301             strReport += strSectionTpl
    1302                 .arg(1 + iRowCount) /* rows */
    1303                 .arg("details://system", /* icon */
    1304                      QString::number(iIconArea), /* icon area */
    1305                      gpConverter->toString(enmType), /* title */
    1306                      strItem); /* items */
    1307 
    13081298            break;
    13091299        }
     
    13111301        {
    13121302            /* Preview: */
    1313             int iRowCount = 1;
    1314             QString strItem = QString(sSectionItemTpl4).arg("details://thumbnail").arg("#thumbnail");
    1315 
    1316             /* Append report: */
    1317             if (!m_pixmapScreenshot.isNull())
    1318                 strReport += strSectionTpl
    1319                     .arg(1 + iRowCount) /* rows */
    1320                     .arg("details://preview", /* icon */
    1321                          QString::number(iIconArea), /* icon area */
    1322                          gpConverter->toString(enmType), /* title */
    1323                          strItem); /* items */
     1303            ++iRowCount;
     1304            strItem += QString(sSectionItemTpl4).arg("details://thumbnail").arg("#thumbnail");
    13241305
    13251306            break;
     
    13321313
    13331314            /* Video Memory: */
    1334             int iRowCount = 1;
    1335             QString strItem = QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Video Memory", "details (display)"),
    1336                                                             QApplication::translate("UIGDetails", "%1 MB", "details").arg(comMachine.GetVRAMSize()));
     1315            ++iRowCount;
     1316            strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Video Memory", "details (display)"),
     1317                                                     QApplication::translate("UIGDetails", "%1 MB", "details").arg(comMachine.GetVRAMSize()));
    13371318
    13381319            /* Screens? */
     
    13811362                else
    13821363                {
     1364                    const QString strHiDPI = QApplication::translate("UIGDetails", "Disabled", "details (display/Unscaled HiDPI Video Output)"); Q_UNUSED(strHiDPI);
    13831365                    //++iRowCount;
    1384                     const QString strHiDPI = QApplication::translate("UIGDetails", "Disabled", "details (display/Unscaled HiDPI Video Output)"); Q_UNUSED(strHiDPI);
    13851366                    //strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Unscaled HiDPI Video Output", "details (display)"), strHiDPI);
    13861367                }
     
    14361417            }
    14371418
    1438             /* Append report: */
    1439             strReport += strSectionTpl
    1440                 .arg(1 + iRowCount) /* rows */
    1441                 .arg("details://display", /* icon */
    1442                      QString::number(iIconArea), /* icon area */
    1443                      gpConverter->toString(enmType), /* title */
    1444                      strItem); /* items */
    1445 
    14461419            break;
    14471420        }
    14481421        case DetailsElementType_Storage:
    14491422        {
    1450             /* Nothing: */
    1451             int iRowCount = 0;
    1452             QString strItem;
    1453 
    14541423            /* Iterate over the all machine controllers: */
    14551424            foreach (const CStorageController &comController, comMachine.GetStorageControllers())
    14561425            {
    14571426                /* Add controller information: */
    1458                 ++iRowCount;
    14591427                const QString strControllerName = QApplication::translate("UIMachineSettingsStorage", "Controller: %1");
     1428                ++iRowCount;
    14601429                strItem += QString(sSectionItemTpl3).arg(strControllerName.arg(comController.GetName()));
    14611430
     
    15021471            if (strItem.isNull())
    15031472            {
     1473                /* Not Attached: */
    15041474                ++iRowCount;
    15051475                strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "Not Attached", "details (storage)"));
    15061476            }
    1507 
    1508             /* Append report: */
    1509             strReport += strSectionTpl
    1510                 .arg(1 + iRowCount) /* rows */
    1511                 .arg("details://storage", /* icon */
    1512                      QString::number(iIconArea), /* icon area */
    1513                      gpConverter->toString(enmType), /* title */
    1514                      strItem); /* items */
    15151477
    15161478            break;
     
    15181480        case DetailsElementType_Audio:
    15191481        {
    1520             /* Nothing: */
    1521             int iRowCount = 0;
    1522             QString strItem;
    1523 
    1524             /* Host Driver, Controller? */
    15251482            const CAudioAdapter &comAudio = comMachine.GetAudioAdapter();
    15261483            if (comAudio.GetEnabled())
    15271484            {
    1528                 iRowCount += 2;
    1529                 strItem = QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Host Driver", "details (audio)"),
    1530                                                         gpConverter->toString(comAudio.GetAudioDriver()))
    1531                         + QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Controller", "details (audio)"),
    1532                                                         gpConverter->toString(comAudio.GetAudioController()));
     1485                /* Host Driver: */
     1486                ++iRowCount;
     1487                strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Host Driver", "details (audio)"),
     1488                                                         gpConverter->toString(comAudio.GetAudioDriver()));
     1489
     1490                /* Controller: */
     1491                ++iRowCount;
     1492                strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Controller", "details (audio)"),
     1493                                                         gpConverter->toString(comAudio.GetAudioController()));
    15331494
    15341495#ifdef VBOX_WITH_AUDIO_INOUT_INFO
     
    15501511            else
    15511512            {
     1513                /* Disabled: */
    15521514                ++iRowCount;
    15531515                strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "Disabled", "details (audio)"));
    15541516            }
    1555 
    1556             /* Append report: */
    1557             strReport += strSectionTpl
    1558                 .arg(1 + iRowCount) /* rows */
    1559                 .arg("details://audio", /* icon */
    1560                      QString::number(iIconArea), /* icon area */
    1561                      gpConverter->toString(enmType), /* title */
    1562                      strItem); /* items */
    15631517
    15641518            break;
     
    15661520        case DetailsElementType_Network:
    15671521        {
    1568             /* Nothing: */
    1569             int iRowCount = 0;
    1570             QString strItem;
    1571 
    15721522            /* Enumerate all the network adapters (up to acquired/limited count): */
    15731523            const ulong iCount = vboxGlobal().virtualBox().GetSystemProperties().GetMaxNetworkAdapters(comMachine.GetChipsetType());
     
    16191569                    ++iRowCount;
    16201570                    strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Adapter %1", "details (network)")
    1621                                                                 .arg(comNetwork.GetSlot() + 1),
     1571                                                                                     .arg(comNetwork.GetSlot() + 1),
    16221572                                                             attType);
    16231573                }
     
    16271577            if (strItem.isNull())
    16281578            {
     1579                /* Disabled: */
    16291580                ++iRowCount;
    16301581                strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "Disabled", "details (network/adapter)"));
    16311582            }
    1632 
    1633             /* Append report: */
    1634             strReport += strSectionTpl
    1635                 .arg(1 + iRowCount) /* rows */
    1636                 .arg("details://network", /* icon */
    1637                      QString::number(iIconArea), /* icon area */
    1638                      gpConverter->toString(enmType), /* title */
    1639                      strItem); /* items */
    16401583
    16411584            break;
     
    16431586        case DetailsElementType_Serial:
    16441587        {
    1645             /* Nothing: */
    1646             int iRowCount = 0;
    1647             QString strItem;
    1648 
    16491588            /* Enumerate all the serial ports (up to acquired/limited count): */
    16501589            const ulong iCount = vboxGlobal().virtualBox().GetSystemProperties().GetSerialPortCount();
     
    16781617            if (strItem.isNull())
    16791618            {
     1619                /* Disabled: */
    16801620                ++iRowCount;
    16811621                strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "Disabled", "details (serial)"));
    16821622            }
    1683 
    1684             /* Append report: */
    1685             strReport += strSectionTpl
    1686                 .arg(1 + iRowCount) /* rows */
    1687                 .arg("details://serialPorts", /* icon */
    1688                      QString::number(iIconArea), /* icon area */
    1689                      gpConverter->toString(enmType), /* title */
    1690                      strItem); /* items */
    16911623
    16921624            break;
     
    16991631                && comMachine.GetUSBProxyAvailable())
    17001632            {
    1701                 /* Device Filters: */
    1702                 int iRowCount = 1;
    1703                 QString strItem;
    1704 
    17051633                /* The USB controller may be unavailable (i.e. in VirtualBox OSE): */
    17061634                const CUSBControllerVector controllers = comMachine.GetUSBControllers();
     
    17081636                {
    17091637                    /* USB Controller: */
    1710                     ++iRowCount;
    17111638                    QStringList aControllerList;
    17121639                    foreach (const CUSBController &comController, controllers)
    17131640                        aControllerList << gpConverter->toString(comController.GetType());
     1641                    ++iRowCount;
    17141642                    strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "USB Controller", "details (usb)"),
    17151643                                                             aControllerList.join(", "));
     
    17231651                            ++cActive;
    17241652                    /* Here goes the record: */
     1653                    ++iRowCount;
    17251654                    strItem += QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Device Filters", "details (usb)"),
    17261655                                                             QApplication::translate("UIGDetails", "%1 (%2 active)", "details (usb)")
     
    17301659                /* Handle side-case: */
    17311660                if (strItem.isNull())
     1661                {
     1662                    /* Disabled: */
     1663                    ++iRowCount;
    17321664                    strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "Disabled", "details (usb)"));
    1733 
    1734                 /* Append report: */
    1735                 strReport += strSectionTpl
    1736                     .arg(1 + iRowCount) /* rows */
    1737                     .arg("details://usb", /* icon */
    1738                          QString::number(iIconArea), /* icon area */
    1739                          gpConverter->toString(enmType), /* title */
    1740                          strItem); /* items */
     1665                }
    17411666            }
    17421667
     
    17451670        case DetailsElementType_SF:
    17461671        {
    1747             /* Shared Folders: */
    1748             int iRowCount = 1;
    1749             QString strItem;
    1750 
    17511672            /* Acquire shared folders count: */
    17521673            const ulong cFolders = comMachine.GetSharedFolders().size();
     1674            ++iRowCount;
    17531675            if (cFolders > 0)
    17541676                strItem = QString(sSectionItemTpl2).arg(QApplication::translate("UIGDetails", "Shared Folders", "details (shared folders)"),
     
    17571679                strItem = QString(sSectionItemTpl1).arg(QApplication::translate("UIGDetails", "None", "details (shared folders)"));
    17581680
    1759             /* Append report: */
    1760             strReport += strSectionTpl
    1761                 .arg(1 + iRowCount) /* rows */
    1762                 .arg("details://sharedFolders", /* icon */
    1763                      QString::number(iIconArea), /* icon area */
    1764                      gpConverter->toString(enmType), /* title */
    1765                      strItem); /* items */
    1766 
    17671681            break;
    17681682        }
     
    17701684            break;
    17711685    }
     1686
     1687    /* Append report: */
     1688    if (enmType != DetailsElementType_Preview || !m_pixmapScreenshot.isNull())
     1689        strReport += strSectionTpl
     1690            .arg(1 + iRowCount) /* rows */
     1691            .arg(QString("details://%1").arg(gpConverter->toInternalString(enmType)), /* icon */
     1692                 QString::number(iIconArea), /* icon area */
     1693                 gpConverter->toString(enmType), /* title */
     1694                 strItem /* items */);
    17721695
    17731696    /* Return report as table: */
  • trunk/src/VBox/Frontends/VirtualBox/src/selector/UISnapshotDetailsWidget.h

    r68735 r68744  
    147147    void updateButtonStates();
    148148
    149     /** Returns a details report on a given @a comMachine. */
    150     QString detailsReport(const CMachine &comMachine, DetailsElementType enmType);
     149    /** Returns details report of requested @a enmType for a given @a comMachine. */
     150    QString detailsReport(DetailsElementType enmType, const CMachine &comMachine) const;
    151151
    152152    /** Wipes the HTML stuff from the passed @a strString. */
Note: See TracChangeset for help on using the changeset viewer.

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