27 #ifndef _CEGUITplWindowProperty_h_
28 #define _CEGUITplWindowProperty_h_
30 #include "CEGUI/TplProperty.h"
36 template<
class C,
typename T>
37 class TplWindowProperty :
public TplProperty<C, T>
40 TplWindowProperty(
const String& name,
const String& help,
42 typename TplProperty<C, T>::Setter setter,
43 typename TplProperty<C, T>::GetterFunctor getter,
44 typename TplProperty<C, T>::Helper::pass_type defaultValue = T(),
45 bool writesXML =
true) :
46 TplProperty<C, T>(name, help, origin, setter, getter,
47 defaultValue, writesXML)
52 return CEGUI_NEW_AO TplWindowProperty<C, T>(*
this);
58 typename TplProperty<C, T>::Helper::pass_type value)
60 C* instance =
static_cast<C*
>(receiver);
61 CEGUI_CALL_MEMBER_FN(*instance, this->d_setter)(value);
68 const C* instance =
static_cast<const C*
>(receiver);
69 return this->d_getter(instance);
75 #endif // end of guard _CEGUITplWindowProperty_h_