| 
| class   | CInputManager | 
|   | Main input processing class.  More...
  | 
|   | 
| class   | KODI::MOUSE::CMouseInputHandling | 
|   | Class to translate input from driver info to higher-level features.  More...
  | 
|   | 
| class   | KODI::MOUSE::IMouseDriverHandler | 
|   | Interface for handling mouse driver events.  More...
  | 
|   | 
| class   | KODI::MOUSE::IMouseInputHandler | 
|   | Interface for handling mouse events.  More...
  | 
|   | 
| class   | KODI::MOUSE::IMouseInputProvider | 
|   | Interface for classes that can provide mouse input.  More...
  | 
|   | 
| class   | KODI::MOUSE::CMouseEvent | 
|   | Simple class for mouse events.  More...
  | 
|   | 
| class   | CMouseTranslator | 
|   | 
| enum class   | KODI::MOUSE::BUTTON_ID {  
  KODI::MOUSE::BUTTON_ID::UNKNOWN
, KODI::MOUSE::BUTTON_ID::LEFT
, KODI::MOUSE::BUTTON_ID::RIGHT
, KODI::MOUSE::BUTTON_ID::MIDDLE
,  
  KODI::MOUSE::BUTTON_ID::BUTTON4
, KODI::MOUSE::BUTTON_ID::BUTTON5
, KODI::MOUSE::BUTTON_ID::WHEEL_UP
, KODI::MOUSE::BUTTON_ID::WHEEL_DOWN
,  
  KODI::MOUSE::BUTTON_ID::HORIZ_WHEEL_LEFT
, KODI::MOUSE::BUTTON_ID::HORIZ_WHEEL_RIGHT
 
 } | 
|   | Buttons on a mouse.  More...
  | 
|   | 
| using  | KODI::MOUSE::ButtonName = std::string | 
|   | Name of a mouse button.  
  | 
|   | 
| using  | KODI::MOUSE::POINTER_DIRECTION = INPUT::CARDINAL_DIRECTION | 
|   | Directions of motion for a mouse pointer.  
  | 
|   | 
| using  | KODI::MOUSE::PointerName = std::string | 
|   | Name of the mouse pointer.  
  | 
|   | 
| enum   | MOUSE_STATE { MOUSE_STATE_NORMAL = 1
, MOUSE_STATE_FOCUS
, MOUSE_STATE_DRAG
, MOUSE_STATE_CLICK
 } | 
|   | 
| enum   | MOUSE_BUTTON {  
  MOUSE_LEFT_BUTTON = 0
, MOUSE_RIGHT_BUTTON
, MOUSE_MIDDLE_BUTTON
, MOUSE_EXTRA_BUTTON1
,  
  MOUSE_EXTRA_BUTTON2
, MOUSE_EXTRA_BUTTON3
, MOUSE_EXTRA_BUTTON4
 
 } | 
|   | 
| enum class   | HoldAction { NONE
, DRAG_START
, DRAG
, DRAG_END
 } | 
|   | 
| #define  | XBMC_BUTTON(X) | 
|   | 
| #define  | XBMC_BUTTON_LEFT   1 | 
|   | 
| #define  | XBMC_BUTTON_MIDDLE   2 | 
|   | 
| #define  | XBMC_BUTTON_RIGHT   3 | 
|   | 
| #define  | XBMC_BUTTON_WHEELUP   4 | 
|   | 
| #define  | XBMC_BUTTON_WHEELDOWN   5 | 
|   | 
| #define  | XBMC_BUTTON_X1   6 | 
|   | 
| #define  | XBMC_BUTTON_X2   7 | 
|   | 
| #define  | XBMC_BUTTON_X3   8 | 
|   | 
| #define  | XBMC_BUTTON_X4   9 | 
|   | 
| #define  | XBMC_BUTTON_LMASK   XBMC_BUTTON(XBMC_BUTTON_LEFT) | 
|   | 
| #define  | XBMC_BUTTON_MMASK   XBMC_BUTTON(XBMC_BUTTON_MIDDLE) | 
|   | 
| #define  | XBMC_BUTTON_RMASK   XBMC_BUTTON(XBMC_BUTTON_RIGHT) | 
|   | 
| #define  | XBMC_BUTTON_X1MASK   XBMC_BUTTON(XBMC_BUTTON_X1) | 
|   | 
| #define  | XBMC_BUTTON_X2MASK   XBMC_BUTTON(XBMC_BUTTON_X2) | 
|   | 
| #define  | XBMC_BUTTON_X3MASK   XBMC_BUTTON(XBMC_BUTTON_X3) | 
|   | 
| #define  | XBMC_BUTTON_X4MASK   XBMC_BUTTON(XBMC_BUTTON_X4) | 
|   | 
| #define  | MOUSE_MINIMUM_MOVEMENT   2 | 
|   | 
| #define  | MOUSE_DOUBLE_CLICK_LENGTH   500L | 
|   | 
| #define  | MOUSE_ACTIVE_LENGTH   5000L | 
|   | 
| #define  | MOUSE_MAX_BUTTON   7 | 
|   | 
Everything around mouse
Mouse input is processed by CInputManager and forwarded to registered mouse handlers (e.g. game clients) or as actions to the UI:
- If no mouse handlers are registered or if they don't consume events, the mouse input events are forwarded to the UI via CInputManager::ProcessMouse.
 
