diff options
Diffstat (limited to 'linden/indra/llwindow/llmousehandler.h')
-rw-r--r-- | linden/indra/llwindow/llmousehandler.h | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/linden/indra/llwindow/llmousehandler.h b/linden/indra/llwindow/llmousehandler.h index f3a2edd..7bd0f2e 100644 --- a/linden/indra/llwindow/llmousehandler.h +++ b/linden/indra/llwindow/llmousehandler.h | |||
@@ -33,9 +33,10 @@ | |||
33 | #ifndef LL_MOUSEHANDLER_H | 33 | #ifndef LL_MOUSEHANDLER_H |
34 | #define LL_MOUSEHANDLER_H | 34 | #define LL_MOUSEHANDLER_H |
35 | 35 | ||
36 | #include "llstring.h" | 36 | #include "linden_common.h" |
37 | #include "llrect.h" | ||
37 | 38 | ||
38 | // Abstract interface. | 39 | // Mostly-abstract interface. |
39 | // Intended for use via multiple inheritance. | 40 | // Intended for use via multiple inheritance. |
40 | // A class may have as many interfaces as it likes, but never needs to inherit one more than once. | 41 | // A class may have as many interfaces as it likes, but never needs to inherit one more than once. |
41 | 42 | ||
@@ -49,13 +50,23 @@ public: | |||
49 | SHOW_IF_NOT_BLOCKED, | 50 | SHOW_IF_NOT_BLOCKED, |
50 | SHOW_ALWAYS, | 51 | SHOW_ALWAYS, |
51 | } EShowToolTip; | 52 | } EShowToolTip; |
53 | typedef enum { | ||
54 | CLICK_LEFT, | ||
55 | CLICK_MIDDLE, | ||
56 | CLICK_RIGHT, | ||
57 | CLICK_DOUBLELEFT | ||
58 | } EClickType; | ||
59 | virtual BOOL handleAnyMouseClick(S32 x, S32 y, MASK mask, EClickType clicktype, BOOL down); | ||
52 | virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask) = 0; | 60 | virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask) = 0; |
53 | virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask) = 0; | 61 | virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask) = 0; |
54 | virtual BOOL handleHover(S32 x, S32 y, MASK mask) = 0; | 62 | virtual BOOL handleMiddleMouseDown(S32 x, S32 y, MASK mask) = 0; |
55 | virtual BOOL handleScrollWheel(S32 x, S32 y, S32 clicks) = 0; | 63 | virtual BOOL handleMiddleMouseUp(S32 x, S32 y, MASK mask) = 0; |
56 | virtual BOOL handleDoubleClick(S32 x, S32 y, MASK mask) = 0; | ||
57 | virtual BOOL handleRightMouseDown(S32 x, S32 y, MASK mask) = 0; | 64 | virtual BOOL handleRightMouseDown(S32 x, S32 y, MASK mask) = 0; |
58 | virtual BOOL handleRightMouseUp(S32 x, S32 y, MASK mask) = 0; | 65 | virtual BOOL handleRightMouseUp(S32 x, S32 y, MASK mask) = 0; |
66 | virtual BOOL handleDoubleClick(S32 x, S32 y, MASK mask) = 0; | ||
67 | |||
68 | virtual BOOL handleHover(S32 x, S32 y, MASK mask) = 0; | ||
69 | virtual BOOL handleScrollWheel(S32 x, S32 y, S32 clicks) = 0; | ||
59 | virtual BOOL handleToolTip(S32 x, S32 y, std::string& msg, LLRect* sticky_rect_screen) = 0; | 70 | virtual BOOL handleToolTip(S32 x, S32 y, std::string& msg, LLRect* sticky_rect_screen) = 0; |
60 | virtual EShowToolTip getShowToolTip() { return SHOW_IF_NOT_BLOCKED; }; | 71 | virtual EShowToolTip getShowToolTip() { return SHOW_IF_NOT_BLOCKED; }; |
61 | virtual const std::string& getName() const = 0; | 72 | virtual const std::string& getName() const = 0; |