|
| OptionProperty (std::string_view identifier, std::string_view displayName, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| OptionProperty (std::string_view identifier, std::string_view displayName, Document help, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| OptionProperty (std::string_view identifier, std::string_view displayName, const std::vector< OptionPropertyOption< T > > &options, size_t selectedIndex=0, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| OptionProperty (std::string_view identifier, std::string_view displayName, Document help, const std::vector< OptionPropertyOption< T > > &options, size_t selectedIndex=0, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| OptionProperty (std::string_view identifier, std::string_view displayName, OptionPropertyState< T > state) |
|
template<typename U = T, class = std::enable_if_t<util::is_stream_insertable<U>::value, void>> |
| OptionProperty (std::string_view identifier, std::string_view displayName, const std::vector< T > &options, size_t selectedIndex=0, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
template<typename U = T, class = std::enable_if_t<util::is_stream_insertable<U>::value, void>> |
| OptionProperty (std::string_view identifier, std::string_view displayName, Document help, const std::vector< T > &options, size_t selectedIndex=0, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| OptionProperty (const OptionProperty< T > &rhs) |
|
virtual OptionProperty< T > * | clone () const override |
|
virtual std::string | getClassIdentifier () const override |
|
| operator const T & () const |
|
template<typename U = T, class = std::enable_if_t<std::is_same_v<U, std::string>, void>> |
| operator std::string_view () const |
|
OptionProperty & | addOption (std::string_view identifier, std::string_view displayName, const T &value) |
| Adds an option to the property.
|
|
template<typename U = T, class = std::enable_if_t<std::is_same_v<U, std::string>, void>> |
OptionProperty & | addOption (std::string_view identifier, std::string_view displayName) |
|
template<typename U = T, class = std::enable_if_t<std::is_same_v<U, std::string>, void>> |
OptionProperty & | addOption (std::string_view identifier, std::string_view displayName, std::string_view value) |
|
virtual OptionProperty & | removeOption (std::string_view identifier) |
|
virtual OptionProperty & | removeOption (size_t index) |
|
virtual OptionProperty & | clearOptions () override |
|
virtual size_t | size () const override |
|
virtual size_t | getSelectedIndex () const override |
|
virtual const std::string & | getSelectedIdentifier () const override |
|
virtual const std::string & | getSelectedDisplayName () const override |
|
const T & | getSelectedValue () const |
|
virtual std::vector< std::string > | getIdentifiers () const override |
|
virtual std::vector< std::string > | getDisplayNames () const override |
|
std::vector< T > | getValues () const |
|
const std::vector< OptionPropertyOption< T > > & | getOptions () const |
|
virtual const std::string & | getOptionIdentifier (size_t index) const override |
|
virtual const std::string & | getOptionDisplayName (size_t index) const override |
|
const T & | getOptionValue (size_t index) const |
|
const OptionPropertyOption< T > & | getOptions (size_t index) const |
|
virtual bool | setSelectedIndex (size_t index) override |
|
virtual bool | setSelectedIdentifier (std::string_view identifier) override |
|
virtual bool | setSelectedDisplayName (std::string_view name) override |
|
bool | setSelectedValue (const T &val) |
| Set the selected index to that of the value provided if found in the list of options.
|
|
template<typename U = T, class = std::enable_if_t<std::is_same_v<U, std::string>, void>> |
bool | setSelectedValue (std::string_view value) |
| Set the selected index to that of the value provided if found in the list of options.
|
|
virtual OptionProperty & | replaceOptions (const std::vector< std::string > &ids, const std::vector< std::string > &displayNames, const std::vector< T > &values) |
|
virtual OptionProperty & | replaceOptions (std::vector< OptionPropertyOption< T > > options) |
|
template<typename U = T, class = std::enable_if_t<util::is_stream_insertable<U>::value, void>> |
OptionProperty & | replaceOptions (const std::vector< T > &options) |
|
virtual bool | isSelectedIndex (size_t index) const override |
|
virtual bool | isSelectedIdentifier (std::string_view identifier) const override |
|
virtual bool | isSelectedDisplayName (std::string_view name) const override |
|
bool | isSelectedValue (const T &val) const |
|
const T & | get () const |
|
const T & | operator* () const |
|
const T * | operator-> () const |
|
bool | set (const T &value) |
| Set the selected index to that of the value provided if found in the list of options.
|
|
template<typename U = T, class = std::enable_if_t<std::is_same_v<U, std::string>, void>> |
bool | set (std::string_view value) |
| Set the selected index to that of the value provided if found in the list of options.
|
|
void | set (const OptionProperty *srcProperty) |
|
virtual void | set (const Property *srcProperty) override |
|
virtual OptionProperty & | setCurrentStateAsDefault () override |
|
OptionProperty< T > & | setDefault (const T &value) |
|
OptionProperty< T > & | setDefaultSelectedIndex (size_t index) |
|
virtual OptionProperty & | resetToDefaultState () override |
|
virtual bool | isDefaultState () const override |
|
virtual std::string | getClassIdentifierForWidget () const override |
| Returns which property's widget should be used when the WidgetFactory tries to create a widget. Defaults to getClassIdentifier(), should only be overridden if a subclass want to reuse another property's widget.
|
|
virtual void | serialize (Serializer &s) const override |
|
virtual void | deserialize (Deserializer &d) override |
|
virtual Document | getDescription () const override |
|
template<typename U , class > |
OptionProperty< T > & | addOption (std::string_view identifier, std::string_view displayName) |
|
template<typename U , class > |
OptionProperty< T > & | addOption (std::string_view identifier, std::string_view displayName, std::string_view value) |
|
template<typename U , class > |
OptionProperty< T > & | replaceOptions (const std::vector< T > &values) |
|
| BaseOptionProperty (std::string_view identifier, std::string_view displayName, Document help, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| BaseOptionProperty (const BaseOptionProperty &rhs) |
|
void | set (const BaseOptionProperty *srcProperty) |
|
| Property (std::string_view identifier="", std::string_view displayName="", Document help={}, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default, ReadOnly readOnly=ReadOnly::No) |
|
| Property (std::string_view identifier, std::string_view displayName, InvalidationLevel invalidationLevel, PropertySemantics semantics=PropertySemantics::Default) |
|
virtual | ~Property () |
| Removes itself from its PropertyOwner.
|
|
virtual Property & | setIdentifier (std::string_view identifier) |
|
virtual const std::string & | getIdentifier () const |
|
virtual const std::string & | getPath () const |
| Get the property path as string.
|
|
virtual Property & | setDisplayName (std::string_view displayName) |
| A property's name displayed to the user.
|
|
virtual const std::string & | getDisplayName () const |
|
virtual Property & | setSemantics (const PropertySemantics &semantics) |
|
virtual PropertySemantics | getSemantics () const |
|
virtual Property & | setReadOnly (bool value) |
| Enable or disable editing of property.
|
|
virtual bool | getReadOnly () const |
|
virtual Property & | setInvalidationLevel (InvalidationLevel invalidationLevel) |
|
virtual InvalidationLevel | getInvalidationLevel () const |
|
virtual void | setOwner (PropertyOwner *owner) |
|
PropertyOwner * | getOwner () |
|
const PropertyOwner * | getOwner () const |
|
void | registerWidget (PropertyWidget *propertyWidget) |
|
void | deregisterWidget (PropertyWidget *propertyWidget) |
|
const std::vector< PropertyWidget * > & | getWidgets () const |
|
void | setInitiatingWidget (PropertyWidget *propertyWidget) |
|
void | clearInitiatingWidget () |
|
void | updateWidgets () |
|
bool | hasWidgets () const |
|
virtual Property & | setSerializationMode (PropertySerializationMode mode) |
|
virtual PropertySerializationMode | getSerializationMode () const |
|
virtual bool | needsSerialization () const |
|
virtual Property & | propertyModified () |
|
virtual void | setValid () |
|
virtual Property & | setModified () |
|
virtual bool | isModified () const |
|
std::shared_ptr< std::function< void()> > | onChangeScoped (std::function< void()> callback) |
|
const BaseCallBack * | onChange (std::function< void()> callback) |
|
void | removeOnChange (const BaseCallBack *callback) |
|
virtual Property & | setVisible (bool val) |
|
virtual bool | getVisible () const |
|
template<typename P , typename DecisionFunc > |
Property & | visibilityDependsOn (P &prop, DecisionFunc callback) |
|
template<typename P , typename DecisionFunc > |
Property & | readonlyDependsOn (P &prop, DecisionFunc callback) |
|
const Document & | getHelp () const |
|
Document & | getHelp () |
|
Property & | setHelp (Document help) |
|
template<typename P > |
Property & | autoLinkToProperty (std::string_view propertyPath) |
|
const std::vector< std::pair< std::string, std::string > > & | getAutoLinkToProperty () const |
|
virtual void | accept (NetworkVisitor &visitor) |
| Accept a NetworkVisitor, the visitor will visit this Property.
|
|
| Observable (const Observable< PropertyObserver > &other) |
|
| Observable (Observable< PropertyObserver > &&other) noexcept |
|
Observable< PropertyObserver > & | operator= (const Observable< PropertyObserver > &other) |
|
Observable< PropertyObserver > & | operator= (Observable< PropertyObserver > &&other) noexcept |
|
void | addObserver (PropertyObserver *observer) |
|
void | removeObserver (PropertyObserver *observer) |
|
virtual void | startBlockingNotifications () override final |
|
virtual void | stopBlockingNotifications () override final |
|
| MetaDataOwner (const MetaDataOwner &rhs)=default |
|
| MetaDataOwner (MetaDataOwner &rhs)=default |
|
MetaDataOwner & | operator= (const MetaDataOwner &rhs)=default |
|
MetaDataOwner & | operator= (MetaDataOwner &)=default |
|
void | copyMetaDataFrom (const MetaDataOwner &src) |
|
void | copyMetaDataTo (MetaDataOwner &dst) |
|
template<typename T >
requires std::derived_from<T, MetaData> |
T * | createMetaData (std::string_view key) |
|
template<typename T , typename U >
requires std::derived_from<T, MetaData> && Settable<T, U> |
void | setMetaData (std::string_view key, U value) |
|
template<typename T >
requires std::derived_from<T, MetaData> |
bool | unsetMetaData (std::string_view key) |
| unset, i.e. remove the metadata entry matching the given key and type
|
|
template<typename T , typename U >
requires std::derived_from<T, MetaData> && Gettable<T, U> |
U | getMetaData (std::string_view key, U val) const |
|
template<typename T >
requires std::derived_from<T, MetaData> |
T * | getMetaData (std::string_view key) |
|
template<typename T >
requires std::derived_from<T, MetaData> |
const T * | getMetaData (std::string_view key) const |
|
MetaDataMap * | getMetaDataMap () |
|
const MetaDataMap * | getMetaDataMap () const |
|
bool | hasMetaData (std::string_view key) const |
|
template<typename T >
requires std::derived_from<T, MetaData> |
bool | hasMetaData (std::string_view key) const |
|
void | serialize (Serializer &s) const |
|
void | deserialize (Deserializer &d) |
|
template<typename T>
class inviwo::OptionProperty< T >
OptionProperty with a custom type T
.
For dynamic template option properties, T
needs to have some traits defining the class identifier. Default identifiers are provided for the standard types defined in defaultvalues.h. If the template parameter T
is a custom enum class, there needs to be a EnumTraits<T>
struct defining the name of the enum. This enum name then becomes part of the property identifier.
#include <inviwo/core/util/enumtraits.h>
enum class MyEnum { Value1, Value2, Value3 };
template <>
static std::string name() { return "MyEnum"; }
};
registerProperty<OptionProperty<MyEnum>>();
For other data types, the class identifier must be provided using PropertyTraits
.
template <>
static const
std::string& classIdentifier() {
static const std::string identifier = "org.inviwo.OptionPropertyMyType";
return identifier;
}
};
Definition shaderutils.h:72
A traits class for getting the class identifier from a Property. This provides a customization point ...
Definition gaussianproperty.h:47
- Template Parameters
-
T | internal value type of the option property |
- See also
- defaultvalues.h enumtraits.h propertytraits.h