diff options
author | Oz Linden <oz@lindenlab.com> | 2011-04-03 09:37:03 -0400 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2011-04-03 09:37:03 -0400 |
commit | b8e97adced58f81a52e6b76a14309d275d55c8bc (patch) | |
tree | 9f2710cbb13093c509896f184a025ab7469c934c /indra/newview/llexternaleditor.h | |
parent | abc259618f06f69ba8e7c72cb149bcddc1bb6ddf (diff) | |
parent | e58c809a5816383674d0f1957440fad728e88893 (diff) |
merge changes for OPEN-39
Diffstat (limited to 'indra/newview/llexternaleditor.h')
-rw-r--r-- | indra/newview/llexternaleditor.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/indra/newview/llexternaleditor.h b/indra/newview/llexternaleditor.h index 6ea210d5e2..ef5db56c6e 100644 --- a/indra/newview/llexternaleditor.h +++ b/indra/newview/llexternaleditor.h @@ -42,6 +42,14 @@ class LLExternalEditor public: + typedef enum e_error_code { + EC_SUCCESS, /// No error. + EC_NOT_SPECIFIED, /// Editor path not specified. + EC_PARSE_ERROR, /// Editor command parsing error. + EC_BINARY_NOT_FOUND, /// Could find the editor binary (missing or not quoted). + EC_FAILED_TO_RUN, /// Could not execute the editor binary. + } EErrorCode; + /** * Set editor command. * @@ -51,19 +59,25 @@ public: * First tries the override, then a predefined setting (sSetting), * then the environment variable. * - * @return Command if found, empty string otherwise. + * @return EC_SUCCESS if command is valid and refers to an existing executable, + * EC_NOT_SPECIFIED or EC_FAILED_TO_RUNan on error. * * @see sSetting */ - bool setCommand(const std::string& env_var, const std::string& override = LLStringUtil::null); + EErrorCode setCommand(const std::string& env_var, const std::string& override = LLStringUtil::null); /** * Run the editor with the given file. * * @param file_path File to edit. - * @return true on success, false on error. + * @return EC_SUCCESS on success, error code on error. + */ + EErrorCode run(const std::string& file_path); + + /** + * Get a meaningful error message for the given status code. */ - bool run(const std::string& file_path); + static std::string getErrorMessage(EErrorCode code); private: |