diff options
| author | Eugene Mutavchi <emutavchi@productengine.com> | 2010-02-23 18:48:30 +0200 | 
|---|---|---|
| committer | Eugene Mutavchi <emutavchi@productengine.com> | 2010-02-23 18:48:30 +0200 | 
| commit | bbb6a7efb01623eab72c4d06cc2965f31cceeeac (patch) | |
| tree | 44c05a150f762c52dba435c8e276c280cc6e7c2f | |
| parent | 1bd720eefbd37fc123bf8d24f1134c0cb6d00b82 (diff) | |
Implemented major sub-task EXT-5556 (hard-coded: menu Build > Object > Take. The word "Take" is hard-coded)
--HG--
branch : product-engine
| -rw-r--r-- | indra/newview/llviewermenu.cpp | 38 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_object.xml | 28 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/menu_viewer.xml | 30 | 
3 files changed, 52 insertions, 44 deletions
| diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 02bde51fb6..15c72fdef1 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -4422,35 +4422,22 @@ bool visible_take_object()  	return !is_selection_buy_not_take() && enable_take();  } +bool tools_visible_buy_object() +{ +	return is_selection_buy_not_take(); +} + +bool tools_visible_take_object() +{ +	return !is_selection_buy_not_take(); +} +  class LLToolsEnableBuyOrTake : public view_listener_t  {  	bool handleEvent(const LLSD& userdata)  	{  		bool is_buy = is_selection_buy_not_take();  		bool new_value = is_buy ? enable_buy_object() : enable_take(); - -		// Update label -		std::string label; -		std::string buy_text; -		std::string take_text; -		std::string param = userdata.asString(); -		std::string::size_type offset = param.find(","); -		if (offset != param.npos) -		{ -			buy_text = param.substr(0, offset); -			take_text = param.substr(offset+1); -		} -		if (is_buy) -		{ -			label = buy_text; -		} -		else -		{ -			label = take_text; -		} -		gMenuHolder->childSetText("Pie Object Take", label); -		gMenuHolder->childSetText("Menu Object Take", label); -  		return new_value;  	}  }; @@ -7802,12 +7789,11 @@ void initialize_menus()  	view_listener_t::addMenu(new LLToolsEnableUnlink(), "Tools.EnableUnlink");  	view_listener_t::addMenu(new LLToolsEnableBuyOrTake(), "Tools.EnableBuyOrTake");  	enable.add("Tools.EnableTakeCopy", boost::bind(&enable_object_take_copy)); +	enable.add("Tools.VisibleBuyObject", boost::bind(&tools_visible_buy_object)); +	enable.add("Tools.VisibleTakeObject", boost::bind(&tools_visible_take_object));  	view_listener_t::addMenu(new LLToolsEnableSaveToInventory(), "Tools.EnableSaveToInventory");  	view_listener_t::addMenu(new LLToolsEnableSaveToObjectInventory(), "Tools.EnableSaveToObjectInventory"); -	/*view_listener_t::addMenu(new LLToolsVisibleBuyObject(), "Tools.VisibleBuyObject"); -	view_listener_t::addMenu(new LLToolsVisibleTakeObject(), "Tools.VisibleTakeObject");*/ -  	// Help menu  	// most items use the ShowFloater method diff --git a/indra/newview/skins/default/xui/en/menu_object.xml b/indra/newview/skins/default/xui/en/menu_object.xml index d66818e91a..9436b2cd73 100644 --- a/indra/newview/skins/default/xui/en/menu_object.xml +++ b/indra/newview/skins/default/xui/en/menu_object.xml @@ -124,16 +124,28 @@      </menu_item_call>      </context_menu>     <menu_item_separator layout="topleft" /> -       <menu_item_call -     enabled="false" +   <menu_item_call +    label="Buy" +    layout="topleft" +    name="Pie Object Bye"> +      <menu_item_call.on_click +       function="Tools.BuyOrTake"/> +      <menu_item_call.on_visible +       function="Tools.VisibleBuyObject"/> +      <menu_item_call.on_enable +       function="Tools.EnableBuyOrTake"/> +   </menu_item_call> +   <menu_item_call       label="Take" +     layout="topleft"       name="Pie Object Take"> -        <menu_item_call.on_click -         function="Tools.BuyOrTake" /> -        <menu_item_call.on_enable -         function="Tools.EnableBuyOrTake" -         parameter="Buy,Take" /> -    </menu_item_call> +      <menu_item_call.on_click +       function="Tools.BuyOrTake"/> +      <menu_item_call.on_visible +       function="Tools.VisibleTakeObject"/> +      <menu_item_call.on_enable +       function="Tools.EnableBuyOrTake"/> +   </menu_item_call>     <menu_item_call     enabled="false"     label="Take Copy" diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml index 4c4867b862..158e764eae 100644 --- a/indra/newview/skins/default/xui/en/menu_viewer.xml +++ b/indra/newview/skins/default/xui/en/menu_viewer.xml @@ -719,16 +719,26 @@           name="Object"           tear_off="true">            <menu_item_call -			 label="Buy" -			 layout="topleft" -			 name="Menu Object Take" -			 visible="true"> -			<menu_item_call.on_click -               function="Tools.BuyOrTake" /> -			<menu_item_call.on_enable -               function="Tools.EnableBuyOrTake" -               name="EnableBuyOrTake" -               parameter="Buy,Take" /> +             label="Buy" +             layout="topleft" +             name="Menu Object Buy"> +            <menu_item_call.on_click +               function="Tools.BuyOrTake"/> +            <menu_item_call.on_visible +               function="Tools.VisibleBuyObject"/> +            <menu_item_call.on_enable +               function="Tools.EnableBuyOrTake"/> +          </menu_item_call> +          <menu_item_call +             label="Take" +             layout="topleft" +             name="Menu Object Take"> +            <menu_item_call.on_click +               function="Tools.BuyOrTake"/> +            <menu_item_call.on_visible +               function="Tools.VisibleTakeObject"/> +            <menu_item_call.on_enable +               function="Tools.EnableBuyOrTake"/>            </menu_item_call>            <menu_item_call  			 label="Take Copy" | 
