VirtualBox

Changeset 47190 in vbox for trunk/src/VBox/Main/include


Ignore:
Timestamp:
Jul 16, 2013 1:44:46 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
87296
Message:

Main/MouseImpl: restored Mouse test case, not yet building though.

Location:
trunk/src/VBox/Main/include
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/include/ConsoleImpl.h

    r47174 r47190  
    4949class ExtPackManager;
    5050#endif
     51class VMMDevMouseInterface;
     52class DisplayMouseInterface;
    5153
    5254#include <VBox/RemoteDesktop/VRDE.h>
     
    8991///////////////////////////////////////////////////////////////////////////////
    9092
     93class ConsoleMouseInterface
     94{
     95public:
     96    virtual VMMDevMouseInterface  *getVMMDevMouseInterface()  = 0;
     97    virtual DisplayMouseInterface *getDisplayMouseInterface() = 0;
     98    virtual void onMouseCapabilityChange(BOOL supportsAbsolute,
     99                                         BOOL supportsRelative,
     100                                         BOOL supportsMT,
     101                                         BOOL needsHostCursor) = 0;
     102};
     103
    91104/** IConsole implementation class */
    92105class ATL_NO_VTABLE Console :
    93106    public VirtualBoxBase,
    94     VBOX_SCRIPTABLE_IMPL(IConsole)
     107    VBOX_SCRIPTABLE_IMPL(IConsole), public ConsoleMouseInterface
    95108{
    96109    Q_OBJECT
     
    291304    HRESULT onNATRedirectRuleChange(ULONG ulInstance, BOOL aNatRuleRemove,
    292305                                 NATProtocol_T aProto, IN_BSTR aHostIp, LONG aHostPort, IN_BSTR aGuestIp, LONG aGuestPort);
     306
     307    // Mouse interface
     308    VMMDevMouseInterface *getVMMDevMouseInterface();
     309    DisplayMouseInterface *getDisplayMouseInterface();
    293310
    294311private:
  • trunk/src/VBox/Main/include/DisplayImpl.h

    r46523 r47190  
    104104} DISPLAYFBINFO;
    105105
     106class DisplayMouseInterface
     107{
     108public:
     109    virtual int getScreenResolution(uint32_t cScreen, uint32_t *pcx,
     110                                    uint32_t *pcy, uint32_t *pcBPP) = 0;
     111    virtual void getFramebufferDimensions(int32_t *px1, int32_t *py1,
     112                                          int32_t *px2, int32_t *py2) = 0;
     113};
     114
    106115class ATL_NO_VTABLE Display :
    107116    public VirtualBoxBase,
    108117    VBOX_SCRIPTABLE_IMPL(IEventListener),
    109     VBOX_SCRIPTABLE_IMPL(IDisplay)
     118    VBOX_SCRIPTABLE_IMPL(IDisplay),
     119    public DisplayMouseInterface
    110120{
    111121public:
     
    151161    }
    152162    void getFramebufferDimensions(int32_t *px1, int32_t *py1, int32_t *px2, int32_t *py2);
     163    int getScreenResolution(uint32_t cScreen, uint32_t *pcx, uint32_t *pcy,
     164                            uint32_t *pcBPP)
     165    {
     166        return GetScreenResolution(cScreen, pcx, pcy, pcBPP);
     167    }
    153168
    154169    int  handleSetVisibleRegion(uint32_t cRect, PRTRECT pRect);
  • trunk/src/VBox/Main/include/MouseImpl.h

    r47174 r47190  
    5252
    5353    // public initializer/uninitializer for internal purposes only
    54     HRESULT init(Console *parent);
     54    HRESULT init(ConsoleMouseInterface *parent);
    5555    void uninit();
    5656
     
    7070    static const PDMDRVREG  DrvReg;
    7171
    72     Console *getParent() const
     72    ConsoleMouseInterface *getParent() const
    7373    {
    7474        return mParent;
     
    112112    bool supportsMT(void);
    113113
    114     Console * const         mParent;
     114    ConsoleMouseInterface * const         mParent;
    115115    /** Pointer to the associated mouse driver. */
    116116    struct DRVMAINMOUSE    *mpDrv[MOUSE_MAX_DEVICES];
  • trunk/src/VBox/Main/include/VMMDev.h

    r44528 r47190  
    2424class Console;
    2525
    26 class VMMDev
     26class VMMDevMouseInterface
     27{
     28public:
     29    virtual PPDMIVMMDEVPORT getVMMDevPort() = 0;
     30};
     31
     32class VMMDev : public VMMDevMouseInterface
    2733{
    2834public:
     
    4955    PPDMIVMMDEVPORT getVMMDevPort();
    5056
     57#ifdef VBOX_WITH_HGCM
    5158    int hgcmLoadService (const char *pszServiceLibrary, const char *pszServiceName);
    5259    int hgcmHostCall (const char *pszServiceName, uint32_t u32Function, uint32_t cParms, PVBOXHGCMSVCPARM paParms);
     
    5966
    6067    bool hgcmIsActive (void) { return ASMAtomicReadBool(&m_fHGCMActive); }
     68#endif /* VBOX_WITH_HGCM */
    6169
    6270private:
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