From 20e9dbf40b0c3e4ef9674adbaca255723a412959 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 22 Oct 2010 18:37:40 -0700 Subject: EXP-273 FIXED Add button/tray for avatar picker made "toggleable" radio group --- indra/newview/app_settings/settings.xml | 11 +++++ indra/newview/llviewermenu.cpp | 51 ++++++++++------------ indra/newview/llviewerwindow.cpp | 13 ++++-- .../skins/default/xui/en/widgets/button.xml | 2 +- .../skins/default/xui/en/widgets/check_box.xml | 8 ++++ 5 files changed, 52 insertions(+), 33 deletions(-) (limited to 'indra/newview') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index f23b57e62c..a06e1ff384 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -586,6 +586,17 @@ Value 2 + AvatarPickerURL + + Comment + Avatar picker contents + Persist + 1 + Type + String + Value + http://interest.secondlife.com/viewer/avatar + AvatarBakedTextureUploadTimeout Comment diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index ca9cc8e987..391f6b0b2a 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -844,36 +844,30 @@ class LLAdvancedCheckFeature : public view_listener_t } }; -void LLDestinationGuideToggle() +void LLDestinationAndAvatarShow(const LLSD& value) { - LLView* destination_guide = gViewerWindow->getRootView()->getChildView("destination_guide_container"); - LLView* avatar_picker = gViewerWindow->getRootView()->getChildView("avatar_picker_container"); + S32 panel_idx = value.isDefined() ? value.asInteger() : -1; + LLView* container = gViewerWindow->getRootView()->getChildView("avatar_picker_and_destination_guide_container"); + LLMediaCtrl* destinations = container->findChild("destination_guide_contents"); + LLMediaCtrl* avatar_picker = container->findChild("avatar_picker_contents"); - if ( destination_guide->getVisible() ) + switch(panel_idx) { - destination_guide->setVisible( FALSE ); - } - else - { - LLFirstUse::notUsingDestinationGuide(false); - destination_guide->setVisible( true ); - avatar_picker->setVisible( false ); - } -}; - -void LLAvatarPickerToggle() -{ - LLView* avatar_picker = gViewerWindow->getRootView()->getChildView("avatar_picker_container"); - LLView* destination_guide = gViewerWindow->getRootView()->getChildView("destination_guide_container"); - if ( avatar_picker->getVisible() ) - { - avatar_picker->setVisible( false ); - } - else - { - LLFirstUse::notUsingAvatarPicker(false); - avatar_picker->setVisible( true ); - destination_guide->setVisible( false ); + case 0: + container->setVisible(true); + destinations->setVisible(true); + avatar_picker->setVisible(false); + break; + case 1: + container->setVisible(true); + destinations->setVisible(false); + avatar_picker->setVisible(true); + break; + default: + container->setVisible(false); + destinations->setVisible(false); + avatar_picker->setVisible(false); + break; } }; @@ -8309,6 +8303,5 @@ void initialize_menus() view_listener_t::addMenu(new LLToggleUIHints(), "ToggleUIHints"); - commit.add("DestinationGuide.toggle", boost::bind(&LLDestinationGuideToggle)); - commit.add("AvatarPicker.toggle", boost::bind(&LLAvatarPickerToggle)); + commit.add("DestinationAndAvatar.show", boost::bind(&LLDestinationAndAvatarShow, _2)); } diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 62e8f4223e..774cf05220 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1699,12 +1699,19 @@ void LLViewerWindow::initWorldUI() buttons_panel->setFollowsAll(); buttons_panel_container->addChild(buttons_panel); - LLView* destination_guide = gViewerWindow->getRootView()->getChild("destination_guide_container"); - LLMediaCtrl* destinations = destination_guide->findChild("destination_guide_contents"); + LLView* avatar_picker_destination_guide_container = gViewerWindow->getRootView()->getChild("avatar_picker_and_destination_guide_container"); + LLMediaCtrl* destinations = avatar_picker_destination_guide_container->findChild("destination_guide_contents"); + LLMediaCtrl* avatar_picker = avatar_picker_destination_guide_container->findChild("avatar_picker_contents"); if (destinations) { - destinations->navigateTo(gSavedSettings.getString("DestinationGuideURL")); + destinations->navigateTo(gSavedSettings.getString("DestinationGuideURL"), "text/html"); } + + if (avatar_picker) + { + avatar_picker->navigateTo(gSavedSettings.getString("AvatarPickerURL"), "text/html"); + } + } // Destroy the UI diff --git a/indra/newview/skins/default/xui/en/widgets/button.xml b/indra/newview/skins/default/xui/en/widgets/button.xml index 2d0a1728d5..3585a013a4 100644 --- a/indra/newview/skins/default/xui/en/widgets/button.xml +++ b/indra/newview/skins/default/xui/en/widgets/button.xml @@ -19,7 +19,7 @@ image_color="ButtonImageColor" image_color_disabled="ButtonImageColor" flash_color="ButtonFlashBgColor" - font="SansSerifSmall" + font="SansSerifSmall" hover_glow_amount="0.15" halign="center" pad_bottom="3" diff --git a/indra/newview/skins/default/xui/en/widgets/check_box.xml b/indra/newview/skins/default/xui/en/widgets/check_box.xml index 7a60bee338..cca64fad2a 100644 --- a/indra/newview/skins/default/xui/en/widgets/check_box.xml +++ b/indra/newview/skins/default/xui/en/widgets/check_box.xml @@ -2,9 +2,17 @@