summaryrefslogtreecommitdiff
path: root/indra/newview/llpaneloutfitsinventory.h
diff options
context:
space:
mode:
authorLoren Shih <seraph@lindenlab.com>2009-11-17 13:00:26 -0500
committerLoren Shih <seraph@lindenlab.com>2009-11-17 13:00:26 -0500
commit53beee9e0837865163ff700df4b8d452135da9eb (patch)
tree091ad1000bacecec6f28639bf6e1227254ac7638 /indra/newview/llpaneloutfitsinventory.h
parent32dccaf3d89b40b711d69088a3e390119c7efc7f (diff)
EXT-2569 : Separate out LLPanelOutfitsInventory so it's more modular versus being coupled with LLSidepanelAppearance
EXT-2561 : Add standard bottom panel (gear menu, add button, trash icon) Added gear menu and standardized the code. (someday, will create a subclass to share the functionality across panels) Make LLPanelOutfitsInventory more modular, e.g. it no longer knows about the Wear/Edit buttons. --HG-- branch : avatar-pipeline
Diffstat (limited to 'indra/newview/llpaneloutfitsinventory.h')
-rw-r--r--indra/newview/llpaneloutfitsinventory.h36
1 files changed, 31 insertions, 5 deletions
diff --git a/indra/newview/llpaneloutfitsinventory.h b/indra/newview/llpaneloutfitsinventory.h
index 3f837d3635..4d903a389b 100644
--- a/indra/newview/llpaneloutfitsinventory.h
+++ b/indra/newview/llpaneloutfitsinventory.h
@@ -42,6 +42,8 @@ class LLFolderViewEventListener;
class LLInventoryPanel;
class LLSaveFolderState;
class LLButton;
+class LLMenuGL;
+class LLSidepanelAppearance;
class LLPanelOutfitsInventory : public LLPanel
{
@@ -55,22 +57,46 @@ public:
void onWear();
void onEdit();
void onNew();
- void updateVerbs();
void onSelectionChange(const std::deque<LLFolderViewItem*> &items, BOOL user_action);
void onSelectorButtonClicked();
+ LLInventoryPanel* getActivePanel() { return mInventoryPanel; }
+
+ // If a compatible listener type is selected, then return a pointer to that.
+ // Otherwise, return NULL.
+ LLFolderViewEventListener* getCorrectListenerForAction();
+ void setParent(LLSidepanelAppearance *parent);
+protected:
+ void updateParent();
+ bool getIsCorrectType(const LLFolderViewEventListener *listenerp) const;
LLFolderView* getRootFolder();
private:
- bool getIsCorrectType(const LLFolderViewEventListener *listenerp) const;
+ LLSidepanelAppearance* mParent;
LLInventoryPanel* mInventoryPanel;
LLSaveFolderState* mSavedFolderState;
- LLButton* mActionBtn;
- LLButton* mWearBtn;
- LLButton* mEditBtn;
+ //////////////////////////////////////////////////////////////////////////////////
+ // List Commands //
+protected:
+ void initListCommandsHandlers();
+ void updateListCommands();
+ void onGearButtonClick();
+ void onAddButtonClick();
+ void showActionMenu(LLMenuGL* menu, std::string spawning_view_name);
+ void onTrashButtonClick();
+ void onClipboardAction(const LLSD& userdata);
+ BOOL isActionEnabled(const LLSD& command_name);
+ void onCustomAction(const LLSD& command_name);
+ bool handleDragAndDropToTrash(BOOL drop, EDragAndDropType cargo_type, EAcceptance* accept);
+private:
+ LLPanel* mListCommands;
+ LLMenuGL* mMenuGearDefault;
+ LLMenuGL* mMenuAdd;
+ // //
+ ////////////////////////////////////////////////////////////////////////////////
};
#endif //LL_LLPANELOUTFITSINVENTORY_H