VirtualBox

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


Ignore:
Timestamp:
Jan 27, 2025 3:59:36 PM (3 months ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
167190
Message:

FE/Qt: bugref:10814: VBox Manager / Tools pane: Merging mouse handler code to model as it's too small.

Location:
trunk/src/VBox/Frontends/VirtualBox
Files:
2 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/Makefile.kmk

    r107914 r107943  
    636636        src/manager/tools/UIToolsModel.h \
    637637        src/manager/tools/UIToolsView.h \
    638         src/manager/tools/UIToolsHandlerMouse.h \
    639638        src/manager/tools/UIToolsItem.h \
    640639        src/medium/UIMediumDetailsWidget.h \
     
    11691168        src/manager/tools/UIToolsModel.cpp \
    11701169        src/manager/tools/UIToolsView.cpp \
    1171         src/manager/tools/UIToolsHandlerMouse.cpp \
    11721170        src/manager/tools/UIToolsItem.cpp \
    11731171        src/medium/UIMediumDetailsWidget.cpp \
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.cpp

    r107914 r107943  
    4040#include "UILoggingDefs.h"
    4141#include "UITools.h"
    42 #include "UIToolsHandlerMouse.h"
    4342#include "UIToolsModel.h"
    4443#include "UITranslationEventListener.h"
     
    6665    , m_pTools(pParent)
    6766    , m_pScene(0)
    68     , m_pMouseHandler(0)
    6967    , m_fItemsEnabled(true)
    7068{
     
    400398        /* Mouse handler: */
    401399        case QEvent::GraphicsSceneMousePress:
    402             return m_pMouseHandler->handle(static_cast<QGraphicsSceneMouseEvent*>(pEvent), UIMouseEventType_Press);
    403         case QEvent::GraphicsSceneMouseRelease:
    404             return m_pMouseHandler->handle(static_cast<QGraphicsSceneMouseEvent*>(pEvent), UIMouseEventType_Release);
    405         /* Shut up MSC: */
    406         default: break;
     400        {
     401            /* Acquire event: */
     402            QGraphicsSceneMouseEvent *pMouseEvent = static_cast<QGraphicsSceneMouseEvent*>(pEvent);
     403            /* Get item under mouse cursor: */
     404            QPointF scenePos = pMouseEvent->scenePos();
     405            if (QGraphicsItem *pItemUnderMouse = itemAt(scenePos))
     406            {
     407                /* Which button it was? */
     408                switch (pMouseEvent->button())
     409                {
     410                    /* Both buttons: */
     411                    case Qt::LeftButton:
     412                    case Qt::RightButton:
     413                    {
     414                        /* Which item we just clicked? */
     415                        UIToolsItem *pClickedItem = qgraphicsitem_cast<UIToolsItem*>(pItemUnderMouse);
     416                        /* Make clicked item the current one: */
     417                        if (pClickedItem && pClickedItem->isEnabled())
     418                        {
     419                            setCurrentItem(pClickedItem);
     420                            close();
     421                            return true;
     422                        }
     423                        break;
     424                    }
     425                    default:
     426                        break;
     427                }
     428            }
     429            break;
     430        }
     431        default:
     432            break;
    407433    }
    408434
     
    447473    /* Prepare items: */
    448474    prepareItems();
    449     /* Prepare handlers: */
    450     prepareHandlers();
    451475    /* Apply language settings: */
    452476    sltRetranslateUI();
     
    540564            break;
    541565    }
    542 }
    543 
    544 void UIToolsModel::prepareHandlers()
    545 {
    546     m_pMouseHandler = new UIToolsHandlerMouse(this);
    547566}
    548567
     
    596615}
    597616
    598 void UIToolsModel::cleanupHandlers()
    599 {
    600     delete m_pMouseHandler;
    601     m_pMouseHandler = 0;
    602 }
    603 
    604617void UIToolsModel::cleanupItems()
    605618{
     
    617630void UIToolsModel::cleanup()
    618631{
    619     /* Cleanup handlers: */
    620     cleanupHandlers();
    621632    /* Cleanup items: */
    622633    cleanupItems();
  • trunk/src/VBox/Frontends/VirtualBox/src/manager/tools/UIToolsModel.h

    r107914 r107943  
    5353class UIActionPool;
    5454class UITools;
    55 class UIToolsHandlerMouse;
    5655
    5756/** QObject extension used as VM Tools-pane model: */
     
    228227        /** Prepares items. */
    229228        void prepareItems();
    230         /** Prepares handlers. */
    231         void prepareHandlers();
    232229        /** Loads settings. */
    233230        void loadSettings();
     
    236233        static void loadLastToolTypes(UIToolType &enmTypeGlobal, UIToolType &enmTypeMachine);
    237234
    238         /** Cleanups handlers. */
    239         void cleanupHandlers();
    240235        /** Cleanups items. */
    241236        void cleanupItems();
     
    263258        QGraphicsScene *m_pScene;
    264259
    265         /** Holds the mouse handler instance. */
    266         UIToolsHandlerMouse *m_pMouseHandler;
    267 
    268260        /** Holds whether items enabled. */
    269261        bool  m_fItemsEnabled;
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