diff options
author | Mark Palange (Mani) <palange@lindenlab.com> | 2009-10-05 13:39:53 -0700 |
---|---|---|
committer | Mark Palange (Mani) <palange@lindenlab.com> | 2009-10-05 13:39:53 -0700 |
commit | 81a63ac0886a31a566535a3483e5013f5bc0b424 (patch) | |
tree | 1bb0319755a5e26e0bc7f9f20632ae8f31538971 /indra/llui/lluictrl.h | |
parent | 0f5bbec3747f3ff2b1d580506d35dc080fcd1a98 (diff) | |
parent | 9818f158366a0df980a2e4b9251177d9a9209cfb (diff) |
merge with latest from lindenlab/svn-imports-viewer-20
Diffstat (limited to 'indra/llui/lluictrl.h')
-rw-r--r-- | indra/llui/lluictrl.h | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/indra/llui/lluictrl.h b/indra/llui/lluictrl.h index c2502732f3..69207eb8ea 100644 --- a/indra/llui/lluictrl.h +++ b/indra/llui/lluictrl.h @@ -34,14 +34,15 @@ #ifndef LL_LLUICTRL_H #define LL_LLUICTRL_H -#include "llboost.h" +//#include "llboost.h" #include "llrect.h" #include "llsd.h" #include <boost/function.hpp> +#include <boost/signals2.hpp> #include "llinitparam.h" #include "llview.h" -#include "llviewmodel.h" +#include "llviewmodel.h" // *TODO move dependency to .cpp file const BOOL TAKE_FOCUS_YES = TRUE; const BOOL TAKE_FOCUS_NO = FALSE; @@ -62,6 +63,9 @@ public: typedef boost::function<bool (LLUICtrl* ctrl, const LLSD& param)> enable_callback_t; typedef boost::signals2::signal<bool (LLUICtrl* ctrl, const LLSD& param), boost_boolean_combiner> enable_signal_t; + typedef boost::function<bool (LLUICtrl* ctrl, const LLSD& param)> visible_callback_t; + typedef boost::signals2::signal<bool (LLUICtrl* ctrl, const LLSD& param), boost_boolean_combiner> visible_signal_t; + struct CallbackParam : public LLInitParam::Block<CallbackParam> { Ignored name; @@ -91,6 +95,11 @@ public: Optional<enable_callback_t> function; }; + struct VisibleCallbackParam : public LLInitParam::Block<VisibleCallbackParam, CallbackParam > + { + Optional<visible_callback_t> function; + }; + struct EnableControls : public LLInitParam::Choice<EnableControls> { Alternative<std::string> enabled; @@ -107,9 +116,12 @@ public: Alternative<std::string> invisible; ControlVisibility() - : visible("visiblity_control"), - invisible("invisiblity_control") - {} + : visible("visibility_control"), + invisible("invisibility_control") + { + addSynonym(visible, "visiblity_control"); + addSynonym(invisible, "invisiblity_control"); + } }; struct Params : public LLInitParam::Block<Params, LLView::Params> { @@ -128,6 +140,15 @@ public: Optional<EnableControls> enabled_controls; Optional<ControlVisibility> controls_visibility; + // font params + Optional<const LLFontGL*> font; + Optional<LLFontGL::HAlign> font_halign; + Optional<LLFontGL::VAlign> font_valign; + + // cruft from LLXMLNode implementation + Ignored type, + length; + Params(); }; @@ -142,6 +163,7 @@ protected: void initCommitCallback(const CommitCallbackParam& cb, commit_signal_t& sig); void initEnableCallback(const EnableCallbackParam& cb, enable_signal_t& sig); + void initVisibleCallback(const VisibleCallbackParam& cb, visible_signal_t& sig); // We need this virtual so we can override it with derived versions virtual LLViewModel* getViewModel() const; @@ -259,6 +281,8 @@ public: class CommitCallbackRegistry : public CallbackRegistry<commit_callback_t, CommitCallbackRegistry>{}; class EnableCallbackRegistry : public CallbackRegistry<enable_callback_t, EnableCallbackRegistry>{}; + class VisibleCallbackRegistry : public CallbackRegistry<visible_callback_t, VisibleCallbackRegistry>{}; + protected: |