summaryrefslogtreecommitdiff
path: root/indra/newview/llfloateruipreview.cpp
diff options
context:
space:
mode:
authorVadim ProductEngine <vsavchuk@productengine.com>2011-03-07 19:18:31 +0200
committerVadim ProductEngine <vsavchuk@productengine.com>2011-03-07 19:18:31 +0200
commiteef9b265b951337d0633d18186dad2b734b30d5a (patch)
tree3be24ab488a4d808625c7bab1c91f95c77b7805c /indra/newview/llfloateruipreview.cpp
parent5cb2d63979f0ff72cb9351dc9aa070b1990a1f9c (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/llfloateruipreview.cpp')
-rw-r--r--indra/newview/llfloateruipreview.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/indra/newview/llfloateruipreview.cpp b/indra/newview/llfloateruipreview.cpp
index 11b3379814..0d8601410a 100644
--- a/indra/newview/llfloateruipreview.cpp
+++ b/indra/newview/llfloateruipreview.cpp
@@ -1037,18 +1037,29 @@ void LLFloaterUIPreview::onClickEditFloater()
cmd_override = bin + " " + args;
}
}
- if (!mExternalEditor.setCommand("LL_XUI_EDITOR", cmd_override))
+
+ LLExternalEditor::EErrorCode status = mExternalEditor.setCommand("LL_XUI_EDITOR", cmd_override);
+ if (status != LLExternalEditor::EC_SUCCESS)
{
- std::string warning = "Select an editor by setting the environment variable LL_XUI_EDITOR "
- "or the ExternalEditor setting or specifying its path in the \"Editor Path\" field.";
+ std::string warning;
+
+ if (status == LLExternalEditor::EC_NOT_SPECIFIED) // Use custom message for this error.
+ {
+ warning = getString("ExternalEditorNotSet");
+ }
+ else
+ {
+ warning = LLExternalEditor::getErrorMessage(status);
+ }
+
popupAndPrintWarning(warning);
return;
}
// Run the editor.
- if (!mExternalEditor.run(file_path))
+ if (mExternalEditor.run(file_path) != LLExternalEditor::EC_SUCCESS)
{
- popupAndPrintWarning("Failed to run editor");
+ popupAndPrintWarning(LLExternalEditor::getErrorMessage(status));
return;
}
}