summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterinventory.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfloaterinventory.h')
-rw-r--r--indra/newview/llfloaterinventory.h44
1 files changed, 38 insertions, 6 deletions
diff --git a/indra/newview/llfloaterinventory.h b/indra/newview/llfloaterinventory.h
index 1aaac74c87..1666f18c05 100644
--- a/indra/newview/llfloaterinventory.h
+++ b/indra/newview/llfloaterinventory.h
@@ -57,6 +57,7 @@ class LLFolderViewItem;
class LLInventoryFilter;
class LLInventoryModel;
class LLInvFVBridge;
+class LLInventoryFVBridgeBuilder;
class LLMenuBarGL;
class LLCheckBoxCtrl;
class LLSpinCtrl;
@@ -94,12 +95,14 @@ public:
Optional<LLInventoryModel*> inventory;
Optional<bool> allow_multi_select;
Optional<Filter> filter;
+ Optional<std::string> start_folder;
Params()
: sort_order_setting("sort_order_setting"),
inventory("", &gInventory),
allow_multi_select("allow_multi_select", true),
- filter("filter")
+ filter("filter"),
+ start_folder("start_folder")
{}
};
@@ -108,7 +111,7 @@ protected:
friend class LLUICtrlFactory;
public:
- ~LLInventoryPanel();
+ virtual ~LLInventoryPanel();
LLInventoryModel* getModel() { return mInventory; }
@@ -169,17 +172,46 @@ public:
protected:
// Given the id and the parent, build all of the folder views.
- void rebuildViewsFor(const LLUUID& id, U32 mask);
- void buildNewViews(const LLUUID& id);
+ void rebuildViewsFor(const LLUUID& id);
+ virtual void buildNewViews(const LLUUID& id); // made virtual to support derived classes. EXT-719
+
+ // Be sure that passed pointer will be destroyed where it was created.
+ void setInvFVBridgeBuilder(const LLInventoryFVBridgeBuilder* bridge_builder);
protected:
LLInventoryModel* mInventory;
LLInventoryObserver* mInventoryObserver;
- LLFolderView* mFolders;
- LLScrollContainer* mScroller;
BOOL mAllowMultiSelect;
std::string mSortOrderSetting;
+
+//private: // Can not make these private - needed by llinventorysubtreepanel
+ LLFolderView* mFolders;
+ std::string mStartFolderString;
+ LLUUID mStartFolderID;
+ LLScrollContainer* mScroller;
bool mHasInventoryConnection;
+
+ /**
+ * Flag specified if default inventory hierarchy should be created in postBuild()
+ */
+ bool mBuildDefaultHierarchy;
+
+ /**
+ * Contains UUID of Inventory item from which hierarchy should be built.
+ * Should be set by derived class before modelChanged() is called.
+ * Default is LLUUID::null that means total Inventory hierarchy.
+ */
+ LLUUID mRootInventoryItemUUID;
+
+ /**
+ * Pointer to LLInventoryFVBridgeBuilder.
+ *
+ * It is set in LLInventoryPanel's constructor and can be overridden in derived classes with
+ * another implementation.
+ * Take into account it will not be deleted by LLInventoryPanel itself.
+ */
+ const LLInventoryFVBridgeBuilder* mInvFVBridgeBuilder;
+
};
class LLFloaterInventory;