From 61316403aa7cd430d4bffac8ae517e5563598898 Mon Sep 17 00:00:00 2001 From: Andrew Polunin Date: Fri, 14 May 2010 13:03:44 +0300 Subject: EXT-7221 FIXED Now the 'Get More >>' link exists exactly before the 'View All >>' link in the Gestures list - Added new setting GesturesMarketplaceURL in settings.xml to represent URL which points to the Gesture's Marketplace. - Added mGetMoreItemIndex instance variable (similar to mViewAllItemIndex which was already there). - Added mGetMoreItemIndex handling in the LLGestureComboList::onCommitGesture() (again, similar to mViewAllItemIndex). - Added new string in strings.xml with name GetMoreGestures to represent Gesture's list item. Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/386/ --HG-- branch : product-engine --- indra/newview/app_settings/settings.xml | 11 +++++++++++ indra/newview/llnearbychatbar.cpp | 16 +++++++++++++--- indra/newview/llnearbychatbar.h | 1 + indra/newview/skins/default/xui/en/strings.xml | 1 + 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 4e4c0274e7..f71662a7c8 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -3578,6 +3578,17 @@ Value 1024 + GesturesMarketplaceURL + + Comment + URL to the Gestures Marketplace + Persist + 0 + Type + String + Value + https://www.xstreetsl.com/modules.php?name=Marketplace&CategoryID=233 + GridCrossSections Comment diff --git a/indra/newview/llnearbychatbar.cpp b/indra/newview/llnearbychatbar.cpp index 1507b7d324..bd504906d5 100644 --- a/indra/newview/llnearbychatbar.cpp +++ b/indra/newview/llnearbychatbar.cpp @@ -79,6 +79,7 @@ LLGestureComboList::LLGestureComboList(const LLGestureComboList::Params& p) : LLUICtrl(p) , mLabel(p.label) , mViewAllItemIndex(0) + , mGetMoreItemIndex(0) { LLButton::Params button_params = p.combo_button; button_params.follows.flags(FOLLOWS_LEFT|FOLLOWS_BOTTOM|FOLLOWS_RIGHT); @@ -260,9 +261,12 @@ void LLGestureComboList::refreshGestures() sortByName(); - // store index followed by the last added Gesture and add View All item at bottom - mViewAllItemIndex = idx; - + // store indices for Get More and View All items (idx is the index followed by the last added Gesture) + mGetMoreItemIndex = idx; + mViewAllItemIndex = idx + 1; + + // add Get More and View All items at the bottom + mList->addSimpleElement(LLTrans::getString("GetMoreGestures"), ADD_BOTTOM, LLSD(mGetMoreItemIndex)); mList->addSimpleElement(LLTrans::getString("ViewAllGestures"), ADD_BOTTOM, LLSD(mViewAllItemIndex)); // Insert label after sorting, at top, with separator below it @@ -318,6 +322,12 @@ void LLGestureComboList::onCommitGesture() return; } + if (mGetMoreItemIndex == index) + { + LLWeb::loadURLExternal(gSavedSettings.getString("GesturesMarketplaceURL")); + return; + } + LLMultiGesture* gesture = mGestures.at(index); if(gesture) { diff --git a/indra/newview/llnearbychatbar.h b/indra/newview/llnearbychatbar.h index dd467d7978..5af3152662 100644 --- a/indra/newview/llnearbychatbar.h +++ b/indra/newview/llnearbychatbar.h @@ -62,6 +62,7 @@ protected: std::vector mGestures; std::string mLabel; LLSD::Integer mViewAllItemIndex; + LLSD::Integer mGetMoreItemIndex; public: diff --git a/indra/newview/skins/default/xui/en/strings.xml b/indra/newview/skins/default/xui/en/strings.xml index 6d80b17ac6..e028ef2077 100644 --- a/indra/newview/skins/default/xui/en/strings.xml +++ b/indra/newview/skins/default/xui/en/strings.xml @@ -1894,6 +1894,7 @@ Clears (deletes) the media and all params from the given face. + -- cgit v1.2.3