diff options
| -rw-r--r-- | indra/newview/llfolderviewmodelinventory.h | 1 | ||||
| -rw-r--r-- | indra/newview/llinventorybridge.cpp | 10 | ||||
| -rw-r--r-- | indra/newview/llinventorybridge.h | 1 | ||||
| -rw-r--r-- | indra/newview/llinventoryfilter.cpp | 21 | ||||
| -rw-r--r-- | indra/newview/llinventoryfilter.h | 4 | ||||
| -rw-r--r-- | indra/newview/llpanelmaininventory.cpp | 46 | ||||
| -rw-r--r-- | indra/newview/llpanelmaininventory.h | 5 | ||||
| -rw-r--r-- | indra/newview/llpanelmarketplaceinbox.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llsidepanelinventory.cpp | 156 | ||||
| -rw-r--r-- | indra/newview/llsidepanelinventory.h | 15 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml | 93 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_inventory_search_visibility.xml | 11 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_inventory_view_default.xml | 53 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/panel_main_inventory.xml | 151 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/sidepanel_inventory.xml | 125 | 
15 files changed, 210 insertions, 485 deletions
diff --git a/indra/newview/llfolderviewmodelinventory.h b/indra/newview/llfolderviewmodelinventory.h index 87e49189d8..1649b2eed7 100644 --- a/indra/newview/llfolderviewmodelinventory.h +++ b/indra/newview/llfolderviewmodelinventory.h @@ -46,6 +46,7 @@ public:  	virtual LLFolderType::EType getPreferredType() const = 0;  	virtual void showProperties(void) = 0;  	virtual BOOL isItemInTrash( void) const { return FALSE; } // TODO: make   into pure virtual. +    virtual bool isItemInOutfits() const { return false; }  	virtual BOOL isAgentInventory() const { return FALSE; }  	virtual BOOL isUpToDate() const = 0;      virtual void addChild(LLFolderViewModelItem* child); diff --git a/indra/newview/llinventorybridge.cpp b/indra/newview/llinventorybridge.cpp index 405c1f884a..8197a698e4 100644 --- a/indra/newview/llinventorybridge.cpp +++ b/indra/newview/llinventorybridge.cpp @@ -1244,6 +1244,16 @@ BOOL LLInvFVBridge::isLinkedObjectInTrash() const  	return FALSE;  } +bool LLInvFVBridge::isItemInOutfits() const +{ +    const LLInventoryModel* model = getInventoryModel(); +    if(!model) return false; + +    const LLUUID my_outfits_cat = gInventory.findCategoryUUIDForType(LLFolderType::FT_MY_OUTFITS, false); + +    return isCOFFolder() || (my_outfits_cat == mUUID) || model->isObjectDescendentOf(mUUID, my_outfits_cat); +} +  BOOL LLInvFVBridge::isLinkedObjectMissing() const  {  	const LLInventoryObject *obj = getInventoryObject(); diff --git a/indra/newview/llinventorybridge.h b/indra/newview/llinventorybridge.h index d56e0b778d..e560dff0e4 100644 --- a/indra/newview/llinventorybridge.h +++ b/indra/newview/llinventorybridge.h @@ -115,6 +115,7 @@ public:  	virtual BOOL isItemRemovable() const;  	virtual BOOL isItemMovable() const;  	virtual BOOL isItemInTrash() const; +    virtual bool isItemInOutfits() const;  	virtual BOOL isLink() const;  	virtual BOOL isLibraryItem() const;  	//virtual BOOL removeItem() = 0; diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 707ff2b7b6..855de7a362 100644 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -596,6 +596,9 @@ bool LLInventoryFilter::checkAgainstSearchVisibility(const LLFolderViewModelItem  	if (is_link && ((mFilterOps.mSearchVisibility & VISIBILITY_LINKS) == 0))  		return FALSE; +    if (listener->isItemInOutfits() && ((mFilterOps.mSearchVisibility & VISIBILITY_OUTFITS) == 0)) +        return FALSE; +  	if (listener->isItemInTrash() && ((mFilterOps.mSearchVisibility & VISIBILITY_TRASH) == 0))  		return FALSE; @@ -792,6 +795,24 @@ void LLInventoryFilter::toggleSearchVisibilityLinks()  	}  } +void LLInventoryFilter::toggleSearchVisibilityOutfits() +{ +    bool hide_outfits = mFilterOps.mSearchVisibility & VISIBILITY_OUTFITS; +    if (hide_outfits) +    { +        mFilterOps.mSearchVisibility &= ~VISIBILITY_OUTFITS; +    } +    else +    { +        mFilterOps.mSearchVisibility |= VISIBILITY_OUTFITS; +    } + +    if (hasFilterString()) +    { +        setModified(hide_outfits ? FILTER_MORE_RESTRICTIVE : FILTER_LESS_RESTRICTIVE); +    } +} +  void LLInventoryFilter::toggleSearchVisibilityTrash()  {  	bool hide_trash = mFilterOps.mSearchVisibility & VISIBILITY_TRASH; diff --git a/indra/newview/llinventoryfilter.h b/indra/newview/llinventoryfilter.h index 384de3e889..72deb7c76b 100644 --- a/indra/newview/llinventoryfilter.h +++ b/indra/newview/llinventoryfilter.h @@ -104,7 +104,8 @@ public:  		VISIBILITY_NONE = 0,  		VISIBILITY_TRASH = 0x1 << 0,  		VISIBILITY_LIBRARY = 0x1 << 1, -		VISIBILITY_LINKS	= 0x1 << 2 +		VISIBILITY_LINKS	= 0x1 << 2, +        VISIBILITY_OUTFITS    = 0x1 << 3  	};  	struct FilterOps @@ -228,6 +229,7 @@ public:  	void				toggleSearchVisibilityLinks();  	void				toggleSearchVisibilityTrash(); +    void                toggleSearchVisibilityOutfits();  	void				toggleSearchVisibilityLibrary();  	void 				setSearchVisibilityTypes(U32 types);  	void 				setSearchVisibilityTypes(const Params& params); diff --git a/indra/newview/llpanelmaininventory.cpp b/indra/newview/llpanelmaininventory.cpp index 89256b40c4..b2953e9c99 100644 --- a/indra/newview/llpanelmaininventory.cpp +++ b/indra/newview/llpanelmaininventory.cpp @@ -113,7 +113,8 @@ LLPanelMainInventory::LLPanelMainInventory(const LLPanel::Params& p)  	  mMenuGearDefault(NULL),  	  mMenuVisibility(NULL),  	  mMenuAddHandle(), -	  mNeedUploadCost(true) +	  mNeedUploadCost(true), +      mMenuViewDefault(NULL)  {  	// Menu Callbacks (non contex menus)  	mCommitCallbackRegistrar.add("Inventory.DoToSelected", boost::bind(&LLPanelMainInventory::doToSelected, this, _2)); @@ -237,6 +238,7 @@ BOOL LLPanelMainInventory::postBuild()  	mGearMenuButton = getChild<LLMenuButton>("options_gear_btn");  	mVisibilityMenuButton = getChild<LLMenuButton>("options_visibility_btn"); +    mViewMenuButton = getChild<LLMenuButton>("view_btn");  	initListCommandsHandlers(); @@ -1163,21 +1165,15 @@ void LLFloaterInventoryFinder::selectNoTypes(void* user_data)  void LLPanelMainInventory::initListCommandsHandlers()  { -	childSetAction("trash_btn", boost::bind(&LLPanelMainInventory::onTrashButtonClick, this));  	childSetAction("add_btn", boost::bind(&LLPanelMainInventory::onAddButtonClick, this)); -	mTrashButton = getChild<LLDragAndDropButton>("trash_btn"); -	mTrashButton->setDragAndDropHandler(boost::bind(&LLPanelMainInventory::handleDragAndDropToTrash, this -			,	_4 // BOOL drop -			,	_5 // EDragAndDropType cargo_type -			,	_7 // EAcceptance* accept -			)); -  	mCommitCallbackRegistrar.add("Inventory.GearDefault.Custom.Action", boost::bind(&LLPanelMainInventory::onCustomAction, this, _2));  	mEnableCallbackRegistrar.add("Inventory.GearDefault.Check", boost::bind(&LLPanelMainInventory::isActionChecked, this, _2));  	mEnableCallbackRegistrar.add("Inventory.GearDefault.Enable", boost::bind(&LLPanelMainInventory::isActionEnabled, this, _2));  	mMenuGearDefault = LLUICtrlFactory::getInstance()->createFromFile<LLToggleableMenu>("menu_inventory_gear_default.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance());  	mGearMenuButton->setMenu(mMenuGearDefault); +    mMenuViewDefault = LLUICtrlFactory::getInstance()->createFromFile<LLToggleableMenu>("menu_inventory_view_default.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance()); +    mViewMenuButton->setMenu(mMenuViewDefault);  	LLMenuGL* menu = LLUICtrlFactory::getInstance()->createFromFile<LLMenuGL>("menu_inventory_add.xml", gMenuHolder, LLViewerMenuHolderGL::child_registry_t::instance());  	mMenuAddHandle = menu->getHandle(); @@ -1191,9 +1187,6 @@ void LLPanelMainInventory::initListCommandsHandlers()  void LLPanelMainInventory::updateListCommands()  { -	bool trash_enabled = isActionEnabled("delete"); - -	mTrashButton->setEnabled(trash_enabled);  }  void LLPanelMainInventory::onAddButtonClick() @@ -1227,11 +1220,6 @@ void LLPanelMainInventory::showActionMenu(LLMenuGL* menu, std::string spawning_v  	}  } -void LLPanelMainInventory::onTrashButtonClick() -{ -	onClipboardAction("delete"); -} -  void LLPanelMainInventory::onClipboardAction(const LLSD& userdata)  {  	std::string command_name = userdata.asString(); @@ -1375,6 +1363,11 @@ void LLPanelMainInventory::onCustomAction(const LLSD& userdata)  		LLFloaterReg::showInstance("linkreplace", params);  	} +    if (command_name == "toggle_search_outfits") +    { +        mActivePanel->getFilter().toggleSearchVisibilityOutfits(); +    } +  	if (command_name == "toggle_search_trash")  	{  		mActivePanel->getFilter().toggleSearchVisibilityTrash(); @@ -1534,6 +1527,11 @@ BOOL LLPanelMainInventory::isActionChecked(const LLSD& userdata)  		return sort_order_mask & LLInventoryFilter::SO_SYSTEM_FOLDERS_TO_TOP;  	} +    if (command_name == "toggle_search_outfits") +    { +        return (mActivePanel->getFilter().getSearchVisibilityTypes() & LLInventoryFilter::VISIBILITY_OUTFITS) != 0; +    } +  	if (command_name == "toggle_search_trash")  	{  		return (mActivePanel->getFilter().getSearchVisibilityTypes() & LLInventoryFilter::VISIBILITY_TRASH) != 0; @@ -1552,20 +1550,6 @@ BOOL LLPanelMainInventory::isActionChecked(const LLSD& userdata)  	return FALSE;  } -bool LLPanelMainInventory::handleDragAndDropToTrash(BOOL drop, EDragAndDropType cargo_type, EAcceptance* accept) -{ -	*accept = ACCEPT_NO; - -	const bool is_enabled = isActionEnabled("delete"); -	if (is_enabled) *accept = ACCEPT_YES_MULTI; - -	if (is_enabled && drop) -	{ -		onClipboardAction("delete"); -	} -	return true; -} -  void LLPanelMainInventory::setUploadCostIfNeeded()  {  	LLMenuGL* menu = (LLMenuGL*)mMenuAddHandle.get(); diff --git a/indra/newview/llpanelmaininventory.h b/indra/newview/llpanelmaininventory.h index 257bce930c..1f07d381ba 100644 --- a/indra/newview/llpanelmaininventory.h +++ b/indra/newview/llpanelmaininventory.h @@ -158,22 +158,21 @@ protected:  	void updateListCommands();  	void onAddButtonClick();  	void showActionMenu(LLMenuGL* menu, std::string spawning_view_name); -	void onTrashButtonClick();  	void onClipboardAction(const LLSD& userdata);  	BOOL isActionEnabled(const LLSD& command_name);  	BOOL isActionChecked(const LLSD& userdata);  	void onCustomAction(const LLSD& command_name); -	bool handleDragAndDropToTrash(BOOL drop, EDragAndDropType cargo_type, EAcceptance* accept);      static bool hasSettingsInventory();  	/**  	 * Set upload cost in "Upload" sub menu.  	 */  	void setUploadCostIfNeeded();  private: -	LLDragAndDropButton*		mTrashButton;  	LLToggleableMenu*			mMenuGearDefault; +    LLToggleableMenu*           mMenuViewDefault;  	LLToggleableMenu*			mMenuVisibility;  	LLMenuButton*				mGearMenuButton; +    LLMenuButton*               mViewMenuButton;  	LLMenuButton*				mVisibilityMenuButton;  	LLHandle<LLView>			mMenuAddHandle; diff --git a/indra/newview/llpanelmarketplaceinbox.cpp b/indra/newview/llpanelmarketplaceinbox.cpp index 8a86f4f63d..3638ee14fc 100644 --- a/indra/newview/llpanelmarketplaceinbox.cpp +++ b/indra/newview/llpanelmarketplaceinbox.cpp @@ -75,9 +75,6 @@ BOOL LLPanelMarketplaceInbox::postBuild()  void LLPanelMarketplaceInbox::onSelectionChange()  { -	LLSidepanelInventory* sidepanel_inventory = LLFloaterSidePanelContainer::getPanel<LLSidepanelInventory>("inventory"); -		 -	sidepanel_inventory->updateVerbs();  } diff --git a/indra/newview/llsidepanelinventory.cpp b/indra/newview/llsidepanelinventory.cpp index a5dcdc41ed..4843e481e8 100644 --- a/indra/newview/llsidepanelinventory.cpp +++ b/indra/newview/llsidepanelinventory.cpp @@ -158,29 +158,11 @@ BOOL LLSidepanelInventory::postBuild()  	// UI elements from inventory panel  	{  		mInventoryPanel = getChild<LLPanel>("sidepanel_inventory_panel"); - -		mInfoBtn = mInventoryPanel->getChild<LLButton>("info_btn"); -		mInfoBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onInfoButtonClicked, this)); -		 -		mShareBtn = mInventoryPanel->getChild<LLButton>("share_btn"); -		mShareBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onShareButtonClicked, this)); -		 -		mShopBtn = mInventoryPanel->getChild<LLButton>("shop_btn"); -		mShopBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onShopButtonClicked, this)); - -		mWearBtn = mInventoryPanel->getChild<LLButton>("wear_btn"); -		mWearBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onWearButtonClicked, this)); -		 -		mPlayBtn = mInventoryPanel->getChild<LLButton>("play_btn"); -		mPlayBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onPlayButtonClicked, this)); -		 -		mTeleportBtn = mInventoryPanel->getChild<LLButton>("teleport_btn"); -		mTeleportBtn->setClickedCallback(boost::bind(&LLSidepanelInventory::onTeleportButtonClicked, this));  		mPanelMainInventory = mInventoryPanel->getChild<LLPanelMainInventory>("panel_main_inventory");  		mPanelMainInventory->setSelectCallback(boost::bind(&LLSidepanelInventory::onSelectionChange, this, _1, _2)); -		LLTabContainer* tabs = mPanelMainInventory->getChild<LLTabContainer>("inventory filter tabs"); -		tabs->setCommitCallback(boost::bind(&LLSidepanelInventory::updateVerbs, this)); +		//LLTabContainer* tabs = mPanelMainInventory->getChild<LLTabContainer>("inventory filter tabs"); +		//tabs->setCommitCallback(boost::bind(&LLSidepanelInventory::updateVerbs, this));  		/*   		   EXT-4846 : "Can we suppress the "Landmarks" and "My Favorites" folder since they have their own Task Panel?" @@ -190,7 +172,7 @@ BOOL LLSidepanelInventory::postBuild()  		my_inventory_panel->addHideFolderType(LLFolderType::FT_FAVORITE);  		*/ -		LLOutfitObserver::instance().addCOFChangedCallback(boost::bind(&LLSidepanelInventory::updateVerbs, this)); +		//LLOutfitObserver::instance().addCOFChangedCallback(boost::bind(&LLSidepanelInventory::updateVerbs, this));  	}  	// UI elements from item panel @@ -240,9 +222,6 @@ BOOL LLSidepanelInventory::postBuild()  	gSavedSettings.getControl("InventoryDisplayInbox")->getCommitSignal()->connect(boost::bind(&handleInventoryDisplayInboxChanged)); -	// Update the verbs buttons state. -	updateVerbs(); -  	return TRUE;  } @@ -431,27 +410,6 @@ void LLSidepanelInventory::onOpen(const LLSD& key)  	}  } -void LLSidepanelInventory::onInfoButtonClicked() -{ -	LLInventoryItem *item = getSelectedItem(); -	if (item) -	{ -		mItemPanel->reset(); -		mItemPanel->setItemID(item->getUUID()); -		showItemInfoPanel(); -	} -} - -void LLSidepanelInventory::onShareButtonClicked() -{ -	LLAvatarActions::shareWithAvatars(this); -} - -void LLSidepanelInventory::onShopButtonClicked() -{ -	LLWeb::loadURL(gSavedSettings.getString("MarketplaceURL")); -} -  void LLSidepanelInventory::performActionOnSelection(const std::string &action)  {  	LLFolderViewItem* current_item = mPanelMainInventory->getActivePanel()->getRootFolder()->getCurSelectedItem(); @@ -471,47 +429,6 @@ void LLSidepanelInventory::performActionOnSelection(const std::string &action)  	static_cast<LLFolderViewModelItemInventory*>(current_item->getViewModelItem())->performAction(mPanelMainInventory->getActivePanel()->getModel(), action);  } -void LLSidepanelInventory::onWearButtonClicked() -{ -	// Get selected items set. -	const std::set<LLUUID> selected_uuids_set = LLAvatarActions::getInventorySelectedUUIDs(); -	if (selected_uuids_set.empty()) return; // nothing selected - -	// Convert the set to a vector. -	uuid_vec_t selected_uuids_vec; -	for (std::set<LLUUID>::const_iterator it = selected_uuids_set.begin(); it != selected_uuids_set.end(); ++it) -	{ -		selected_uuids_vec.push_back(*it); -	} - -	// Wear all selected items. -	wear_multiple(selected_uuids_vec, true); -} - -void LLSidepanelInventory::onPlayButtonClicked() -{ -	const LLInventoryItem *item = getSelectedItem(); -	if (!item) -	{ -		return; -	} - -	switch(item->getInventoryType()) -	{ -	case LLInventoryType::IT_GESTURE: -		performActionOnSelection("play"); -		break; -	default: -		performActionOnSelection("open"); -		break; -	} -} - -void LLSidepanelInventory::onTeleportButtonClicked() -{ -	performActionOnSelection("teleport"); -} -  void LLSidepanelInventory::onBackButtonClicked()  {  	showInventoryPanel(); @@ -519,7 +436,7 @@ void LLSidepanelInventory::onBackButtonClicked()  void LLSidepanelInventory::onSelectionChange(const std::deque<LLFolderViewItem*> &items, BOOL user_action)  { -	updateVerbs(); +  }  void LLSidepanelInventory::showItemInfoPanel() @@ -552,69 +469,6 @@ void LLSidepanelInventory::showInventoryPanel()  	if (mTaskPanel)  		mTaskPanel->setVisible(FALSE);  	mInventoryPanel->setVisible(TRUE); -	updateVerbs(); -} - -void LLSidepanelInventory::updateVerbs() -{ -	mInfoBtn->setEnabled(FALSE); -	mShareBtn->setEnabled(FALSE); - -	mWearBtn->setVisible(FALSE); -	mWearBtn->setEnabled(FALSE); -	mPlayBtn->setVisible(FALSE); -	mPlayBtn->setEnabled(FALSE); -	mPlayBtn->setToolTip(std::string("")); - 	mTeleportBtn->setVisible(FALSE); - 	mTeleportBtn->setEnabled(FALSE); - 	mShopBtn->setVisible(TRUE); - -	mShareBtn->setEnabled(canShare()); - -	const LLInventoryItem *item = getSelectedItem(); -	if (!item) -		return; - -	bool is_single_selection = getSelectedCount() == 1; - -	mInfoBtn->setEnabled(is_single_selection); - -	switch(item->getInventoryType()) -	{ -		case LLInventoryType::IT_WEARABLE: -		case LLInventoryType::IT_OBJECT: -		case LLInventoryType::IT_ATTACHMENT: -			mWearBtn->setVisible(TRUE); -			mWearBtn->setEnabled(canWearSelected()); -		 	mShopBtn->setVisible(FALSE); -			break; -		case LLInventoryType::IT_SOUND: -			mPlayBtn->setVisible(TRUE); -			mPlayBtn->setEnabled(TRUE); -			mPlayBtn->setToolTip(LLTrans::getString("InventoryPlaySoundTooltip")); -			mShopBtn->setVisible(FALSE); -			break; -		case LLInventoryType::IT_GESTURE: -			mPlayBtn->setVisible(TRUE); -			mPlayBtn->setEnabled(TRUE); -			mPlayBtn->setToolTip(LLTrans::getString("InventoryPlayGestureTooltip")); -			mShopBtn->setVisible(FALSE); -			break; -		case LLInventoryType::IT_ANIMATION: -			mPlayBtn->setVisible(TRUE); -			mPlayBtn->setEnabled(TRUE); -			mPlayBtn->setEnabled(TRUE); -			mPlayBtn->setToolTip(LLTrans::getString("InventoryPlayAnimationTooltip")); -			mShopBtn->setVisible(FALSE); -			break; -		case LLInventoryType::IT_LANDMARK: -			mTeleportBtn->setVisible(TRUE); -			mTeleportBtn->setEnabled(TRUE); -		 	mShopBtn->setVisible(FALSE); -			break; -		default: -			break; -	}  }  bool LLSidepanelInventory::canShare() @@ -741,8 +595,6 @@ void LLSidepanelInventory::clearSelections(bool clearMain, bool clearInbox)  	{  		mInventoryPanelInbox.get()->getRootFolder()->clearSelection();  	} -	 -	updateVerbs();  }  std::set<LLFolderViewItem*> LLSidepanelInventory::getInboxSelectionList() diff --git a/indra/newview/llsidepanelinventory.h b/indra/newview/llsidepanelinventory.h index a3cd20a2c6..731eb7cba7 100644 --- a/indra/newview/llsidepanelinventory.h +++ b/indra/newview/llsidepanelinventory.h @@ -81,8 +81,6 @@ public:  	bool isInboxEnabled() const { return mInboxEnabled; } -	void updateVerbs(); -  	static void cleanup();  protected: @@ -108,22 +106,9 @@ private:  	LLPanelMainInventory*		mPanelMainInventory;  protected: -	void 						onInfoButtonClicked(); -	void 						onShareButtonClicked(); -	void 						onShopButtonClicked(); -	void 						onWearButtonClicked(); -	void 						onPlayButtonClicked(); -	void 						onTeleportButtonClicked();  	void 						onBackButtonClicked();  private: -	LLButton*					mInfoBtn; -	LLButton*					mShareBtn; -	LLButton*					mWearBtn; -	LLButton*					mPlayBtn; -	LLButton*					mTeleportBtn; -	LLButton*					mShopBtn; -  	bool						mInboxEnabled;  	LLInventoryCategoriesObserver* 	mCategoriesObserver; diff --git a/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml b/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml index 3eacdbc781..3fb2e01e5b 100644 --- a/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml +++ b/indra/newview/skins/default/xui/en/menu_inventory_gear_default.xml @@ -7,60 +7,32 @@   name="menu_gear_default"   visible="false">      <menu_item_call -     label="New Inventory Window" +     label="New Folder Window"       layout="topleft" -     shortcut="control|shift|I" -     name="new_window"> +     shortcut="control|shift|J" +     enabled="false" +     name="new_single_folder">          <on_click           function="Inventory.GearDefault.Custom.Action"           parameter="new_window" />      </menu_item_call> -    <menu_item_separator -     layout="topleft" /> -    <menu_item_check -     label="Sort by Name" -     layout="topleft" -     name="sort_by_name"> -        <on_click -         function="Inventory.GearDefault.Custom.Action" -         parameter="sort_by_name" /> -        <on_check -         function="Inventory.GearDefault.Check" -         parameter="sort_by_name" /> -    </menu_item_check> -    <menu_item_check -     label="Sort by Most Recent" -     layout="topleft" -     name="sort_by_recent"> -        <on_click -         function="Inventory.GearDefault.Custom.Action" -         parameter="sort_by_recent" /> -        <on_check -         function="Inventory.GearDefault.Check" -         parameter="sort_by_recent" />          -    </menu_item_check> -    <menu_item_check -     label="Sort Folders Always by Name" +    <menu_item_call +     label="New Inventory Window"       layout="topleft" -     name="sort_folders_by_name"> +     shortcut="control|shift|I" +     name="new_window">          <on_click           function="Inventory.GearDefault.Custom.Action" -         parameter="sort_folders_by_name" /> -        <on_check -         function="Inventory.GearDefault.Check" -         parameter="sort_folders_by_name" /> -    </menu_item_check> -    <menu_item_check -     label="Sort System Folders to Top" +         parameter="new_window" /> +    </menu_item_call> +    <menu_item_call +     label="Close All Folders"       layout="topleft" -     name="sort_system_folders_to_top"> +     name="close_folders">          <on_click           function="Inventory.GearDefault.Custom.Action" -         parameter="sort_system_folders_to_top" /> -        <on_check -         function="Inventory.GearDefault.Check" -         parameter="sort_system_folders_to_top" /> -    </menu_item_check> +         parameter="close_folders" /> +    </menu_item_call>      <menu_item_separator       layout="topleft" />      <menu_item_call @@ -79,29 +51,6 @@           function="Inventory.GearDefault.Custom.Action"           parameter="reset_filters" />      </menu_item_call> -    <menu_item_call -     label="Close All Folders" -     layout="topleft" -     name="close_folders"> -        <on_click -         function="Inventory.GearDefault.Custom.Action" -         parameter="close_folders" /> -    </menu_item_call> -    <menu_item_separator -     layout="topleft" /> -    <menu_item_call -     label="Empty Lost and Found" -     layout="topleft" -     name="empty_lostnfound"> -        <on_click -         function="Inventory.GearDefault.Custom.Action" -         parameter="empty_lostnfound" /> -        <on_enable -         function="Inventory.GearDefault.Enable" -         parameter="empty_lostnfound" /> -    </menu_item_call> -    <menu_item_separator -     layout="topleft" />      <menu_item_call            label="Save Texture As"           layout="topleft" @@ -156,7 +105,17 @@          </menu_item_call>      <menu_item_separator       layout="topleft" /> - +    <menu_item_call +     label="Empty Lost and Found" +     layout="topleft" +     name="empty_lostnfound"> +        <on_click +         function="Inventory.GearDefault.Custom.Action" +         parameter="empty_lostnfound" /> +        <on_enable +         function="Inventory.GearDefault.Enable" +         parameter="empty_lostnfound" /> +    </menu_item_call>      <menu_item_call       label="Empty Trash"       layout="topleft" diff --git a/indra/newview/skins/default/xui/en/menu_inventory_search_visibility.xml b/indra/newview/skins/default/xui/en/menu_inventory_search_visibility.xml index 46193f4a7a..8e34f52f3a 100644 --- a/indra/newview/skins/default/xui/en/menu_inventory_search_visibility.xml +++ b/indra/newview/skins/default/xui/en/menu_inventory_search_visibility.xml @@ -7,6 +7,17 @@   name="menu_search_visibility"   visible="false">    <menu_item_check +   label="Search outfit folders" +   layout="topleft" +   name="search_outfits"> +    <on_click +     function="Inventory.GearDefault.Custom.Action" +     parameter="toggle_search_outfits" /> +    <on_check +     function="Inventory.GearDefault.Check" +     parameter="toggle_search_outfits" /> +  </menu_item_check> +  <menu_item_check     label="Search Trash"     layout="topleft"     name="search_trash"> diff --git a/indra/newview/skins/default/xui/en/menu_inventory_view_default.xml b/indra/newview/skins/default/xui/en/menu_inventory_view_default.xml new file mode 100644 index 0000000000..6e3cfd9cee --- /dev/null +++ b/indra/newview/skins/default/xui/en/menu_inventory_view_default.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8" standalone="yes" ?> +<toggleable_menu + bottom="806" + layout="topleft" + left="0" + mouse_opaque="false" + name="menu_view_default" + visible="false"> +    <menu_item_check +     label="Sort by Name" +     layout="topleft" +     name="sort_by_name"> +        <on_click +         function="Inventory.GearDefault.Custom.Action" +         parameter="sort_by_name" /> +        <on_check +         function="Inventory.GearDefault.Check" +         parameter="sort_by_name" /> +    </menu_item_check> +    <menu_item_check +     label="Sort by Most Recent" +     layout="topleft" +     name="sort_by_recent"> +        <on_click +         function="Inventory.GearDefault.Custom.Action" +         parameter="sort_by_recent" /> +        <on_check +         function="Inventory.GearDefault.Check" +         parameter="sort_by_recent" />          +    </menu_item_check> +    <menu_item_check +     label="Sort Folders Always by Name" +     layout="topleft" +     name="sort_folders_by_name"> +        <on_click +         function="Inventory.GearDefault.Custom.Action" +         parameter="sort_folders_by_name" /> +        <on_check +         function="Inventory.GearDefault.Check" +         parameter="sort_folders_by_name" /> +    </menu_item_check> +    <menu_item_check +     label="Sort System Folders to Top" +     layout="topleft" +     name="sort_system_folders_to_top"> +        <on_click +         function="Inventory.GearDefault.Custom.Action" +         parameter="sort_system_folders_to_top" /> +        <on_check +         function="Inventory.GearDefault.Check" +         parameter="sort_system_folders_to_top" /> +    </menu_item_check> +</toggleable_menu> diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml index 2ff58035ed..d437f98e91 100644 --- a/indra/newview/skins/default/xui/en/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/en/panel_main_inventory.xml @@ -7,7 +7,7 @@   min_height="300"   min_width="240"   name="main inventory panel" - width="330"> + width="355">    <panel.string     name="Itemcount">    </panel.string> @@ -41,11 +41,11 @@    <combo_box     height="23"     layout="topleft" -   left="10" +   left="3"     top="18"     name="search_type"     follows="top|left" -   width="88"> +   width="67">      <item       label="Name"       name="Name" @@ -69,7 +69,7 @@     height="23"     image_overlay="Inv_Toolbar_SearchVisibility"     layout="topleft" -   left_pad="3" +   left_pad="1"     name="options_visibility_btn"     width="31" />    <filter_editor @@ -78,15 +78,64 @@     height="23"     label="Enter search text"     layout="topleft" -   left_pad="3" +   left_pad="1"     max_length_chars="300"     highlight_text_field="true"     name="inventory search editor" -   width="177" /> +   width="99" /> +  <menu_button +   follows="top|right" +   tool_tip="Show additional options" +   height="23" +   image_hover_unselected="Toolbar_Middle_Over" +   image_overlay="OptionsMenu_Off" +   image_selected="Toolbar_Middle_Selected" +   image_unselected="Toolbar_Middle_Off" +   layout="topleft" +   left_pad="1" +   name="options_gear_btn" +   width="31" /> +  <menu_button +   follows="top|right" +   tool_tip="View/sort options" +   height="23" +   image_hover_unselected="Toolbar_Middle_Over" +   image_overlay="Conv_toolbar_sort" +   image_selected="Toolbar_Middle_Selected" +   image_unselected="Toolbar_Middle_Off" +   layout="topleft" +   left_pad="1" +   name="view_btn" +   width="31" /> +  <button +   follows="top|right" +   height="23" +   image_hover_unselected="Toolbar_Middle_Over" +   image_overlay="AddItem_Off" +   image_selected="Toolbar_Middle_Selected" +   image_unselected="Toolbar_Middle_Off" +   layout="topleft" +   left_pad="1" +   name="add_btn" +   tool_tip="Add new item" +   width="31" /> +  <button +   follows="top|right" +   tool_tip="Toggles between traditional and single-folder views" +   height="23" +   image_hover_unselected="Toolbar_Middle_Over" +   image_overlay="Command_Map_Icon" +   image_selected="Toolbar_Middle_Selected" +   image_unselected="Toolbar_Middle_Off" +   layout="topleft" +   left_pad="1" +   enabled="false" +   name="view_mode_btn" +   width="31" />    <tab_container       follows="all"       halign="center" -     height="339" +     height="372"       layout="topleft"       left="7"       name="inventory filter tabs" @@ -142,92 +191,4 @@        scroll.reserve_scroll_corner="false">    </inventory_panel>    </tab_container> -  <layout_stack -   animate="false" -   border_size="0" -   follows="left|right|bottom" -   height="25" -   layout="topleft" -   orientation="horizontal" -   top_pad="0" -   left="10" -   name="bottom_panel" -   width="307"> -      <layout_panel -       auto_resize="false" -       height="25" -       layout="topleft" -       name="options_gear_btn_panel" -       width="32"> -          <menu_button -           follows="bottom|left" -           tool_tip="Show additional options" -           height="25" -           image_hover_unselected="Toolbar_Left_Over" -           image_overlay="OptionsMenu_Off" -           image_selected="Toolbar_Left_Selected" -           image_unselected="Toolbar_Left_Off" -           layout="topleft" -           left="0" -           name="options_gear_btn" -           top="0" -           width="31" /> -      </layout_panel> -      <layout_panel -       auto_resize="false" -       height="25" -       layout="topleft" -       name="add_btn_panel" -       width="32"> -          <button -           follows="bottom|left" -           height="25" -           image_hover_unselected="Toolbar_Middle_Over" -           image_overlay="AddItem_Off" -           image_selected="Toolbar_Middle_Selected" -           image_unselected="Toolbar_Middle_Off" -           layout="topleft" -           left="0" -           name="add_btn" -           tool_tip="Add new item" -           top="0" -           width="31" /> -      </layout_panel> -      <layout_panel -       auto_resize="true" -       height="25" -       layout="topleft" -       name="dummy_panel" -       width="212"> -          <icon -           follows="bottom|left|right" -           height="25" -           image_name="Toolbar_Middle_Off" -           layout="topleft" -           left="0" -           top="0" -           name="dummy_icon" -           width="211" /> -      </layout_panel> -      <layout_panel -       auto_resize="false" -       height="25" -       layout="topleft" -       name="trash_btn_panel" -       width="31"> -          <dnd_button -           follows="bottom|left" -           height="25" -           image_hover_unselected="Toolbar_Right_Over" -           image_overlay="TrashItem_Off" -           image_selected="Toolbar_Right_Selected" -           image_unselected="Toolbar_Right_Off" -           left="0" -           layout="topleft" -           name="trash_btn" -           tool_tip="Remove selected item" -           top="0" -           width="31"/> -      </layout_panel> -  </layout_stack>  </panel> diff --git a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml index 9995523e61..bf50b1adfd 100644 --- a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml +++ b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml @@ -7,7 +7,7 @@  	  min_height="350"  	  min_width="240"  	  name="objects panel" -	  width="333"> +	  width="358">      <panel  		 follows="all"  		 layout="topleft" @@ -18,7 +18,7 @@  		 height="570"  		 visible="true"  		 default_tab_group="1" -		 width="330"> +		 width="355">        <layout_stack                follows="left|right|top|bottom"                layout="topleft" @@ -27,15 +27,15 @@  							tab_group="1"                orientation="vertical"                name="inventory_layout_stack" -              height="535" -              width="330"> +              height="565" +              width="355">               <layout_panel                   name="main_inventory_layout_panel"                   layout="topleft"                   auto_resize="true"                   user_resize="true"                   min_dim="150" -                 width="330" +                 width="355"                   follows="bottom|left|right"                   height="300">                   <panel @@ -48,10 +48,10 @@                        top="0"                        label=""                        height="300" -                      width="330" /> +                      width="355" />               </layout_panel>  			    <layout_panel -                 width="330" +                 width="355"                   layout="topleft"                   auto_resize="false"                   user_resize="true" @@ -133,117 +133,6 @@ Purchases from the marketplace will be delivered here.                   </panel>               </layout_panel>           </layout_stack> -			<panel follows="bottom|left|right" -					 height="30" -					 layout="topleft" -					 name="button_panel" -					 left="9" -					 top_pad="7" -					 width="308"> -				<layout_stack follows="bottom|left|right" -											height="23" -											layout="topleft" -											mouse_opaque="false" -											name="button_panel_ls" -											left="0" -											orientation="horizontal" -											top="0" -											width="308">	 -			    <layout_panel follows="bottom|left|right" -												height="23" -												layout="bottomleft" -												left="0"			 -												mouse_opaque="false" -												name="info_btn_lp" -												auto_resize="true" -												width="101"> -						<button enabled="true" -										follows="bottom|left|right" -										height="23" -										label="Profile" -										layout="topleft" -										left="1" -										name="info_btn" -										tool_tip="Show object profile" -										top="0" -										width="100" /> -			    </layout_panel> -			    <layout_panel -                     follows="bottom|left|right" -                     height="23" -                     layout="bottomleft" -                     left_pad="1"			 -                     mouse_opaque="false" -                     name="share_btn_lp" -                     auto_resize="true" -                     width="100"> -                    <button -                         enabled="true" -                         follows="bottom|left|right" -                         height="23" -                         label="Share" -                         layout="topleft" -                         left="1" -                         name="share_btn" -                         tool_tip="Share an inventory item" -                         top="0" -                         width="99" /> -			    </layout_panel> -			    <layout_panel -                     follows="bottom|left|right" -                     height="23" -                     layout="bottomleft" -                     left_pad="1"			 -                     mouse_opaque="false" -                     name="shop_btn_lp" -                     auto_resize="true" -                     width="100"> -                    <button -                         enabled="true" -                         follows="bottom|left|right" -                         height="23" -                         label="Shop" -                         layout="topleft" -                         left="1" -                         name="shop_btn" -                         tool_tip="Open Marketplace webpage" -                         top="0" -                         width="99" /> -                    <button -                         enabled="false" -                         follows="bottom|left|right" -                         height="23" -                         label="Wear" -                         layout="topleft" -                         left="1" -                         name="wear_btn" -                         tool_tip="Wear seleceted outfit" -                         top="0" -                         width="99" /> -                    <button -                         enabled="false" -                         follows="bottom|left|right" -                         height="23" -                         label="Play" -                         layout="topleft" -                         name="play_btn" -                         left="1" -                         top="0" -                         width="99" /> -                    <button -                         enabled="false" -                         follows="bottom|left|right" -                         height="23" -                         label="Teleport" -                         layout="topleft" -                         left="1" -                         name="teleport_btn" -                         tool_tip="Teleport to the selected area" -                         top="0" -                         width="99" /> -			    </layout_panel> -			</layout_stack> -		</panel>  	</panel>  	<panel  		 follows="all"  | 