- Clients (e.g. game clients implementing MOUSE::IMouseInputHandler) call CInputManager::RegisterMouseHandler to register themselves as eligible for mouse input events.
 
- Mouse events (from CInputManager::OnEvent) are collected via implementations of MOUSE::IMouseDriverHandler and transformed into higher level features by MOUSE::IMouseButtonMap instances before they are sent to the handlers. 
 
◆ MOUSE_ACTIVE_LENGTH
      
        
          | #define MOUSE_ACTIVE_LENGTH   5000L | 
        
      
 
 
◆ MOUSE_DOUBLE_CLICK_LENGTH
      
        
          | #define MOUSE_DOUBLE_CLICK_LENGTH   500L | 
        
      
 
 
◆ MOUSE_MAX_BUTTON
      
        
          | #define MOUSE_MAX_BUTTON   7 | 
        
      
 
 
◆ MOUSE_MINIMUM_MOVEMENT
      
        
          | #define MOUSE_MINIMUM_MOVEMENT   2 | 
        
      
 
 
◆ XBMC_BUTTON
Value:
#define X(VAL)
Definition sqlitedataset.cpp:34
 
 
 
 
◆ XBMC_BUTTON_LEFT
      
        
          | #define XBMC_BUTTON_LEFT   1 | 
        
      
 
 
◆ XBMC_BUTTON_LMASK
◆ XBMC_BUTTON_MIDDLE
      
        
          | #define XBMC_BUTTON_MIDDLE   2 | 
        
      
 
 
◆ XBMC_BUTTON_MMASK
◆ XBMC_BUTTON_RIGHT
      
        
          | #define XBMC_BUTTON_RIGHT   3 | 
        
      
 
 
◆ XBMC_BUTTON_RMASK
◆ XBMC_BUTTON_WHEELDOWN
      
        
          | #define XBMC_BUTTON_WHEELDOWN   5 | 
        
      
 
 
◆ XBMC_BUTTON_WHEELUP
      
        
          | #define XBMC_BUTTON_WHEELUP   4 | 
        
      
 
 
◆ XBMC_BUTTON_X1
◆ XBMC_BUTTON_X1MASK
◆ XBMC_BUTTON_X2
◆ XBMC_BUTTON_X2MASK
◆ XBMC_BUTTON_X3
◆ XBMC_BUTTON_X3MASK
◆ XBMC_BUTTON_X4
◆ XBMC_BUTTON_X4MASK
◆ ButtonName
Name of a mouse button. 
Names are defined in the mouse's controller profile. 
 
 
◆ POINTER_DIRECTION
Directions of motion for a mouse pointer. 
 
 
◆ PointerName
Name of the mouse pointer. 
Names are defined in the mouse's controller profile. 
 
 
◆ BUTTON_ID
Buttons on a mouse. 
| Enumerator | 
|---|
| UNKNOWN  |  | 
| LEFT  |  | 
| RIGHT  |  | 
| MIDDLE  |  | 
| BUTTON4  |  | 
| BUTTON5  |  | 
| WHEEL_UP  |  | 
| WHEEL_DOWN  |  | 
| HORIZ_WHEEL_LEFT  |  | 
| HORIZ_WHEEL_RIGHT  |  | 
 
 
◆ HoldAction
| Enumerator | 
|---|
| NONE  | No action should occur  
 | 
| DRAG_START  | A drag action has started  
 | 
| DRAG  | A drag action is in progress  
 | 
| DRAG_END  | A drag action has finished  
 | 
 
 
◆ MOUSE_BUTTON
| Enumerator | 
|---|
| MOUSE_LEFT_BUTTON  |  | 
| MOUSE_RIGHT_BUTTON  |  | 
| MOUSE_MIDDLE_BUTTON  |  | 
| MOUSE_EXTRA_BUTTON1  |  | 
| MOUSE_EXTRA_BUTTON2  |  | 
| MOUSE_EXTRA_BUTTON3  |  | 
| MOUSE_EXTRA_BUTTON4  |  | 
 
 
◆ MOUSE_STATE
| Enumerator | 
|---|
| MOUSE_STATE_NORMAL  | Normal state  
 | 
| MOUSE_STATE_FOCUS  | Control below the mouse is currently in focus  
 | 
| MOUSE_STATE_DRAG  | A drag operation is being performed  
 | 
| MOUSE_STATE_CLICK  | A mousebutton is being clicked  
 |