diff options
author | Eric M. Tulla (BigPapi) <tulla@lindenlab.com> | 2009-12-11 13:37:00 -0500 |
---|---|---|
committer | Eric M. Tulla (BigPapi) <tulla@lindenlab.com> | 2009-12-11 13:37:00 -0500 |
commit | f042f35381f961e5648c239ae9dbf4b40941e96e (patch) | |
tree | b713281f53c9c0e291b996731684b41e3b3bc1c5 /indra/newview/llviewerhelp.cpp | |
parent | ea3b99614327404f15f8c0cf98ae6d61bdd4572b (diff) | |
parent | c74d5c483cbd75c5e2a0b17c8980755a9932c53a (diff) |
Merge of viewer2 into avp branch
--HG--
branch : avatar-pipeline
Diffstat (limited to 'indra/newview/llviewerhelp.cpp')
-rw-r--r-- | indra/newview/llviewerhelp.cpp | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/indra/newview/llviewerhelp.cpp b/indra/newview/llviewerhelp.cpp index 297c0cc111..b8f91697e5 100644 --- a/indra/newview/llviewerhelp.cpp +++ b/indra/newview/llviewerhelp.cpp @@ -49,24 +49,38 @@ void LLViewerHelp::showTopic(const std::string &topic) { - showHelp(); - // allow overriding the help server with a local help file if( gSavedSettings.getBOOL("HelpUseLocal") ) { + showHelp(); LLFloaterHelpBrowser* helpbrowser = dynamic_cast<LLFloaterHelpBrowser*>(LLFloaterReg::getInstance("help_browser")); helpbrowser->navigateToLocalPage( "help-offline" , "index.html" ); return; } - // use a special login topic before the user logs in + // if the help topic is empty, use the default topic std::string help_topic = topic; - if (! LLLoginInstance::getInstance()->authSuccess()) + if (help_topic.empty()) { - help_topic = preLoginTopic(); + help_topic = defaultTopic(); + } + + // f1 help topic means: if user not logged in yet, show the + // pre-login topic, otherwise show help for the focused item + if (help_topic == f1HelpTopic()) + { + if (! LLLoginInstance::getInstance()->authSuccess()) + { + help_topic = preLoginTopic(); + } + else + { + help_topic = getTopicFromFocus(); + } } // work out the URL for this topic and display it + showHelp(); const LLOSInfo& osinfo = LLAppViewer::instance()->getOSInfo(); std::string helpURL = LLViewerHelpUtil::buildHelpURL( help_topic, gSavedSettings, osinfo ); setRawURL( helpURL ); @@ -84,6 +98,12 @@ std::string LLViewerHelp::preLoginTopic() return "pre_login_help"; } +std::string LLViewerHelp::f1HelpTopic() +{ + // *hack: to be done properly + return "f1_help"; +} + ////////////////////////////// // our own interfaces |