SL-13479 Avatar menu tweaks

meow-7.2.2
Mnikolenko Productengine 2020-07-08 20:29:44 +03:00 committed by Andrey Lihatskiy
parent 8f8d26a770
commit 94cd34cc17
7 changed files with 404 additions and 20 deletions

View File

@ -79,7 +79,7 @@ const U32 LEFT_PAD_PIXELS = 3;
const U32 LEFT_WIDTH_PIXELS = 15;
const U32 LEFT_PLAIN_PIXELS = LEFT_PAD_PIXELS + LEFT_WIDTH_PIXELS;
const U32 RIGHT_PAD_PIXELS = 2;
const U32 RIGHT_PAD_PIXELS = 7;
const U32 RIGHT_WIDTH_PIXELS = 15;
const U32 RIGHT_PLAIN_PIXELS = RIGHT_PAD_PIXELS + RIGHT_WIDTH_PIXELS;
@ -95,7 +95,7 @@ const std::string SEPARATOR_NAME("separator");
const std::string VERTICAL_SEPARATOR_LABEL( "|" );
const std::string LLMenuGL::BOOLEAN_TRUE_PREFIX( "\xE2\x9C\x94" ); // U+2714 HEAVY CHECK MARK
const std::string LLMenuGL::BRANCH_SUFFIX( "\xE2\x96\xB6" ); // U+25B6 BLACK RIGHT-POINTING TRIANGLE
const std::string LLMenuGL::BRANCH_SUFFIX( "\xe2\x96\xb8" ); // U+25B6 BLACK RIGHT-POINTING TRIANGLE
const std::string LLMenuGL::ARROW_UP ("^^^^^^^");
const std::string LLMenuGL::ARROW_DOWN("vvvvvvv");

View File

@ -186,11 +186,15 @@ const std::string SAVE_INTO_TASK_INVENTORY("Save Object Back to Object Contents"
LLMenuGL* gAttachSubMenu = NULL;
LLMenuGL* gDetachSubMenu = NULL;
LLMenuGL* gTakeOffClothes = NULL;
LLMenuGL* gDetachAvatarMenu = NULL;
LLMenuGL* gDetachHUDAvatarMenu = NULL;
LLContextMenu* gAttachScreenPieMenu = NULL;
LLContextMenu* gAttachPieMenu = NULL;
LLContextMenu* gAttachBodyPartPieMenus[9];
LLContextMenu* gDetachPieMenu = NULL;
LLContextMenu* gDetachScreenPieMenu = NULL;
LLContextMenu* gDetachAttSelfMenu = NULL;
LLContextMenu* gDetachHUDAttSelfMenu = NULL;
LLContextMenu* gDetachBodyPartPieMenus[9];
//
@ -445,6 +449,9 @@ void init_menus()
gMenuAttachmentOther = LLUICtrlFactory::createFromFile<LLContextMenu>(
"menu_attachment_other.xml", gMenuHolder, registry);
gDetachHUDAttSelfMenu = gMenuHolder->getChild<LLContextMenu>("Detach Self HUD", true);
gDetachAttSelfMenu = gMenuHolder->getChild<LLContextMenu>("Detach Self", true);
gMenuLand = LLUICtrlFactory::createFromFile<LLContextMenu>(
"menu_land.xml", gMenuHolder, registry);
@ -501,6 +508,9 @@ void init_menus()
gAttachSubMenu = gMenuBarView->findChildMenuByName("Attach Object", TRUE);
gDetachSubMenu = gMenuBarView->findChildMenuByName("Detach Object", TRUE);
gDetachAvatarMenu = gMenuHolder->getChild<LLMenuGL>("Avatar Detach", true);
gDetachHUDAvatarMenu = gMenuHolder->getChild<LLMenuGL>("Avatar Detach HUD", true);
// Don't display the Memory console menu if the feature is turned off
LLMenuItemCheckGL *memoryMenu = gMenuBarView->getChild<LLMenuItemCheckGL>("Memory", TRUE);
if (memoryMenu)

View File

@ -188,10 +188,14 @@ extern LLContextMenu *gMenuMuteParticle;
extern LLMenuGL* gAttachSubMenu;
extern LLMenuGL* gDetachSubMenu;
extern LLMenuGL* gTakeOffClothes;
extern LLMenuGL* gDetachAvatarMenu;
extern LLMenuGL* gDetachHUDAvatarMenu;
extern LLContextMenu* gAttachScreenPieMenu;
extern LLContextMenu* gDetachScreenPieMenu;
extern LLContextMenu* gDetachHUDAttSelfMenu;
extern LLContextMenu* gAttachPieMenu;
extern LLContextMenu* gDetachPieMenu;
extern LLContextMenu* gDetachAttSelfMenu;
extern LLContextMenu* gAttachBodyPartPieMenus[9];
extern LLContextMenu* gDetachBodyPartPieMenus[9];

View File

@ -465,6 +465,8 @@ BOOL LLVOAvatarSelf::buildMenus()
if (gDetachBodyPartPieMenus[i])
{
gDetachPieMenu->appendContextSubMenu( gDetachBodyPartPieMenus[i] );
gDetachAttSelfMenu->appendContextSubMenu(gDetachBodyPartPieMenus[i]);
gDetachAvatarMenu->appendContextSubMenu(gDetachBodyPartPieMenus[i]);
}
else
{
@ -493,12 +495,14 @@ BOOL LLVOAvatarSelf::buildMenus()
LLMenuItemCallGL* item = LLUICtrlFactory::create<LLMenuItemCallGL>(item_params);
gDetachPieMenu->addChild(item);
gDetachAttSelfMenu->addChild(LLUICtrlFactory::create<LLMenuItemCallGL>(item_params));
gDetachAvatarMenu->addChild(LLUICtrlFactory::create<LLMenuItemCallGL>(item_params));
break;
}
}
}
}
// add screen attachments
for (attachment_map_t::iterator iter = mAttachmentPoints.begin();
@ -532,6 +536,8 @@ BOOL LLVOAvatarSelf::buildMenus()
item_params.on_enable.parameter = iter->first;
item = LLUICtrlFactory::create<LLMenuItemCallGL>(item_params);
gDetachScreenPieMenu->addChild(item);
gDetachHUDAttSelfMenu->addChild(LLUICtrlFactory::create<LLMenuItemCallGL>(item_params));
gDetachHUDAvatarMenu->addChild(LLUICtrlFactory::create<LLMenuItemCallGL>(item_params));
}
}

