summaryrefslogtreecommitdiff
path: root/indra/newview/lltoolpie.h
diff options
context:
space:
mode:
authorJames Cook <james@lindenlab.com>2007-01-02 08:33:20 +0000
committerJames Cook <james@lindenlab.com>2007-01-02 08:33:20 +0000
commit420b91db29485df39fd6e724e782c449158811cb (patch)
treeb471a94563af914d3ed3edd3e856d21cb1b69945 /indra/newview/lltoolpie.h
Print done when done.
Diffstat (limited to 'indra/newview/lltoolpie.h')
-rw-r--r--indra/newview/lltoolpie.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/indra/newview/lltoolpie.h b/indra/newview/lltoolpie.h
new file mode 100644
index 0000000000..d440a443e2
--- /dev/null
+++ b/indra/newview/lltoolpie.h
@@ -0,0 +1,59 @@
+/**
+ * @file lltoolpie.h
+ * @brief LLToolPie class header file
+ *
+ * Copyright (c) 2001-$CurrentYear$, Linden Research, Inc.
+ * $License$
+ */
+
+#ifndef LL_TOOLPIE_H
+#define LL_TOOLPIE_H
+
+#include "lltool.h"
+#include "lluuid.h"
+
+class LLViewerObject;
+
+class LLToolPie
+: public LLTool
+{
+public:
+ LLToolPie( );
+
+ virtual BOOL handleMouseDown(S32 x, S32 y, MASK mask);
+ virtual BOOL handleRightMouseDown(S32 x, S32 y, MASK mask);
+ virtual BOOL handleMouseUp(S32 x, S32 y, MASK mask);
+ virtual BOOL handleRightMouseUp(S32 x, S32 y, MASK mask);
+ virtual BOOL handleHover(S32 x, S32 y, MASK mask);
+ virtual BOOL handleDoubleClick(S32 x, S32 y, MASK mask);
+
+ virtual void render();
+
+ virtual void stopEditing();
+
+ virtual void onMouseCaptureLost();
+ virtual void handleDeselect();
+
+ static void leftMouseCallback(S32 x, S32 y, MASK mask);
+ static void rightMouseCallback(S32 x, S32 y, MASK mask);
+
+ static void selectionPropertiesReceived();
+
+protected:
+ BOOL outsideSlop(S32 x, S32 y, S32 start_x, S32 start_y);
+ BOOL pickAndShowMenu(S32 x, S32 y, MASK mask, BOOL edit_menu);
+ BOOL useClickAction(BOOL always_show, MASK mask, LLViewerObject* object,
+ LLViewerObject* parent);
+
+protected:
+ BOOL mPieMouseButtonDown;
+ BOOL mGrabMouseButtonDown;
+ BOOL mHitLand;
+ LLUUID mHitObjectID;
+ BOOL mMouseOutsideSlop; // for this drag, has mouse moved outside slop region
+ static LLViewerObject* sClickActionObject;
+};
+
+extern LLToolPie *gToolPie;
+
+#endif