VirtualBox

Changeset 104463 in vbox


Ignore:
Timestamp:
Apr 30, 2024 12:37:49 PM (9 months ago)
Author:
vboxsync
Message:

FE/Qt. bugref:9510. React on guest additions' state change in runtime UI. need to implement the same for manager UI.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/vmactivity/UIVMActivityMonitor.cpp

    r104461 r104463  
    14351435}
    14361436
    1437 void UIVMActivityMonitorLocal::sltGuestAdditionsStateChange()
     1437void UIVMActivityMonitorLocal::guestAdditionsStateChange()
    14381438{
    14391439    bool fGuestAdditionsAvailable = guestAdditionsAvailable("6.1");
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/vmactivity/UIVMActivityMonitor.h

    r104461 r104463  
    257257    virtual QUuid machineId() const RT_OVERRIDE;
    258258    virtual QString machineName() const RT_OVERRIDE;
    259 
    260 public slots:
    261 
    262     /** @name These functions are connected to API events and implement necessary updates.
    263      * @{ */
    264         void sltGuestAdditionsStateChange();
    265     /** @} */
     259    void guestAdditionsStateChange();
    266260
    267261protected slots:
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/vmactivity/UIVMActivityMonitorContainer.cpp

    r104461 r104463  
    348348    m_pPaneContainer->setVisible(fChecked);
    349349}
     350
     351void UIVMActivityMonitorContainer::guestAdditionsStateChange(const QUuid &machineId)
     352{
     353    for (int i = m_pTabWidget->count() - 1; i >= 0; --i)
     354    {
     355        UIVMActivityMonitorLocal *pMonitor = qobject_cast<UIVMActivityMonitorLocal*>(m_pTabWidget->widget(i));
     356        if (!pMonitor)
     357            continue;
     358        if (pMonitor->machineId() == machineId)
     359            pMonitor->guestAdditionsStateChange();
     360    }
     361}
  • trunk/src/VBox/Frontends/VirtualBox/src/activity/vmactivity/UIVMActivityMonitorContainer.h

    r104458 r104463  
    101101    void addLocalMachine(const CMachine &comMachine);
    102102    void addCloudMachine(const CCloudMachine &comMachine);
     103    void guestAdditionsStateChange(const QUuid &machineId);
    103104
    104105private slots:
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIVMInformationDialog.cpp

    r104461 r104463  
    150150}
    151151
     152void UIVMInformationDialog::sltAdditionsStateChange()
     153{
     154    if (!m_pTabWidget)
     155        return;
     156    UIVMActivityMonitorContainer *pVMActivityMonitorContainer =
     157        qobject_cast<UIVMActivityMonitorContainer*>(m_pTabWidget->widget(Tabs_ActivityMonitor));
     158    if (!pVMActivityMonitorContainer)
     159        return;
     160    pVMActivityMonitorContainer->guestAdditionsStateChange(uiCommon().managedVMUuid());
     161}
     162
    152163void UIVMInformationDialog::saveDialogGeometry()
    153164{
     
    160171void UIVMInformationDialog::prepare()
    161172{
     173    connect(gpMachine, &UIMachine::sigAdditionsStateChange,
     174            this, &UIVMInformationDialog::sltAdditionsStateChange);
    162175#ifndef VBOX_WS_MAC
    163176    /* Assign window icon: */
     
    228241        /* Create Activity Monitor tab: */
    229242        UIVMActivityMonitorContainer *pVMActivityMonitorContainer = new UIVMActivityMonitorContainer(this, m_pActionPool, EmbedTo_Dialog);
    230 
    231         // UIVMActivityMonitorLocal *pVMActivityMonitorWidget =
    232         //     new UIVMActivityMonitorLocal(EmbedTo_Dialog, this, gpMachine->uisession()->machine());
    233243        if (pVMActivityMonitorContainer)
    234244        {
  • trunk/src/VBox/Frontends/VirtualBox/src/runtime/information/UIVMInformationDialog.h

    r104461 r104463  
    8080    void sltHandlePageChanged(int iIndex);
    8181    void sltMachineStateChange(const QUuid &uMachineId, const KMachineState state);
     82    void sltAdditionsStateChange();
    8283
    8384private:
     85
    8486    enum Tabs
    8587    {
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