View File

@ -2,17 +2,6 @@
<context_menu
layout="topleft"
name="Attachment Pie">
<menu_item_call
enabled="false"
label="Touch item"
layout="topleft"
name="Attachment Object Touch">
<menu_item_call.on_click
function="Object.Touch" />
<menu_item_call.on_enable
function="Object.EnableTouch"
name="EnableTouch"/>
</menu_item_call>
<menu_item_call
enabled="false"
label="Edit item"
@ -33,8 +22,19 @@
<menu_item_call.on_enable
function="Attachment.EnableDetach" />
</menu_item_call>
<menu_item_separator
layout="topleft" />
<menu_item_call
enabled="false"
label="Touch item"
layout="topleft"
name="Attachment Object Touch">
<menu_item_call.on_click
function="Object.Touch" />
<menu_item_call.on_enable
function="Object.EnableTouch"
name="EnableTouch"/>
</menu_item_call>
<menu_item_separator
layout="topleft" />
<menu_item_call
label="Outfits..."
@ -44,7 +44,7 @@
<menu_item_call.on_enable
function="Edit.EnableCustomizeAvatar" />
</menu_item_call>
<menu_item_call label="Edit current outfit..."
<menu_item_call label="Current outfit..."
layout="topleft"
name="Edit Outfit">
<menu_item_call.on_click
@ -68,6 +68,188 @@ name="Edit Outfit">
<menu_item_call.on_enable
function="Edit.EnableHoverHeight" />
</menu_item_call>
<context_menu
label="Take Off"
layout="topleft"
name="Take Off &gt;">
<context_menu
label="Clothes"
layout="topleft"
name="Clothes &gt;">
<menu_item_call
enabled="false"
label="Shirt"
layout="topleft"
name="Shirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="shirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="shirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Pants"
layout="topleft"
name="Pants">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="pants" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="pants" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Skirt"
layout="topleft"
name="Skirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="skirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="skirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Shoes"
layout="topleft"
name="Shoes">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="shoes" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="shoes" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Socks"
layout="topleft"
name="Socks">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="socks" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="socks" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Jacket"
layout="topleft"
name="Jacket">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="jacket" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="jacket" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Gloves"
layout="topleft"
name="Gloves">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="gloves" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="gloves" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Undershirt"
layout="topleft"
name="Self Undershirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="undershirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="undershirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Underpants"
layout="topleft"
name="Self Underpants">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="underpants" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="underpants" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Tattoo"
layout="topleft"
name="Self Tattoo">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="tattoo" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="tattoo" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Physics"
layout="topleft"
name="Self Physics">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="physics" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="physics" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Alpha"
layout="topleft"
name="Self Alpha">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="alpha" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="alpha" />
</menu_item_call>
<menu_item_separator
layout="topleft" />
<menu_item_call
label="All Clothes"
layout="topleft"
name="All Clothes">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="all" />
</menu_item_call>
</context_menu>
<context_menu
label="HUD"
layout="topleft"
name="Detach Self HUD" />
<context_menu
label="Detach"
layout="topleft"
name="Detach Self" />
<menu_item_call
label="Detach All"
layout="topleft"
name="Detach All">
<menu_item_call.on_click
function="Self.RemoveAllAttachments"
parameter="" />
<menu_item_call.on_enable
function="Self.EnableRemoveAllAttachments" />
</menu_item_call>
</context_menu>
<menu_item_separator/>
<menu_item_call
label="Sit / stand"

