VirtualBox

Ignore:
Timestamp:
May 3, 2024 6:15:42 PM (12 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
163039
Message:

FE/Qt: bugref:10681: Accessibility fixes for Export Appliance wizard; Switching from QListWidget to own QIListWidget, using proper what's this for the list.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp

    r103957 r104515  
    3434#include <QLabel>
    3535#include <QLineEdit>
    36 #include <QListWidget>
    3736#include <QPushButton>
    3837#include <QRadioButton>
     
    4342/* GUI includes: */
    4443#include "QIComboBox.h"
     44#include "QIListWidget.h"
    4545#include "QIToolButton.h"
    4646#include "UICommon.h"
     
    108108        {
    109109            /* Create VM selector: */
    110             m_pVMSelector = new QListWidget(m_pToolBox);
     110            m_pVMSelector = new QIListWidget(m_pToolBox);
    111111            if (m_pVMSelector)
    112112            {
     
    407407    connect(gVBoxEvents, &UIVirtualBoxEventHandler::sigCloudProfileChanged,
    408408            this, &UIWizardExportAppPageExpert::sltHandleFormatComboChange);
    409     connect(m_pVMSelector, &QListWidget::itemSelectionChanged,
     409    connect(m_pVMSelector, &QIListWidget::itemSelectionChanged,
    410410            this, &UIWizardExportAppPageExpert::sltHandleVMItemSelectionChanged);
    411411    connect(m_pFileSelector, &UIEmptyFilePathSelector::pathChanged,
     
    443443    m_pToolBox->setPageTitle(1, UIWizardExportApp::tr("Format &settings"));
    444444    m_pToolBox->setPageTitle(2, UIWizardExportApp::tr("&Appliance settings"));
     445
     446    /* Translate Machine list: */
     447    m_pVMSelector->setWhatsThis(UIWizardExportApp::tr("Contains a list of Virtual Machines"));
    445448
    446449    /* Translate File selector: */
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.h

    r103982 r104515  
    5050class QGroupBox;
    5151class QLabel;
    52 class QListWidget;
     52class QIListWidget;
    5353class QStackedWidget;
    5454class QIComboBox;
     
    146146
    147147    /** Holds the VM selector instance. */
    148     QListWidget *m_pVMSelector;
     148    QIListWidget *m_pVMSelector;
    149149
    150150
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageVMs.cpp

    r104358 r104515  
    2828/* Qt includes: */
    2929#include <QApplication>
    30 #include <QListWidget>
    3130#include <QVBoxLayout>
    3231
    3332/* GUI includes: */
     33#include "QIListWidget.h"
    3434#include "QIRichTextLabel.h"
    3535#include "UICommon.h"
     
    4747
    4848
    49 /** QListWidgetItem subclass for Export Appliance wizard VM list. */
    50 class UIVMListWidgetItem : public QListWidgetItem
     49/** QIListWidgetItem subclass for Export Appliance wizard VM list. */
     50class UIVMListWidgetItem : public QIListWidgetItem
    5151{
    5252public:
     
    5555      * @param  strUuid       Brings the machine ID.
    5656      * @param  fInSaveState  Brings whether machine is in Saved state. */
    57     UIVMListWidgetItem(QPixmap &pixIcon, QString &strText, QUuid uUuid, bool fInSaveState, QListWidget *pParent)
    58         : QListWidgetItem(pixIcon, strText, pParent)
     57    UIVMListWidgetItem(QPixmap &pixIcon, QString &strText, QUuid uUuid, bool fInSaveState, QIListWidget *pParent)
     58        : QIListWidgetItem(pixIcon, strText, pParent)
    5959        , m_uUuid(uUuid)
    6060        , m_fInSaveState(fInSaveState)
     
    6262
    6363    /** Returns whether this item is less than @a other. */
    64     bool operator<(const QListWidgetItem &other) const RT_OVERRIDE RT_FINAL
     64    bool operator<(const QIListWidgetItem &other) const
    6565    {
    6666        return text().toLower() < other.text().toLower();
     
    8585*********************************************************************************************************************************/
    8686
    87 void UIWizardExportAppVMs::populateVMItems(QListWidget *pVMSelector, const QStringList &selectedVMNames)
     87void UIWizardExportAppVMs::populateVMItems(QIListWidget *pVMSelector, const QStringList &selectedVMNames)
    8888{
    8989    /* Add all VM items into VM selector: */
     
    112112            pixIcon = QPixmap(":/os_other.png").scaled(iIconMetric, iIconMetric, Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
    113113        }
    114         QListWidgetItem *pItem = new UIVMListWidgetItem(pixIcon, strName, uUuid, fInSaveState, pVMSelector);
     114        QIListWidgetItem *pItem = new UIVMListWidgetItem(pixIcon, strName, uUuid, fInSaveState, pVMSelector);
    115115        if (!fEnabled)
    116116            pItem->setFlags(Qt::ItemFlags());
     
    122122    foreach (const QString &strSelectedVMName, selectedVMNames)
    123123    {
    124         const QList<QListWidgetItem*> list = pVMSelector->findItems(strSelectedVMName, Qt::MatchExactly);
     124        const QList<QIListWidgetItem*> list = pVMSelector->findItems(strSelectedVMName, Qt::MatchExactly);
    125125        if (list.size() > 0)
    126126        {
     
    133133}
    134134
    135 void UIWizardExportAppVMs::refreshSavedMachines(QStringList &savedMachines, QListWidget *pVMSelector)
     135void UIWizardExportAppVMs::refreshSavedMachines(QStringList &savedMachines, QIListWidget *pVMSelector)
    136136{
    137137    savedMachines.clear();
    138     foreach (QListWidgetItem *pItem, pVMSelector->selectedItems())
     138    foreach (QIListWidgetItem *pItem, pVMSelector->selectedItems())
    139139        if (static_cast<UIVMListWidgetItem*>(pItem)->isInSaveState())
    140140            savedMachines << pItem->text();
    141141}
    142142
    143 QStringList UIWizardExportAppVMs::machineNames(QListWidget *pVMSelector)
     143QStringList UIWizardExportAppVMs::machineNames(QIListWidget *pVMSelector)
    144144{
    145145    /* Prepare list: */
    146146    QStringList names;
    147147    /* Iterate over all the selected items: */
    148     foreach (QListWidgetItem *pItem, pVMSelector->selectedItems())
     148    foreach (QIListWidgetItem *pItem, pVMSelector->selectedItems())
    149149        names << pItem->text();
    150150    /* Return result list: */
     
    152152}
    153153
    154 QList<QUuid> UIWizardExportAppVMs::machineIDs(QListWidget *pVMSelector)
     154QList<QUuid> UIWizardExportAppVMs::machineIDs(QIListWidget *pVMSelector)
    155155{
    156156    /* Prepare list: */
    157157    QList<QUuid> ids;
    158158    /* Iterate over all the selected items: */
    159     foreach (QListWidgetItem *pItem, pVMSelector->selectedItems())
     159    foreach (QIListWidgetItem *pItem, pVMSelector->selectedItems())
    160160        ids.append(static_cast<UIVMListWidgetItem*>(pItem)->uuid());
    161161    /* Return result list: */
     
    184184
    185185        /* Prepare VM selector: */
    186         m_pVMSelector = new QListWidget(this);
     186        m_pVMSelector = new QIListWidget(this);
    187187        if (m_pVMSelector)
    188188        {
     
    194194
    195195    /* Setup connections: */
    196     connect(m_pVMSelector, &QListWidget::itemSelectionChanged,
     196    connect(m_pVMSelector, &QIListWidget::itemSelectionChanged,
    197197            this, &UIWizardExportAppPageVMs::sltHandleVMItemSelectionChanged);
    198198}
     
    212212                                                "You can select more than one. Please note that these machines have to be "
    213213                                                "turned off before they can be exported.</p>"));
     214
     215    /* Translate Machine list: */
     216    m_pVMSelector->setWhatsThis(UIWizardExportApp::tr("Contains a list of Virtual Machines"));
    214217}
    215218
  • trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageVMs.h

    r103982 r104515  
    3939
    4040/* Forward declarations: */
    41 class QListWidget;
     41class QIListWidget;
    4242class QIRichTextLabel;
    4343class UIWizardExportApp;
     
    4747{
    4848    /** Populates @a pVMSelector with items on the basis of passed @a selectedVMNames. */
    49     void populateVMItems(QListWidget *pVMSelector, const QStringList &selectedVMNames);
     49    void populateVMItems(QIListWidget *pVMSelector, const QStringList &selectedVMNames);
    5050
    5151    /** Refresh a list of saved machines selected in @a pVMSelector. */
    52     void refreshSavedMachines(QStringList &savedMachines, QListWidget *pVMSelector);
     52    void refreshSavedMachines(QStringList &savedMachines, QIListWidget *pVMSelector);
    5353
    5454    /** Returns a list of machine names selected in @a pVMSelector. */
    55     QStringList machineNames(QListWidget *pVMSelector);
     55    QStringList machineNames(QIListWidget *pVMSelector);
    5656    /** Returns a list of machine IDs selected in @a pVMSelector. */
    57     QList<QUuid> machineIDs(QListWidget *pVMSelector);
     57    QList<QUuid> machineIDs(QIListWidget *pVMSelector);
    5858}
    5959
     
    103103
    104104    /** Holds the VM selector instance. */
    105     QListWidget *m_pVMSelector;
     105    QIListWidget *m_pVMSelector;
    106106};
    107107
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