diff options
Diffstat (limited to 'indra/newview/llpanelpicks.h')
-rw-r--r-- | indra/newview/llpanelpicks.h | 33 |
1 files changed, 28 insertions, 5 deletions
diff --git a/indra/newview/llpanelpicks.h b/indra/newview/llpanelpicks.h index 5ec9809f0b..3bc79daeb3 100644 --- a/indra/newview/llpanelpicks.h +++ b/indra/newview/llpanelpicks.h @@ -38,7 +38,9 @@ #include "lluuid.h" #include "llavatarpropertiesprocessor.h" #include "llpanelavatar.h" +#include "llregistry.h" +class LLPanelProfile; class LLMessageSystem; class LLVector3d; class LLPanelProfileTab; @@ -52,14 +54,14 @@ class LLPanelPicks : public LLPanelProfileTab { public: - LLPanelPicks(const LLUUID& avatar_id = LLUUID::null); + LLPanelPicks(); ~LLPanelPicks(); static void* create(void* data); /*virtual*/ BOOL postBuild(void); - /*virtual*/ void onActivate(const LLUUID& id); + /*virtual*/ void onOpen(const LLSD& key); void processProperties(void* data, EAvatarProcessorType type); @@ -75,13 +77,29 @@ public: /*virtual*/ BOOL handleRightMouseDown(S32 x, S32 y, MASK mask); /*virtual*/ BOOL handleMouseDown(S32 x, S32 y, MASK mask); + /*virtual*/ BOOL handleDoubleClick(S32 x, S32 y, MASK mask); + + //*NOTE top down approch when panel toggling is done only by + // parent panels failed to work (picks related code was in me profile panel) + void setProfilePanel(LLPanelProfile* profile_panel); private: - static void onClickDelete(void* data); - static void onClickTeleport(void* data); - static void onClickMap(void* data); + void onClickDelete(); + void onClickTeleport(); + void onClickMap(); + + //------------------------------------------------ + // Callbacks which require panel toggling + //------------------------------------------------ + void onClickNew(); + void onClickInfo(); + void onClickBack(); + void onClickMenuEdit(); + + void buildPickPanel(); bool callbackDelete(const LLSD& notification, const LLSD& response); + bool callbackTeleport(const LLSD& notification, const LLSD& response); void reshapePicksList(); void reshapePickItem(LLView* const pick_item, const S32 last_bottom); @@ -92,11 +110,16 @@ private: BOOL isMouseInPick(S32 x, S32 y); + LLPanelProfile* getProfilePanel(); + + typedef std::list<LLPickItem*> picture_list_t; picture_list_t mPickItemList; LLMenuGL* mPopupMenu; LLPickItem* mSelectedPickItem; + LLPanelProfile* mProfilePanel; + LLPanelPick* mPickPanel; }; class LLPickItem : public LLPanel, public LLAvatarPropertiesObserver |