diff options
author | Vadim ProductEngine <vsavchuk@productengine.com> | 2011-03-07 19:18:31 +0200 |
---|---|---|
committer | Vadim ProductEngine <vsavchuk@productengine.com> | 2011-03-07 19:18:31 +0200 |
commit | eef9b265b951337d0633d18186dad2b734b30d5a (patch) | |
tree | 3be24ab488a4d808625c7bab1c91f95c77b7805c /indra/newview/llpreviewscript.cpp | |
parent | 5cb2d63979f0ff72cb9351dc9aa070b1990a1f9c (diff) |
STORM-1018 FIXED Improved error messaging for the External Editor feature.
Let the user know what's wrong with external editor.
Added meaningful messages for the following errors:
* Editor not specified.
* Error parsing command line.
* Specified binary not found.
* Editor failed to run.
All the messages are translatable.
Diffstat (limited to 'indra/newview/llpreviewscript.cpp')
-rw-r--r-- | indra/newview/llpreviewscript.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/indra/newview/llpreviewscript.cpp b/indra/newview/llpreviewscript.cpp index 22ff362b5a..b19bf5d234 100644 --- a/indra/newview/llpreviewscript.cpp +++ b/indra/newview/llpreviewscript.cpp @@ -956,16 +956,31 @@ void LLScriptEdCore::openInExternalEditor() // Open it in external editor. { LLExternalEditor ed; + LLExternalEditor::EErrorCode status; + std::string msg; - if (!ed.setCommand("LL_SCRIPT_EDITOR")) + status = ed.setCommand("LL_SCRIPT_EDITOR"); + if (status != LLExternalEditor::EC_SUCCESS) { - std::string msg = "Select an editor by setting the environment variable LL_SCRIPT_EDITOR " - "or the ExternalEditor setting"; // *TODO: localize + if (status == LLExternalEditor::EC_NOT_SPECIFIED) // Use custom message for this error. + { + msg = getString("external_editor_not_set"); + } + else + { + msg = LLExternalEditor::getErrorMessage(status); + } + LLNotificationsUtil::add("GenericAlert", LLSD().with("MESSAGE", msg)); return; } - ed.run(filename); + status = ed.run(filename); + if (status != LLExternalEditor::EC_SUCCESS) + { + msg = LLExternalEditor::getErrorMessage(status); + LLNotificationsUtil::add("GenericAlert", LLSD().with("MESSAGE", msg)); + } } } |