View File

@ -11,7 +11,7 @@
<menu_item_call.on_enable
function="Edit.EnableCustomizeAvatar" />
</menu_item_call>
<menu_item_call label="Edit current outfit..."
<menu_item_call label="Current outfit..."
layout="topleft"
name="Edit Outfit">
<menu_item_call.on_click

View File

@ -207,6 +207,188 @@
<menu_item_call.on_enable
function="Edit.EnableHoverHeight" />
</menu_item_call>
<menu
label="Take Off"
layout="topleft"
name="Take Off &gt;">
<menu
label="Clothes"
layout="topleft"
name="Clothes &gt;">
<menu_item_call
enabled="false"
label="Shirt"
layout="topleft"
name="Shirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="shirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="shirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Pants"
layout="topleft"
name="Pants">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="pants" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="pants" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Skirt"
layout="topleft"
name="Skirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="skirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="skirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Shoes"
layout="topleft"
name="Shoes">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="shoes" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="shoes" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Socks"
layout="topleft"
name="Socks">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="socks" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="socks" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Jacket"
layout="topleft"
name="Jacket">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="jacket" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="jacket" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Gloves"
layout="topleft"
name="Gloves">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="gloves" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="gloves" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Undershirt"
layout="topleft"
name="Self Undershirt">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="undershirt" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="undershirt" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Underpants"
layout="topleft"
name="Self Underpants">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="underpants" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="underpants" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Tattoo"
layout="topleft"
name="Self Tattoo">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="tattoo" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="tattoo" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Physics"
layout="topleft"
name="Self Physics">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="physics" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="physics" />
</menu_item_call>
<menu_item_call
enabled="false"
label="Alpha"
layout="topleft"
name="Self Alpha">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="alpha" />
<menu_item_call.on_enable
function="Edit.EnableTakeOff"
parameter="alpha" />
</menu_item_call>
<menu_item_separator
layout="topleft" />
<menu_item_call
label="All Clothes"
layout="topleft"
name="All Clothes">
<menu_item_call.on_click
function="Edit.TakeOff"
parameter="all" />
</menu_item_call>
</menu>
<menu
label="HUD"
layout="topleft"
name="Avatar Detach HUD" />
<menu
label="Detach"
layout="topleft"
name="Avatar Detach" />
<menu_item_call
label="Detach All"
layout="topleft"
name="Detach All">
<menu_item_call.on_click
function="Self.RemoveAllAttachments"
parameter="" />
<menu_item_call.on_enable
function="Self.EnableRemoveAllAttachments" />
</menu_item_call>
</menu>
<menu_item_separator/>
<menu_item_call
@ -229,7 +411,7 @@
function="Agent.enableFlyLand" />
</menu_item_call>
<menu_item_call
label="Stop animation"
label="Stop animations"
name="Stop Animating My Avatar">
<menu_item_call.on_click
function="Tools.StopAllAnimations" />
@ -293,7 +475,7 @@
name="Help with avatars">
<menu_item_call.on_click
function="Advanced.ShowURL"
parameter="https://community.secondlife.com/search/?q=avatar"/>
parameter="https://community.secondlife.com/search/?type=cms_records3&amp;tags=avatar&amp;nodes=30&amp;search_and_or=or"/>
</menu_item_call>
</menu>
<menu