kodi
Classes
Mouse
Collaboration diagram for Mouse:

Classes

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  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  HoldAction { HoldAction::NONE, HoldAction::DRAG_START, HoldAction::DRAG, HoldAction::DRAG_END }
 
#define XBMC_BUTTON(X)   (1 << ((X)-1))
 
#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
 
enum  KODI::MOUSE::BUTTON_ID {
  UNKNOWN, LEFT, RIGHT, MIDDLE,
  BUTTON4, BUTTON5, WHEEL_UP, WHEEL_DOWN,
  HORIZ_WHEEL_LEFT, HORIZ_WHEEL_RIGHT
}
 Buttons on a mouse.
 
using KODI::MOUSE::ButtonName = std::string
 Name of a mouse button. More...
 
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. More...
 

Detailed Description

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:

Typedef Documentation

◆ ButtonName

using KODI::MOUSE::ButtonName = typedef std::string

Name of a mouse button.

Names are defined in the mouse's controller profile.

◆ PointerName

using KODI::MOUSE::PointerName = typedef std::string

Name of the mouse pointer.

Names are defined in the mouse's controller profile.