summaryrefslogtreecommitdiff
path: root/indra/llui/llmenubutton.h
diff options
context:
space:
mode:
authorWolfpup Lowenhar <wolfpup67@earthlink.net>2010-10-25 22:24:44 -0400
committerWolfpup Lowenhar <wolfpup67@earthlink.net>2010-10-25 22:24:44 -0400
commit2e023b0affb733c025e4c15d6551236c8eb28950 (patch)
tree5721e9651934a6cb01554a3087f252f3005a4101 /indra/llui/llmenubutton.h
parent6da1e54e6a8b66a2cad7c8c89de279ca5b9ac7dd (diff)
parenta40a2a7a465f6e03ca495c301dfbf7bfa376be30 (diff)
Merge from Viewer-development
Diffstat (limited to 'indra/llui/llmenubutton.h')
-rw-r--r--indra/llui/llmenubutton.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/indra/llui/llmenubutton.h b/indra/llui/llmenubutton.h
index 81c3592b16..9e91b9e99d 100644
--- a/indra/llui/llmenubutton.h
+++ b/indra/llui/llmenubutton.h
@@ -29,7 +29,7 @@
#include "llbutton.h"
-class LLMenuGL;
+class LLToggleableMenu;
class LLMenuButton
: public LLButton
@@ -52,14 +52,13 @@ public:
boost::signals2::connection setMouseDownCallback( const mouse_signal_t::slot_type& cb );
- /*virtual*/ void draw();
/*virtual*/ BOOL handleMouseDown(S32 x, S32 y, MASK mask);
/*virtual*/ BOOL handleKeyHere(KEY key, MASK mask );
void hideMenu();
- LLMenuGL* getMenu() { return mMenu; }
- void setMenu(LLMenuGL* menu, EMenuPosition position = MP_TOP_LEFT);
+ LLToggleableMenu* getMenu();
+ void setMenu(LLToggleableMenu* menu, EMenuPosition position = MP_TOP_LEFT);
void setMenuPosition(EMenuPosition position) { mMenuPosition = position; }
@@ -70,12 +69,14 @@ protected:
void toggleMenu();
void updateMenuOrigin();
+ void onMenuVisibilityChange(const LLSD& param);
+
private:
- LLMenuGL* mMenu;
- bool mMenuVisibleLastFrame;
- EMenuPosition mMenuPosition;
- S32 mX;
- S32 mY;
+ LLHandle<LLView> mMenuHandle;
+ bool mIsMenuShown;
+ EMenuPosition mMenuPosition;
+ S32 mX;
+ S32 mY;
};