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 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;