7 #ifndef _QI_PROPERTY_HPP_
8 #define _QI_PROPERTY_HPP_
10 #include <boost/function.hpp>
14 # pragma warning( push )
16 # pragma warning( disable: 4251 )
18 # pragma warning( disable: 4275 )
42 typedef boost::function<bool (T&, const T&)>
Setter;
43 typedef boost::function<T(const T&)>
Getter;
112 std::vector<TypeInterface*> types(&_type, &_type + 1);
130 # pragma warning( pop )
133 #endif // _QITYPE_PROPERTY_HPP_
PropertyImpl< T > ImplType
virtual void setValue(AutoAnyReference value)
Property(AutoAnyReference defaultValue, Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
static AnyValue from(const T &r)
virtual SignalBase * signal()
virtual qi::Signature signature() const
virtual AnyValue value() const
T to() const
Convert to anything or throw trying.
Property(Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
GenericProperty(TypeInterface *type, Getter getter=Getter(), Setter setter=Setter())
Type-erased property, simulating a typed property but using AnyValue.
PropertyImpl(Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
Property(Getter getter=Getter(), Setter setter=Setter(), SignalBase::OnSubscribers onsubscribe=SignalBase::OnSubscribers())
virtual void setValue(AutoAnyReference value)
qi::Signature makeTupleSignature(const std::vector< qi::AnyReference > &vgv, bool resolveDynamic=false, const std::string &name=std::string(), const std::vector< std::string > &names=std::vector< std::string >())
SignalF< void(const T &)> SignalType
boost::function< void(bool)> OnSubscribers
void operator=(const T &v)
virtual SignalBase * signal()
virtual AnyValue value() const
virtual void setValue(AutoAnyReference value)
boost::function< T(const T &)> Getter
boost::function< bool(T &, const T &)> Setter