diff options
Diffstat (limited to 'indra/llui/llnotifications.h')
-rw-r--r-- | indra/llui/llnotifications.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/indra/llui/llnotifications.h b/indra/llui/llnotifications.h index cd05db3c30..0d7cb74f70 100644 --- a/indra/llui/llnotifications.h +++ b/indra/llui/llnotifications.h @@ -102,6 +102,7 @@ #include "llfunctorregistry.h" #include "llpointer.h" #include "llinitparam.h" +#include "llnotificationslistener.h" class LLNotification; typedef boost::shared_ptr<LLNotification> LLNotificationPtr; @@ -812,9 +813,19 @@ private: LLNotificationComparator mComparator; }; - +// An interface class to provide a clean linker seam to the LLNotifications class. +// Extend this interface as needed for your use of LLNotifications. +class LLNotificationsInterface +{ +public: + virtual LLNotificationPtr add(const std::string& name, + const LLSD& substitutions, + const LLSD& payload, + LLNotificationFunctorRegistry::ResponseFunctor functor) = 0; +}; class LLNotifications : + public LLNotificationsInterface, public LLSingleton<LLNotifications>, public LLNotificationChannelBase { @@ -838,7 +849,7 @@ public: const LLSD& substitutions, const LLSD& payload, const std::string& functor_name); - LLNotificationPtr add(const std::string& name, + /* virtual */ LLNotificationPtr add(const std::string& name, const LLSD& substitutions, const LLSD& payload, LLNotificationFunctorRegistry::ResponseFunctor functor); @@ -917,6 +928,8 @@ private: GlobalStringMap mGlobalStrings; bool mIgnoreAllNotifications; + + boost::scoped_ptr<LLNotificationsListener> mListener; }; |