|
|
| 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>
requires (fmt::is_formattable<U>::value || util::is_stream_insertable<U>::value) |
| | OptionProperty (std::string_view identifier, std::string_view displayName, const std::vector< U > &options, size_t selectedIndex=0, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
template<typename U = T>
requires (fmt::is_formattable<U>::value || util::is_stream_insertable<U>::value) |
| | 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_view | getClassIdentifier () const override |
| | operator const T & () const |
|
| operator std::string_view () const |
| OptionProperty & | addOption (std::string_view identifier, std::string_view displayName, const T &value) |
| | Adds an option to the property.
|
|
OptionProperty & | addOption (std::string_view identifier, std::string_view displayName) |
|
OptionProperty & | addOption (std::string_view identifier, std::string_view displayName, std::string_view value) |
|
OptionProperty & | addOption (T 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.
|
| 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) |
|
OptionProperty & | replaceOptions (const std::vector< T > &values) |
template<typename Func>
requires (std::is_invocable_r_v<bool, Func, std::vector<OptionPropertyOption<T>>&>) |
| OptionProperty & | updateOptions (Func &&updater) |
| 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_view | 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 Func>
requires (std::is_invocable_r_v<bool, Func, std::vector<OptionPropertyOption<T>>&>) |
| OptionProperty< T > & | updateOptions (Func &&updater) |
|
| BaseOptionProperty (std::string_view identifier, std::string_view displayName, Document help, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default) |
|
| BaseOptionProperty (const BaseOptionProperty &rhs) |
|
bool | empty () const |
|
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 |
| const std::string & | getPath () const |
| | Get the property path as string.
|
|
void | getPath (std::pmr::string &out) const |
|
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< PropertyObserver > & | operator= (const Observable< PropertyObserver > &other) |
|
void | addObserver (PropertyObserver *observer) |
|
void | removeObserver (PropertyObserver *observer) |
|
bool | isObservedBy (PropertyObserver *observer) const |
| 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_view name() { return "MyEnum"; }
};
registerProperty<OptionProperty<MyEnum>>();
Definition enumtraits.h:40
For other data types, the class identifier must be provided using PropertyTraits.
template <>
static constexpr
std::string_view classIdentifier() {
return "org.inviwo.OptionPropertyMyType";
}
};
A traits class for getting the class identifier from a Property. This provides a customization point ...
Definition property.h:73
- Template Parameters
-
| T | internal value type of the option property |
- See also
- defaultvalues.h enumtraits.h propertytraits.h