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