summaryrefslogtreecommitdiff
path: root/indra/newview/llinventorypanel.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llinventorypanel.h')
-rw-r--r--indra/newview/llinventorypanel.h56
1 files changed, 28 insertions, 28 deletions
diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h
index 0ccee337c9..4f7f0a79f6 100644
--- a/indra/newview/llinventorypanel.h
+++ b/indra/newview/llinventorypanel.h
@@ -122,13 +122,12 @@ public:
// Call this method to set the selection.
void openAllFolders();
- void openDefaultFolderForType(LLFolderType::EType);
void setSelection(const LLUUID& obj_id, BOOL take_keyboard_focus);
void setSelectCallback(const LLFolderView::signal_t::slot_type& cb) { if (mFolders) mFolders->setSelectCallback(cb); }
void clearSelection();
LLInventoryFilter* getFilter();
- void setFilterTypes(U64 filter, BOOL filter_for_categories = FALSE); // if filter_for_categories is true, operate on folder preferred asset type
- U32 getFilterTypes() const { return mFolders->getFilterTypes(); }
+ void setFilterTypes(U64 filter, LLInventoryFilter::EFilterType = LLInventoryFilter::FILTERTYPE_OBJECT);
+ U32 getFilterObjectTypes() const { return mFolders->getFilterObjectTypes(); }
void setFilterPermMask(PermissionMask filter_perm_mask);
U32 getFilterPermMask() const { return mFolders->getFilterPermissions(); }
void setFilterSubString(const std::string& string);
@@ -161,40 +160,22 @@ public:
void openSelected();
void unSelectAll() { mFolders->setSelection(NULL, FALSE, FALSE); }
-protected:
- // Destroys the old views, and regenerates them based on the
- // start folder ID.
- void rebuildViews();
+ static void onIdle(void* user_data);
+
+ // Find whichever inventory panel is active / on top.
+ // "Auto_open" determines if we open an inventory panel if none are open.
+ static LLInventoryPanel *getActiveInventoryPanel(BOOL auto_open = TRUE);
- // Given the id and the parent, build all of the folder views.
- void rebuildViewsFor(const LLUUID& id);
- virtual void buildNewViews(const LLUUID& id); // made virtual to support derived classes. EXT-719
- void defaultOpenInventory(); // open the first level of inventory
protected:
+ void defaultOpenInventory(); // open the first level of inventory
+
LLInventoryModel* mInventory;
LLInventoryObserver* mInventoryObserver;
BOOL mAllowMultiSelect;
std::string mSortOrderSetting;
-//private: // Can not make these private - needed by llinventorysubtreepanel
LLFolderView* mFolders;
- std::string mStartFolderString;
-
- /**
- * Contains UUID of Inventory item from which hierarchy should be built.
- * Can be set with the "start_folder" xml property.
- * Default is LLUUID::null that means total Inventory hierarchy.
- */
- LLUUID mStartFolderID;
LLScrollContainer* mScroller;
- bool mHasInventoryConnection;
-
- /**
- * Flag specified if default inventory hierarchy should be created in postBuild()
- */
- bool mBuildDefaultHierarchy;
-
- LLUUID mRootInventoryItemUUID;
/**
* Pointer to LLInventoryFVBridgeBuilder.
@@ -205,6 +186,25 @@ protected:
*/
const LLInventoryFVBridgeBuilder* mInvFVBridgeBuilder;
+ //--------------------------------------------------------------------
+ // Initialization routines for building up the UI ("views")
+ //--------------------------------------------------------------------
+public:
+ BOOL getIsViewsInitialized() const { return mViewsInitialized; }
+ const LLUUID& getStartFolderID() const { return mStartFolderID; }
+ const std::string& getStartFolderString() { return mStartFolderString; }
+protected:
+ // Builds the UI. Call this once the inventory is usable.
+ void initializeViews();
+ void rebuildViewsFor(const LLUUID& id); // Given the id and the parent, build all of the folder views.
+ virtual void buildNewViews(const LLUUID& id);
+private:
+ BOOL mBuildDefaultHierarchy; // default inventory hierarchy should be created in postBuild()
+ BOOL mViewsInitialized; // Views have been generated
+ // UUID of category from which hierarchy should be built. Set with the
+ // "start_folder" xml property. Default is LLUUID::null that means total Inventory hierarchy.
+ std::string mStartFolderString;
+ LLUUID mStartFolderID;
};
#endif // LL_LLINVENTORYPANEL_H