diff options
-rw-r--r-- | indra/llui/llcommandmanager.cpp | 9 | ||||
-rw-r--r-- | indra/llui/llcommandmanager.h | 23 | ||||
-rw-r--r-- | indra/llui/llfloater.cpp | 4 | ||||
-rw-r--r-- | indra/llui/lltoolbar.cpp | 2 | ||||
-rw-r--r-- | indra/llxuixml/llinitparam.h | 4 | ||||
-rw-r--r-- | indra/newview/lltoolbarview.cpp | 29 |
6 files changed, 34 insertions, 37 deletions
diff --git a/indra/llui/llcommandmanager.cpp b/indra/llui/llcommandmanager.cpp index 128ba609cb..0e2f3f1961 100644 --- a/indra/llui/llcommandmanager.cpp +++ b/indra/llui/llcommandmanager.cpp @@ -41,7 +41,7 @@ // LLCommandId class // -const LLCommandId LLCommandId::null = LLCommandId(); +const LLCommandId LLCommandId::null = LLCommandId("null command"); // // LLCommand class @@ -67,10 +67,11 @@ LLCommand::Params::Params() } LLCommand::LLCommand(const LLCommand::Params& p) - : mAvailableInToybox(p.available_in_toybox) + : mIdentifier(p.name) + , mAvailableInToybox(p.available_in_toybox) , mIcon(p.icon) - , mIdentifier(p.name) , mLabelRef(p.label_ref) + , mName(p.name) , mTooltipRef(p.tooltip_ref) , mExecuteFunction(p.execute_function) , mExecuteParameters(p.execute_parameters) @@ -134,7 +135,7 @@ void LLCommandManager::addCommand(LLCommand * command) mCommandIndices[command_id.uuid()] = mCommands.size(); mCommands.push_back(command); - lldebugs << "Successfully added command: " << command->id().name() << llendl; + lldebugs << "Successfully added command: " << command->name() << llendl; } //static diff --git a/indra/llui/llcommandmanager.h b/indra/llui/llcommandmanager.h index 9b93ab735a..a7276a48aa 100644 --- a/indra/llui/llcommandmanager.h +++ b/indra/llui/llcommandmanager.h @@ -50,31 +50,20 @@ public: {} }; - LLCommandId() - : mName("null command") - { - mUUID = LLUUID::generateNewID(mName); - } - LLCommandId(const std::string& name) - : mName(name) { mUUID = LLUUID::generateNewID(name); } LLCommandId(const Params& p) - : mName(p.name) { mUUID = LLUUID::generateNewID(p.name); } LLCommandId(const LLUUID& uuid) - : mName(""), - mUUID(uuid) - { - } + : mUUID(uuid) + {} - const std::string& name() const { return mName; } const LLUUID& uuid() const { return mUUID; } bool operator!=(const LLCommandId& command) const @@ -87,15 +76,9 @@ public: return (mUUID == command.mUUID); } - bool operator<(const LLCommandId& command) const - { - return (mName < command.mName); - } - static const LLCommandId null; private: - std::string mName; LLUUID mUUID; }; @@ -137,6 +120,7 @@ public: const std::string& icon() const { return mIcon; } const LLCommandId& id() const { return mIdentifier; } const std::string& labelRef() const { return mLabelRef; } + const std::string& name() const { return mName; } const std::string& tooltipRef() const { return mTooltipRef; } const std::string& executeFunctionName() const { return mExecuteFunction; } @@ -160,6 +144,7 @@ private: bool mAvailableInToybox; std::string mIcon; std::string mLabelRef; + std::string mName; std::string mTooltipRef; std::string mExecuteFunction; diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index bd537bfb19..ddc90b0378 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -875,7 +875,8 @@ bool LLFloater::applyRectControl() { bool saved_rect = false; - if (LLFloaterReg::getLastFloaterInGroup(mInstanceName)) + LLFloater* last_in_group = LLFloaterReg::getLastFloaterInGroup(mInstanceName); + if (last_in_group && last_in_group != this) { // other floaters in our group, position ourselves relative to them and don't save the rect mRectControl.clear(); @@ -1589,6 +1590,7 @@ void LLFloater::setDocked(bool docked, bool pop_on_undock) if (mDocked) { setMinimized(FALSE); + mOpenPositioning = LLFloaterEnums::OPEN_POSITIONING_NONE; } updateTitleButtons(); diff --git a/indra/llui/lltoolbar.cpp b/indra/llui/lltoolbar.cpp index bceda9bf54..515605200e 100644 --- a/indra/llui/lltoolbar.cpp +++ b/indra/llui/lltoolbar.cpp @@ -821,7 +821,7 @@ LLToolBarButton* LLToolBar::createButton(const LLCommandId& id) if (!commandp) return NULL; LLToolBarButton::Params button_p; - button_p.name = commandp->id().name(); // Make sure to retrieve the name from the command itself, not the passed in id + button_p.name = commandp->name(); button_p.label = LLTrans::getString(commandp->labelRef()); button_p.tool_tip = LLTrans::getString(commandp->tooltipRef()); button_p.image_overlay = LLUI::getUIImage(commandp->icon()); diff --git a/indra/llxuixml/llinitparam.h b/indra/llxuixml/llinitparam.h index 1e295ada2d..183472450d 100644 --- a/indra/llxuixml/llinitparam.h +++ b/indra/llxuixml/llinitparam.h @@ -982,7 +982,7 @@ namespace LLInitParam if (parser.readValue(name)) { // try to parse a per type named value - if (name_value_lookup_t::getValueFromName(name, typed_param.mValues)) + if (name_value_lookup_t::getValueFromName(name, value)) { typed_param.add(value); typed_param.mValues.back().setValueName(name); @@ -1013,7 +1013,7 @@ namespace LLInitParam bool value_written = parser.writeValue(*it, name_stack); if (!value_written) { - std::string calculated_key = typed_param.calcValueName(typed_param.getValue()); + std::string calculated_key = it->calcValueName(key); if (!parser.writeValue(calculated_key, name_stack)) { break; diff --git a/indra/newview/lltoolbarview.cpp b/indra/newview/lltoolbarview.cpp index 75bec15082..67ac081581 100644 --- a/indra/newview/lltoolbarview.cpp +++ b/indra/newview/lltoolbarview.cpp @@ -128,7 +128,7 @@ bool LLToolBarView::addCommand(const LLCommandId& command, LLToolBar* toolbar) } else { - llwarns << "Toolbars creation : the command " << command.name() << " cannot be found in the command manager" << llendl; + llwarns << "Toolbars creation : the command with id " << command.uuid().asString() << " cannot be found in the command manager" << llendl; return false; } return true; @@ -193,9 +193,12 @@ bool LLToolBarView::loadToolbars(bool force_default) LLToolBarEnums::ButtonType button_type = toolbar_set.left_toolbar.button_display_mode; mToolbarLeft->setButtonType(button_type); } - BOOST_FOREACH(LLCommandId::Params& command, toolbar_set.left_toolbar.commands) + BOOST_FOREACH(const LLCommandId::Params& command_name_param, toolbar_set.left_toolbar.commands) { - addCommand(LLCommandId(command),mToolbarLeft); + if (addCommand(LLCommandId(command_name_param), mToolbarLeft) == false) + { + llwarns << "Error adding command '" << command_name_param.name() << "' to left toolbar." << llendl; + } } } if (toolbar_set.right_toolbar.isProvided() && mToolbarRight) @@ -205,9 +208,12 @@ bool LLToolBarView::loadToolbars(bool force_default) LLToolBarEnums::ButtonType button_type = toolbar_set.right_toolbar.button_display_mode; mToolbarRight->setButtonType(button_type); } - BOOST_FOREACH(LLCommandId::Params& command, toolbar_set.right_toolbar.commands) + BOOST_FOREACH(const LLCommandId::Params& command_name_param, toolbar_set.right_toolbar.commands) { - addCommand(LLCommandId(command),mToolbarRight); + if (addCommand(LLCommandId(command_name_param), mToolbarRight) == false) + { + llwarns << "Error adding command '" << command_name_param.name() << "' to right toolbar." << llendl; + } } } if (toolbar_set.bottom_toolbar.isProvided() && mToolbarBottom) @@ -217,9 +223,12 @@ bool LLToolBarView::loadToolbars(bool force_default) LLToolBarEnums::ButtonType button_type = toolbar_set.bottom_toolbar.button_display_mode; mToolbarBottom->setButtonType(button_type); } - BOOST_FOREACH(LLCommandId::Params& command, toolbar_set.bottom_toolbar.commands) + BOOST_FOREACH(const LLCommandId::Params& command_name_param, toolbar_set.bottom_toolbar.commands) { - addCommand(LLCommandId(command),mToolbarBottom); + if (addCommand(LLCommandId(command_name_param), mToolbarBottom) == false) + { + llwarns << "Error adding command '" << command_name_param.name() << "' to bottom toolbar." << llendl; + } } } return true; @@ -289,9 +298,9 @@ void LLToolBarView::addToToolset(command_id_list_t& command_list, Toolbar& toolb LLCommand* command = mgr.getCommand(*it); if (command) { - LLCommandId::Params commandParams; - commandParams.name = command->id().name(); - toolbar.commands.add(commandParams); + LLCommandId::Params command_name_param; + command_name_param.name = command->name(); + toolbar.commands.add(command_name_param); } } } |