VirtualBox

儲存庫 vbox 的更動 66946


忽略:
時間撮記:
2017-5-18 上午07:52:21 (8 年 以前)
作者:
vboxsync
訊息:

FE/Qt: Indicators Pool: Reworking tool-tips to be more maintainable.

位置:
trunk/src/VBox/Frontends/VirtualBox/src/runtime
檔案:
修改 2 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp

    r66569 r66946  
    55
    66/*
    7  * Copyright (C) 2010-2016 Oracle Corporation
     7 * Copyright (C) 2010-2017 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    9393    /** Holds the indicator description. */
    9494    QString m_strDescription;
     95
     96    /** Holds the table format. */
     97    static const QString s_strTable;
     98    /** Holds the table row format 1. */
     99    static const QString s_strTableRow1;
     100    /** Holds the table row format 2. */
     101    static const QString s_strTableRow2;
     102    /** Holds the table row format 3. */
     103    static const QString s_strTableRow3;
     104    /** Holds the table row format 4. */
     105    static const QString s_strTableRow4;
    95106};
     107
     108
     109/* static */
     110const QString UISessionStateStatusBarIndicator::s_strTable = QString("<table cellspacing=5 style='white-space:pre'>%1</table>");
     111/* static */
     112const QString UISessionStateStatusBarIndicator::s_strTableRow1 = QString("<tr><td colspan='2'><nobr><b>%1</b></nobr></td></tr>");
     113/* static */
     114const QString UISessionStateStatusBarIndicator::s_strTableRow2 = QString("<tr><td><nobr>%1:</nobr></td><td><nobr>%2</nobr></td></tr>");
     115/* static */
     116const QString UISessionStateStatusBarIndicator::s_strTableRow3 = QString("<tr><td><nobr>%1</nobr></td><td><nobr>%2</nobr></td></tr>");
     117/* static */
     118const QString UISessionStateStatusBarIndicator::s_strTableRow4 = QString("<tr><td><nobr>&nbsp;%1:</nobr></td><td><nobr>%2</nobr></td></tr>");
    96119
    97120
     
    183206        /* Prepare tool-tip: */
    184207        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    185                                                      "<p style='white-space:pre'><nobr>Indicates the activity "
    186                                                      "of the hard disks:</nobr>%1</p>", "HDD tooltip");
     208                                                     "<nobr>Indicates the activity of the "
     209                                                     "hard disks:</nobr>%1", "HD tooltip");
    187210        QString strFullData;
    188211
     
    199222                    continue;
    200223                /* Append attachment data: */
    201                 strAttData += QString("<br>&nbsp;<nobr>%1:&nbsp;%2</nobr>")
     224                strAttData += s_strTableRow4
    202225                    .arg(gpConverter->toString(StorageSlot(controller.GetBus(), attachment.GetPort(), attachment.GetDevice())))
    203226                    .arg(UIMedium(attachment.GetMedium(), UIMediumType_HardDisk).location());
     
    206229            /* Append controller data: */
    207230            if (!strAttData.isNull())
    208                 strFullData += QString("<br><nobr><b>%1</b></nobr>").arg(controller.GetName()) + strAttData;
     231                strFullData += s_strTableRow1.arg(controller.GetName()) + strAttData;
    209232        }
    210233
     
    214237
    215238        /* Update tool-tip: */
    216         setToolTip(strToolTip.arg(strFullData));
     239        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    217240        /* Update indicator state: */
    218241        setState(fAttachmentsPresent ? KDeviceActivity_Idle : KDeviceActivity_Null);
    219242    }
    220243};
     244
    221245
    222246/** UISessionStateStatusBarIndicator extension for Runtime UI: Optical-drive indicator. */
     
    250274        /* Prepare tool-tip: */
    251275        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    252                                                      "<p style='white-space:pre'><nobr>Indicates the activity "
    253                                                      "of the optical drives:</nobr>%1</p>", "CD tooltip");
     276                                                     "<nobr>Indicates the activity of the "
     277                                                     "optical drives:</nobr>%1", "CD tooltip");
    254278        QString strFullData;
    255279
     
    268292                /* Append attachment data: */
    269293                UIMedium vboxMedium(attachment.GetMedium(), UIMediumType_DVD);
    270                 strAttData += QString("<br>&nbsp;<nobr>%1:&nbsp;%2</nobr>")
     294                strAttData += s_strTableRow4
    271295                    .arg(gpConverter->toString(StorageSlot(controller.GetBus(), attachment.GetPort(), attachment.GetDevice())))
    272296                    .arg(vboxMedium.isNull() || vboxMedium.isHostDrive() ? vboxMedium.name() : vboxMedium.location());
     
    277301            /* Append controller data: */
    278302            if (!strAttData.isNull())
    279                 strFullData += QString("<br><nobr><b>%1</b></nobr>").arg(controller.GetName()) + strAttData;
     303                strFullData += s_strTableRow1.arg(controller.GetName()) + strAttData;
    280304        }
    281305
     
    285309
    286310        /* Update tool-tip: */
    287         setToolTip(strToolTip.arg(strFullData));
     311        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    288312        /* Update indicator state: */
    289313        setState(fAttachmentsMounted ? KDeviceActivity_Idle : KDeviceActivity_Null);
    290314    }
    291315};
     316
    292317
    293318/** UISessionStateStatusBarIndicator extension for Runtime UI: Floppy-drive indicator. */
     
    321346        /* Prepare tool-tip: */
    322347        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    323                                                      "<p style='white-space:pre'><nobr>Indicates the activity "
    324                                                      "of the floppy drives:</nobr>%1</p>", "FD tooltip");
     348                                                     "<nobr>Indicates the activity of the "
     349                                                     "floppy drives:</nobr>%1", "FD tooltip");
    325350        QString strFullData;
    326351
     
    339364                /* Append attachment data: */
    340365                UIMedium vboxMedium(attachment.GetMedium(), UIMediumType_Floppy);
    341                 strAttData += QString("<br>&nbsp;<nobr>%1:&nbsp;%2</nobr>")
     366                strAttData += s_strTableRow4
    342367                    .arg(gpConverter->toString(StorageSlot(controller.GetBus(), attachment.GetPort(), attachment.GetDevice())))
    343368                    .arg(vboxMedium.isNull() || vboxMedium.isHostDrive() ? vboxMedium.name() : vboxMedium.location());
     
    348373            /* Append controller data: */
    349374            if (!strAttData.isNull())
    350                 strFullData += QString("<br><nobr><b>%1</b></nobr>").arg(controller.GetName()) + strAttData;
     375                strFullData += s_strTableRow1.arg(controller.GetName()) + strAttData;
    351376        }
    352377
     
    356381
    357382        /* Update tool-tip: */
    358         setToolTip(strToolTip.arg(strFullData));
     383        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    359384        /* Update indicator state: */
    360385        setState(fAttachmentsMounted ? KDeviceActivity_Idle : KDeviceActivity_Null);
    361386    }
    362387};
     388
    363389
    364390/** UISessionStateStatusBarIndicator extension for Runtime UI: Network indicator. */
     
    431457        /* Prepare tool-tip: */
    432458        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    433                                                      "<p style='white-space:pre'><nobr>Indicates the activity of the "
    434                                                      "network interfaces:</nobr>%1</p>", "Network adapters tooltip");
     459                                                     "<nobr>Indicates the activity of the "
     460                                                     "network interfaces:</nobr>%1", "Network tooltip");
    435461        QString strFullData;
    436462
     
    475501                    fCablesDisconnected = false;
    476502                /* Append adapter data: */
    477                 strFullData += QApplication::translate("UIIndicatorsPool",
    478                     "<br><nobr><b>Adapter %1 (%2)</b>: %3 cable %4</nobr>", "Network adapters tooltip")
    479                     .arg(uSlot + 1)
    480                     .arg(gpConverter->toString(adapter.GetAttachmentType()))
    481                     .arg(strGuestIp.isEmpty() ? "" : "IP " + strGuestIp + ", ")
     503                strFullData += s_strTableRow1
     504                    .arg(QApplication::translate("UIIndicatorsPool", "Adapter %1 (%2)", "Network tooltip")
     505                            .arg(uSlot + 1).arg(gpConverter->toString(adapter.GetAttachmentType())));
     506                if (!strGuestIp.isEmpty())
     507                    strFullData += s_strTableRow4
     508                        .arg(QApplication::translate("UIIndicatorsPool", "IP", "Network tooltip"), strGuestIp);
     509                strFullData += s_strTableRow4
     510                    .arg(QApplication::translate("UIIndicatorsPool", "Cable", "Network tooltip"))
    482511                    .arg(fCableConnected ?
    483                          QApplication::translate("UIIndicatorsPool", "connected", "Network adapters tooltip") :
    484                          QApplication::translate("UIIndicatorsPool", "disconnected", "Network adapters tooltip"));
     512                         QApplication::translate("UIIndicatorsPool", "Connected", "cable (Network tooltip)") :
     513                         QApplication::translate("UIIndicatorsPool", "Disconnected", "cable (Network tooltip)"));
    485514            }
    486515        }
    487         /* Handle 'no-adapters' case: */
    488         if (strFullData.isNull())
    489             strFullData = QApplication::translate("UIIndicatorsPool",
    490                               "<br><nobr><b>All network adapters are disabled</b></nobr>", "Network adapters tooltip");
    491516
    492517        /* Hide indicator if there are no enabled adapters: */
     
    495520
    496521        /* Update tool-tip: */
    497         setToolTip(strToolTip.arg(strFullData));
     522        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    498523        /* Update indicator state: */
    499524        setState(fAdaptersPresent && !fCablesDisconnected ? KDeviceActivity_Idle : KDeviceActivity_Null);
     
    505530    ulong m_cMaxNetworkAdapters;
    506531};
     532
    507533
    508534/** UISessionStateStatusBarIndicator extension for Runtime UI: USB indicator. */
     
    536562        /* Prepare tool-tip: */
    537563        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    538                                                      "<p style='white-space:pre'><nobr>Indicates the activity of "
    539                                                      "the attached USB devices:</nobr>%1</p>", "USB device tooltip");
     564                                                     "<nobr>Indicates the activity of the attached "
     565                                                     "USB devices:</nobr>%1", "USB tooltip");
    540566        QString strFullData;
    541567
     
    549575            const CConsole console = m_pSession->console();
    550576            foreach (const CUSBDevice &usbDevice, console.GetUSBDevices())
    551                 strFullData += QString("<br><b><nobr>%1</nobr></b>").arg(vboxGlobal().details(usbDevice));
     577                strFullData += s_strTableRow1.arg(vboxGlobal().details(usbDevice));
    552578            /* Handle 'no-usb-devices' case: */
    553579            if (strFullData.isNull())
    554                 strFullData = QApplication::translate("UIIndicatorsPool", "<br><nobr><b>No USB devices attached</b></nobr>", "USB device tooltip");
     580                strFullData = s_strTableRow1
     581                    .arg(QApplication::translate("UIIndicatorsPool", "No USB devices attached", "USB tooltip"));
    555582        }
    556583
     
    560587
    561588        /* Update tool-tip: */
    562         setToolTip(strToolTip.arg(strFullData));
     589        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    563590        /* Update indicator state: */
    564591        setState(fUSBEnabled ? KDeviceActivity_Idle : KDeviceActivity_Null);
    565592    }
    566593};
     594
    567595
    568596/** UISessionStateStatusBarIndicator extension for Runtime UI: Shared-folders indicator. */
     
    598626        /* Prepare tool-tip: */
    599627        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    600                                                      "<p style='white-space:pre'><nobr>Indicates the activity of "
    601                                                      "the machine's shared folders:</nobr>%1</p>", "Shared folders tooltip");
     628                                                     "<nobr>Indicates the activity of the machine's "
     629                                                     "shared folders:</nobr>%1", "Shared folders tooltip");
    602630        QString strFullData;
    603631
     
    614642            /* Select slashes depending on the OS type: */
    615643            if (VBoxGlobal::isDOSType(guest.GetOSTypeId()))
    616                 strFullData += QString("<br><nobr><b>\\\\vboxsvr\\%1&nbsp;</b></nobr><nobr>%2</nobr>")
    617                                        .arg(it.key(), it.value());
     644                strFullData += s_strTableRow2.arg(QString("<b>\\\\vboxsvr\\%1</b>").arg(it.key()), it.value());
    618645            else
    619                 strFullData += QString("<br><nobr><b>%1&nbsp;</b></nobr><nobr>%2</nobr>")
    620                                        .arg(it.key(), it.value());
     646                strFullData += s_strTableRow2.arg(QString("<b>%1</b>").arg(it.key()), it.value());
    621647        }
    622648        /* Handle 'no-folders' case: */
    623649        if (sfs.isEmpty())
    624             strFullData = QApplication::translate("UIIndicatorsPool", "<br><nobr><b>No shared folders</b></nobr>", "Shared folders tooltip");
     650            strFullData = s_strTableRow1
     651                .arg(QApplication::translate("UIIndicatorsPool", "No shared folders", "Shared folders tooltip"));
    625652
    626653        /* Update tool-tip: */
    627         setToolTip(strToolTip.arg(strFullData));
     654        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    628655        /* Update indicator state: */
    629656        setState(!sfs.isEmpty() ? KDeviceActivity_Idle : KDeviceActivity_Null);
    630657    }
    631658};
     659
    632660
    633661/** UISessionStateStatusBarIndicator extension for Runtime UI: Display indicator. */
     
    660688        /* Prepare tool-tip: */
    661689        QString strToolTip = QApplication::translate("UIIndicatorsPool",
    662                                                      "<p style='white-space:pre'>"
    663                                                      "<nobr>Indicates the activity of the display:</nobr>%1</p>");
     690                                                     "<nobr>Indicates the activity of the "
     691                                                     "display:</nobr>%1", "Display tooltip");
    664692        QString strFullData;
    665693
     
    667695        const ULONG uVRAMSize = machine.GetVRAMSize();
    668696        const QString strVRAMSize = VBoxGlobal::tr("<nobr>%1 MB</nobr>", "details report").arg(uVRAMSize);
    669         strFullData += QString("<br><nobr><b>%1:</b>&nbsp;%2</nobr>")
    670                                .arg(VBoxGlobal::tr("Video Memory", "details report"), strVRAMSize);
     697        strFullData += s_strTableRow2
     698            .arg(QApplication::translate("UIIndicatorsPool", "Video memory", "Display tooltip"), strVRAMSize);
    671699
    672700        /* Monitor Count: */
     
    675703        {
    676704            const QString strMonitorCount = QString::number(uMonitorCount);
    677             strFullData += QString("<br><nobr><b>%1:</b>&nbsp;%2</nobr>")
    678                                    .arg(VBoxGlobal::tr("Screens", "details report"), strMonitorCount);
     705            strFullData += s_strTableRow2
     706                .arg(QApplication::translate("UIIndicatorsPool", "Screens", "Display tooltip"), strMonitorCount);
    679707        }
    680708
     
    683711        if (fAcceleration3D)
    684712        {
    685             const QString strAcceleration3D = fAcceleration3D
    686                 ? VBoxGlobal::tr("Enabled", "details report (3D Acceleration)")
    687                 : VBoxGlobal::tr("Disabled", "details report (3D Acceleration)");
    688             strFullData += QString("<br><nobr><b>%1:</b>&nbsp;%2</nobr>")
    689                                    .arg(VBoxGlobal::tr("3D Acceleration", "details report"), strAcceleration3D);
     713            const QString strAcceleration3D = fAcceleration3D ?
     714                VBoxGlobal::tr("Enabled", "details report (3D Acceleration)") :
     715                VBoxGlobal::tr("Disabled", "details report (3D Acceleration)");
     716            strFullData += s_strTableRow2
     717                .arg(QApplication::translate("UIIndicatorsPool", "3D acceleration", "Display tooltip"), strAcceleration3D);
    690718        }
    691719
    692720        /* Update tool-tip: */
    693         setToolTip(strToolTip.arg(strFullData));
     721        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    694722        /* Set initial indicator state: */
    695723        setState(fAcceleration3D ? KDeviceActivity_Idle : KDeviceActivity_Null);
    696724    }
    697725};
     726
    698727
    699728/** UISessionStateStatusBarIndicator extension for Runtime UI: Video-capture indicator. */
     
    783812        const CMachine machine = m_pSession->machine();
    784813
     814        /* Update indicator state early: */
     815        setState(machine.GetVideoCaptureEnabled());
     816
    785817        /* Prepare tool-tip: */
    786         QString strToolTip = QApplication::translate("UIIndicatorsPool", "<nobr>Indicates video capturing activity:</nobr><br>%1");
     818        QString strToolTip = QApplication::translate("UIIndicatorsPool",
     819                                                     "<nobr>Indicates video capturing "
     820                                                     "activity:</nobr>%1", "Video capture tooltip");
     821        QString strFullData;
    787822        switch (state())
    788823        {
    789824            case UIIndicatorStateVideoCapture_Disabled:
    790825            {
    791                 strToolTip = strToolTip.arg(QApplication::translate("UIIndicatorsPool", "<nobr><b>Video capture disabled</b></nobr>"));
     826                strFullData += s_strTableRow1
     827                    .arg(QApplication::translate("UIIndicatorsPool", "Video capture disabled", "Video capture tooltip"));
    792828                break;
    793829            }
    794830            case UIIndicatorStateVideoCapture_Enabled:
    795831            {
    796                 strToolTip = strToolTip.arg(QApplication::translate("UIIndicatorsPool", "<nobr><b>Video capture file:</b> %1</nobr>"));
    797                 strToolTip = strToolTip.arg(machine.GetVideoCaptureFile());
     832                strFullData += s_strTableRow2
     833                    .arg(QApplication::translate("UIIndicatorsPool", "Video capture file", "Video capture tooltip"))
     834                    .arg(machine.GetVideoCaptureFile());
    798835                break;
    799836            }
     
    803840
    804841        /* Update tool-tip: */
    805         setToolTip(strToolTip);
    806         /* Update indicator state: */
    807         setState(machine.GetVideoCaptureEnabled());
     842        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    808843    }
    809844
     
    823858};
    824859
     860
    825861/** UISessionStateStatusBarIndicator extension for Runtime UI: Features indicator. */
    826862class UIIndicatorFeatures : public UISessionStateStatusBarIndicator
     
    871907
    872908        /* Prepare tool-tip: */
    873         QString tip(QApplication::translate("UIIndicatorsPool",
    874                                             "Additional feature status:"
    875                                             "<br><nobr><b>%1:</b>&nbsp;%2</nobr>"
    876                                             "<br><nobr><b>%3:</b>&nbsp;%4</nobr>"
    877                                             "<br><nobr><b>%5:</b>&nbsp;%6</nobr>"
    878                                             "<br><nobr><b>%7:</b>&nbsp;%8%</nobr>",
    879                                             "Virtualization Stuff LED")
    880                     .arg(VBoxGlobal::tr("VT-x/AMD-V", "details report"), strVirtualization)
    881                     .arg(VBoxGlobal::tr("Nested Paging"), strNestedPaging)
    882                     .arg(VBoxGlobal::tr("Unrestricted Execution"), strUnrestrictExec)
    883                     .arg(VBoxGlobal::tr("Execution Cap", "details report"), strCPUExecCap));
    884 
    885         /// @todo We had to use that large NLS above for now.
    886         //       Later it should be reworked to be well-maintainable..
    887         /* Separately add information about paravirtualization interface feature: */
    888         tip += QApplication::translate("UIIndicatorsPool", "<br><nobr><b>%1:</b>&nbsp;%2</nobr>", "Virtualization Stuff LED")
    889                                       .arg(VBoxGlobal::tr("Paravirtualization Interface", "details report"), strParavirt);
    890 
    891         /* CPU count: */
    892         int cpuCount = machine.GetCPUCount();
     909        const QString strToolTip = QApplication::translate("UIIndicatorsPool",
     910                                                           "<nobr>Indicates the activity of the additional "
     911                                                           "features:</nobr>%1", "Virtualization Stuff LED");
     912        QString strFullData;
     913        strFullData += s_strTableRow2.arg(VBoxGlobal::tr("VT-x/AMD-V", "details report"),                   strVirtualization);
     914        strFullData += s_strTableRow2.arg(VBoxGlobal::tr("Nested Paging"),                                  strNestedPaging);
     915        strFullData += s_strTableRow2.arg(VBoxGlobal::tr("Unrestricted Execution"),                         strUnrestrictExec);
     916        strFullData += s_strTableRow2.arg(VBoxGlobal::tr("Execution Cap", "details report"),                strCPUExecCap);
     917        strFullData += s_strTableRow2.arg(VBoxGlobal::tr("Paravirtualization Interface", "details report"), strParavirt);
     918        const int cpuCount = machine.GetCPUCount();
    893919        if (cpuCount > 1)
    894             tip += QApplication::translate("UIIndicatorsPool", "<br><nobr><b>%1:</b>&nbsp;%2</nobr>", "Virtualization Stuff LED")
    895                       .arg(VBoxGlobal::tr("Processor(s)", "details report")).arg(cpuCount);
     920            strFullData += s_strTableRow2.arg(VBoxGlobal::tr("Processor(s)", "details report"), QString::number(cpuCount));
    896921
    897922        /* Update tool-tip: */
    898         setToolTip(tip);
     923        setToolTip(strToolTip.arg(s_strTable.arg(strFullData)));
    899924        /* Update indicator state: */
    900925        setState(m_pSession->isHWVirtExEnabled());
    901926    }
    902927};
     928
    903929
    904930/** UISessionStateStatusBarIndicator extension for Runtime UI: Mouse indicator. */
     
    948974    void updateAppearance()
    949975    {
    950         setToolTip(QApplication::translate("UIIndicatorsPool",
    951                    "Indicates whether the host mouse pointer is captured by the guest OS:<br>"
    952                    "<nobr><img src=:/mouse_disabled_16px.png/>&nbsp;&nbsp;pointer is not captured</nobr><br>"
    953                    "<nobr><img src=:/mouse_16px.png/>&nbsp;&nbsp;pointer is captured</nobr><br>"
    954                    "<nobr><img src=:/mouse_seamless_16px.png/>&nbsp;&nbsp;mouse integration (MI) is On</nobr><br>"
    955                    "<nobr><img src=:/mouse_can_seamless_16px.png/>&nbsp;&nbsp;MI is Off, pointer is captured</nobr><br>"
    956                    "<nobr><img src=:/mouse_can_seamless_uncaptured_16px.png/>&nbsp;&nbsp;MI is Off, pointer is not captured</nobr><br>"
    957                    "Note that the mouse integration feature requires Guest Additions to be installed in the guest OS."));
     976        const QString strToolTip = QApplication::translate("UIIndicatorsPool",
     977                                                           "Indicates whether the host mouse pointer is "
     978                                                           "captured by the guest OS:%1", "Mouse tooltip");
     979        QString strFullData;
     980        strFullData += s_strTableRow3
     981            .arg(QString("<img src=:/mouse_disabled_16px.png/>"))
     982            .arg(QApplication::translate("UIIndicatorsPool", "pointer is not captured", "Mouse tooltip"));
     983        strFullData += s_strTableRow3
     984            .arg(QString("<img src=:/mouse_16px.png/>"))
     985            .arg(QApplication::translate("UIIndicatorsPool", "pointer is captured", "Mouse tooltip"));
     986        strFullData += s_strTableRow3
     987            .arg(QString("<img src=:/mouse_seamless_16px.png/>"))
     988            .arg(QApplication::translate("UIIndicatorsPool", "mouse integration (MI) is On", "Mouse tooltip"));
     989        strFullData += s_strTableRow3
     990            .arg(QString("<img src=:/mouse_can_seamless_16px.png/>"))
     991            .arg(QApplication::translate("UIIndicatorsPool", "MI is Off, pointer is captured", "Mouse tooltip"));
     992        strFullData += s_strTableRow3
     993            .arg(QString("<img src=:/mouse_can_seamless_uncaptured_16px.png/>"))
     994            .arg(QApplication::translate("UIIndicatorsPool", "MI is Off, pointer is not captured", "Mouse tooltip"));
     995        strFullData = s_strTable.arg(strFullData);
     996        strFullData += QApplication::translate("UIIndicatorsPool",
     997                                               "Note that the mouse integration feature requires Guest "
     998                                               "Additions to be installed in the guest OS.", "Mouse tooltip");
     999
     1000        /* Update tool-tip: */
     1001        setToolTip(strToolTip.arg(strFullData));
    9581002    }
    9591003};
     
    9871031    void updateAppearance()
    9881032    {
    989         setToolTip(QApplication::translate("UIIndicatorsPool",
    990                    "Indicates whether the host keyboard is captured by the guest OS:<br>"
    991                    "<nobr><img src=:/hostkey_16px.png/>&nbsp;&nbsp;keyboard is not captured</nobr><br>"
    992                    "<nobr><img src=:/hostkey_captured_16px.png/>&nbsp;&nbsp;keyboard is captured</nobr>"));
     1033        const QString strToolTip = QApplication::translate("UIIndicatorsPool",
     1034                                                           "Indicates whether the host keyboard is "
     1035                                                           "captured by the guest OS:%1", "Keyboard tooltip");
     1036        QString strFullData;
     1037        strFullData += s_strTableRow3
     1038            .arg(QString("<img src=:/hostkey_16px.png/>"))
     1039            .arg(QApplication::translate("UIIndicatorsPool", "keyboard is not captured", "Keyboard tooltip"));
     1040        strFullData += s_strTableRow3
     1041            .arg(QString("<img src=:/hostkey_captured_16px.png/>"))
     1042            .arg(QApplication::translate("UIIndicatorsPool", "keyboard is captured", "Keyboard tooltip"));
     1043        strFullData = s_strTable.arg(strFullData);
     1044
     1045        /* Update tool-tip: */
     1046        setToolTip(strToolTip.arg(strFullData));
    9931047    }
    9941048};
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.h

    r62493 r66946  
    55
    66/*
    7  * Copyright (C) 2010-2016 Oracle Corporation
     7 * Copyright (C) 2010-2017 Oracle Corporation
    88 *
    99 * This file is part of VirtualBox Open Source Edition (OSE), as
     
    122122
    123123#endif /* !___UIIndicatorsPool_h___ */
     124
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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