diff options
author | Logan Dethrow <log@lindenlab.com> | 2011-11-18 10:45:40 -0500 |
---|---|---|
committer | Logan Dethrow <log@lindenlab.com> | 2011-11-18 10:45:40 -0500 |
commit | 3819c3b049abb0771c7129c0a11a8fcd0725f9fd (patch) | |
tree | f0bb1432b1ae475c7d844f278b668e1d76193e96 /indra/llui/llurlaction.h | |
parent | 620b63a31667d93d9186217eb355d05e71ff245c (diff) | |
parent | 4bcdcd02fb7e83a2754084f2fb599b56ea6c8743 (diff) |
Merge
Diffstat (limited to 'indra/llui/llurlaction.h')
-rw-r--r-- | indra/llui/llurlaction.h | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/indra/llui/llurlaction.h b/indra/llui/llurlaction.h index 0132dbaaf0..c34960b826 100644 --- a/indra/llui/llurlaction.h +++ b/indra/llui/llurlaction.h @@ -29,6 +29,7 @@ #define LL_LLURLACTION_H #include <string> +#include <boost/function.hpp> /// /// The LLUrlAction class provides a number of static functions that @@ -77,17 +78,21 @@ public: static void showProfile(std::string url); /// specify the callbacks to enable this class's functionality - static void setOpenURLCallback(void (*cb) (const std::string& url)); - static void setOpenURLInternalCallback(void (*cb) (const std::string& url)); - static void setOpenURLExternalCallback(void (*cb) (const std::string& url)); - static void setExecuteSLURLCallback(bool (*cb) (const std::string& url)); + typedef boost::function<void (const std::string&)> url_callback_t; + typedef boost::function<bool(const std::string& url)> execute_url_callback_t; + + static void setOpenURLCallback(url_callback_t cb); + static void setOpenURLInternalCallback(url_callback_t cb); + static void setOpenURLExternalCallback(url_callback_t cb); + static void setExecuteSLURLCallback(execute_url_callback_t cb); private: // callbacks for operations we can perform on Urls - static void (*sOpenURLCallback) (const std::string& url); - static void (*sOpenURLInternalCallback) (const std::string& url); - static void (*sOpenURLExternalCallback) (const std::string& url); - static bool (*sExecuteSLURLCallback) (const std::string& url); + static url_callback_t sOpenURLCallback; + static url_callback_t sOpenURLInternalCallback; + static url_callback_t sOpenURLExternalCallback; + + static execute_url_callback_t sExecuteSLURLCallback; }; #endif |