VirtualBox

Changeset 105263 in vbox for trunk/src/VBox/Frontends


Ignore:
Timestamp:
Jul 10, 2024 4:34:58 PM (7 months ago)
Author:
vboxsync
Message:

FE/Qt: bugref:10672: Runtime UI: Improve accessibility for Shared Folders indicator; Had to adjust details generation stuff for that as well.

Location:
trunk/src/VBox/Frontends/VirtualBox/src
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/globals/UIDetailsGenerator.cpp

    r105262 r105263  
    14051405
    14061406void UIDetailsGenerator::acquireSharedFoldersStatusInfo(CMachine &comMachine, CConsole &comConsole, CGuest &comGuest,
    1407                                                         QString &strInfo, bool &fFoldersPresent)
     1407                                                        QString &strInfo, uint &cFoldersCount)
    14081408{
    14091409    /* Enumerate all the folders: */
     
    14131413    foreach (const CSharedFolder &comTemporaryFolder, comConsole.GetSharedFolders())
    14141414        folders.insert(comTemporaryFolder.GetName(), comTemporaryFolder.GetHostPath());
    1415     fFoldersPresent = !folders.isEmpty();
     1415    cFoldersCount = folders.size();
    14161416
    14171417    /* Append attachment data: */
     
    14261426
    14271427    /* Handle 'no-folders' case: */
    1428     if (!fFoldersPresent)
     1428    if (!cFoldersCount)
    14291429        strInfo = e_strTableRow1
    14301430            .arg(QApplication::translate("UIIndicatorSharedFolders", "No shared folders"));
  • trunk/src/VBox/Frontends/VirtualBox/src/globals/UIDetailsGenerator.h

    r105233 r105263  
    108108
    109109    SHARED_LIBRARY_STUFF void acquireSharedFoldersStatusInfo(CMachine &comMachine, CConsole &comConsole, CGuest &comGuest,
    110                                                              QString &strInfo, bool &fFoldersPresent);
     110                                                             QString &strInfo, uint &cFoldersCount);
    111111
    112112    SHARED_LIBRARY_STUFF void acquireDisplayStatusInfo(CMachine &comMachine, QString &strInfo,
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIIndicatorsPool.cpp

    r105249 r105263  
    622622        const QString strUsbStatus = m_fUsbEnabled ? tr("USB enabled") : tr("USB disabled");
    623623        const QString strFilterCount = m_cUsbFilterCount ? tr("%1 USB devices attached").arg(m_cUsbFilterCount)
    624                                                          : tr("No USB devices attached", "USB tooltip");
     624                                                         : tr("No USB devices attached");
    625625        m_strDescription = QString("%1, %2, %3").arg(m_strDescription, strUsbStatus, strFilterCount);
    626626    }
     
    632632    /** Holds USB device filter count. */
    633633    uint  m_cUsbFilterCount;
    634 
    635634};
    636635
     
    646645    UIIndicatorSharedFolders(UIMachine *pMachine)
    647646        : UISessionStateStatusBarIndicator(IndicatorType_SharedFolders, pMachine)
     647        , m_cFoldersCount(0)
    648648    {
    649649        /* Assign state-icons: */
     
    667667    {
    668668        QString strFullData;
    669         bool fFoldersPresent = false;
    670         m_pMachine->acquireSharedFoldersStatusInfo(strFullData, fFoldersPresent);
     669        m_cFoldersCount = 0;
     670        m_pMachine->acquireSharedFoldersStatusInfo(strFullData, m_cFoldersCount);
    671671
    672672        /* Update tool-tip: */
     
    674674            setToolTip(s_strTable.arg(strFullData));
    675675        /* Update indicator state: */
    676         setState(fFoldersPresent ? KDeviceActivity_Idle : KDeviceActivity_Null);
     676        setState(m_cFoldersCount ? KDeviceActivity_Idle : KDeviceActivity_Null);
    677677
    678678        /* Retranslate finally: */
    679679        sltRetranslateUI();
    680680    }
     681
     682    /** Handles translation event. */
     683    virtual void sltRetranslateUI() RT_OVERRIDE
     684    {
     685        /* Call to base-class: */
     686        UISessionStateStatusBarIndicator::sltRetranslateUI();
     687
     688        /* Append description with more info: */
     689        const QString strFoldersCount = m_cFoldersCount ? tr("%1 shared folders").arg(m_cFoldersCount)
     690                                                         : tr("No shared folders");
     691        m_strDescription = QString("%1, %2").arg(m_strDescription, strFoldersCount);
     692    }
     693
     694private:
     695
     696    /** Holds the amount of folders. */
     697    uint  m_cFoldersCount;
    681698};
    682699
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.cpp

    r105233 r105263  
    932932}
    933933
    934 void UIMachine::acquireSharedFoldersStatusInfo(QString &strInfo, bool &fFoldersPresent)
    935 {
    936     uisession()->acquireSharedFoldersStatusInfo(strInfo, fFoldersPresent);
     934void UIMachine::acquireSharedFoldersStatusInfo(QString &strInfo, uint &cFoldersCount)
     935{
     936    uisession()->acquireSharedFoldersStatusInfo(strInfo, cFoldersCount);
    937937}
    938938
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UIMachine.h

    r105233 r105263  
    637637        void acquireUsbStatusInfo(QString &strInfo, bool &fUsbEnabled, uint &cUsbFilterCount);
    638638        /** Acquires status info for Shared Folders indicator. */
    639         void acquireSharedFoldersStatusInfo(QString &strInfo, bool &fFoldersPresent);
     639        void acquireSharedFoldersStatusInfo(QString &strInfo, uint &cFoldersCount);
    640640        /** Acquires status info for Display indicator. */
    641641        void acquireDisplayStatusInfo(QString &strInfo, bool &fAcceleration3D);
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.cpp

    r105233 r105263  
    20292029}
    20302030
    2031 void UISession::acquireSharedFoldersStatusInfo(QString &strInfo, bool &fFoldersPresent)
     2031void UISession::acquireSharedFoldersStatusInfo(QString &strInfo, uint &cFoldersCount)
    20322032{
    20332033    CMachine comMachine = machine();
     
    20402040    if (comGuest.isNull())
    20412041        return;
    2042     UIDetailsGenerator::acquireSharedFoldersStatusInfo(comMachine, comConsole, comGuest, strInfo, fFoldersPresent);
     2042    UIDetailsGenerator::acquireSharedFoldersStatusInfo(comMachine, comConsole, comGuest, strInfo, cFoldersCount);
    20432043}
    20442044
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/UISession.h

    r105233 r105263  
    519519        void acquireUsbStatusInfo(QString &strInfo, bool &fUsbEnabled, uint &cUsbFilterCount);
    520520        /** Acquires status info for Shared Folders indicator. */
    521         void acquireSharedFoldersStatusInfo(QString &strInfo, bool &fFoldersPresent);
     521        void acquireSharedFoldersStatusInfo(QString &strInfo, uint &cFoldersCount);
    522522        /** Acquires status info for Display indicator. */
    523523        void acquireDisplayStatusInfo(QString &strInfo, bool &fAcceleration3D);
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