Inviwo  0.9.10.1
Inviwo documentation
inviwo::BaseOptionProperty Class Referenceabstract

#include <optionproperty.h>

+ Inheritance diagram for inviwo::BaseOptionProperty:

Public Member Functions

 BaseOptionProperty (const std::string &identifier, const std::string &displayName, InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default)
 
 BaseOptionProperty (const BaseOptionProperty &rhs)
 
virtual std::string getClassIdentifier () const override=0
 
virtual BaseOptionProperty & clearOptions ()=0
 
virtual size_t size () const =0
 
virtual size_t getSelectedIndex () const =0
 
virtual const std::string & getSelectedIdentifier () const =0
 
virtual const std::string & getSelectedDisplayName () const =0
 
virtual const std::string & getOptionIdentifier (size_t index) const =0
 
virtual const std::string & getOptionDisplayName (size_t index) const =0
 
virtual std::vector< std::string > getIdentifiers () const =0
 
virtual std::vector< std::string > getDisplayNames () const =0
 
virtual bool setSelectedIndex (size_t index)=0
 
virtual bool setSelectedIdentifier (const std::string &identifier)=0
 
virtual bool setSelectedDisplayName (const std::string &name)=0
 
virtual bool isSelectedIndex (size_t index) const =0
 
virtual bool isSelectedIdentifier (const std::string &identifier) const =0
 
virtual bool isSelectedDisplayName (const std::string &name) const =0
 
virtual void set (const Property *srcProperty) override
 
- Public Member Functions inherited from inviwo::Property
 Property (const std::string &identifier="", const std::string &displayName="", InvalidationLevel invalidationLevel=InvalidationLevel::InvalidOutput, PropertySemantics semantics=PropertySemantics::Default)
 
virtual Property * clone () const =0
 
virtual ~Property ()
 Removes itself from its PropertyOwner.
 
virtual Property & setIdentifier (const std::string &identifier)
 
virtual std::string getIdentifier () const
 
virtual std::vector< std::string > getPath () const
 
virtual Property & setDisplayName (const std::string &displayName)
 A property's name displayed to the user.
 
virtual std::string getDisplayName () const
 
virtual std::string getClassIdentifierForWidget () const
 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 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 ()
 
bool hasWidgets () const
 
virtual Property & setCurrentStateAsDefault ()
 
virtual Property & resetToDefaultState ()
 
virtual Property & propertyModified ()
 
virtual void setValid ()
 
virtual Property & setModified ()
 
virtual bool isModified () const
 
virtual void serialize (Serializer &s) const override
 
virtual void deserialize (Deserializer &d) override
 
std::shared_ptr< std::function< void()> > onChangeScoped (std::function< void()> callback)
 
const BaseCallBack * onChange (std::function< void()> callback)
 
void removeOnChange (const BaseCallBack *callback)
 
template<typename T >
const BaseCallBack * onChange (T *object, void(T::*method)())
 
template<typename T >
void removeOnChange (T *object)
 
virtual Property & setUsageMode (UsageMode usageMode)
 
virtual UsageMode getUsageMode () const
 
virtual void setSerializationMode (PropertySerializationMode mode)
 
virtual PropertySerializationMode getSerializationMode () const
 
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)
 
virtual Document getDescription () const
 
template<typename P >
Property & autoLinkToProperty (const std::string &propertyPath)
 
const std::vector< std::pair< std::string, std::string > > & getAutoLinkToProperty () const
 
- Public Member Functions inherited from inviwo::Observable< PropertyObserver >
 Observable (const Observable< PropertyObserver > &other)
 
 Observable (Observable< PropertyObserver > &&other)
 
Observable< PropertyObserver > & operator= (const Observable< PropertyObserver > &other)
 
Observable< PropertyObserver > & operator= (Observable< PropertyObserver > &&other)
 
void addObserver (PropertyObserver *observer)
 
void removeObserver (PropertyObserver *observer)
 
virtual void startBlockingNotifications () override final
 
virtual void stopBlockingNotifications () override final
 
- Public Member Functions inherited from inviwo::MetaDataOwner
 MetaDataOwner (const MetaDataOwner &rhs)=default
 
MetaDataOwner & operator= (const MetaDataOwner &rhs)=default
 
void copyMetaDataFrom (const MetaDataOwner &src)
 
void copyMetaDataTo (MetaDataOwner &dst)
 
template<typename T >
T * createMetaData (const std::string &key)
 
template<typename T , typename U >
void setMetaData (const std::string &key, U value)
 
template<typename T >
bool unsetMetaData (const std::string &key)
 unset, i.e. remove the metadata entry matching the given key and type More...
 
template<typename T , typename U >
U getMetaData (const std::string &key, U val) const
 
template<typename T >
T * getMetaData (const std::string &key)
 
template<typename T >
const T * getMetaData (const std::string &key) const
 
MetaDataMap * getMetaDataMap ()
 
const MetaDataMap * getMetaDataMap () const
 
template<typename T >
bool hasMetaData (const std::string &key) const
 

Additional Inherited Members

- Static Public Member Functions inherited from inviwo::Property
template<typename T , typename U >
static void setStateAsDefault (T &property, const U &state)
 
- Protected Member Functions inherited from inviwo::Property
 Property (const Property &rhs)
 
Property & operator= (const Property &that)=delete
 
void updateWidgets ()
 
void notifyAboutChange ()
 
- Protected Member Functions inherited from inviwo::PropertyObservable
void notifyObserversOnSetIdentifier (Property *property, const std::string &identifier)
 
void notifyObserversOnSetDisplayName (Property *property, const std::string &displayName)
 
void notifyObserversOnSetSemantics (Property *property, const PropertySemantics &semantics)
 
void notifyObserversOnSetReadOnly (Property *property, bool readonly)
 
void notifyObserversOnSetVisible (Property *property, bool visible)
 
void notifyObserversOnSetUsageMode (Property *property, UsageMode usageMode)
 
- Protected Member Functions inherited from inviwo::Observable< PropertyObserver >
void forEachObserver (C callback)
 
- Protected Member Functions inherited from inviwo::ObservableInterface
void addObservationHelper (Observer *observer)
 
void removeObservationHelper (Observer *observer)
 
- Protected Attributes inherited from inviwo::Property
CallBackList onChangeCallback_
 
PropertySerializationMode serializationMode_
 
- Protected Attributes inherited from inviwo::MetaDataOwner
MetaDataMap metaData_
 

Detailed Description

Base class for the option properties

See also
TemplateOptionProperty

Member Function Documentation

◆ set()

void inviwo::BaseOptionProperty::set ( const Property *  src)
overridevirtual

Set the value of this to that of src. The "value" is in this case considered to be for example the string in a StringProperty or the float value in a FloatProperty. But not things like the identifier of display name.

Reimplemented from inviwo::Property.

Reimplemented in inviwo::TemplateOptionProperty< T >, inviwo::TemplateOptionProperty< ConnectivityType >, inviwo::TemplateOptionProperty< DrawType >, inviwo::TemplateOptionProperty< utilgl::debug::Severity >, inviwo::TemplateOptionProperty< Mode >, inviwo::TemplateOptionProperty< BasisPropertyReference >, inviwo::TemplateOptionProperty< double >, inviwo::TemplateOptionProperty< GradientComputation >, inviwo::TemplateOptionProperty< IntegralLineProperties::IntegrationScheme >, inviwo::TemplateOptionProperty< Positioning >, inviwo::TemplateOptionProperty< Location >, inviwo::TemplateOptionProperty< LineDrawMode >, inviwo::TemplateOptionProperty< DataRangeMode >, inviwo::TemplateOptionProperty< std::string >, inviwo::TemplateOptionProperty< IntegralLineProperties::Direction >, inviwo::TemplateOptionProperty< NormalizationMode >, inviwo::TemplateOptionProperty< Operator >, inviwo::TemplateOptionProperty< PlaybackMode >, inviwo::TemplateOptionProperty< CompositingType >, inviwo::TemplateOptionProperty< SeedingSpace >, inviwo::TemplateOptionProperty< Method >, inviwo::TemplateOptionProperty< int >, inviwo::TemplateOptionProperty< MessageBreakLevel >, inviwo::TemplateOptionProperty< MeshType >, inviwo::TemplateOptionProperty< GlyphClippingMode >, inviwo::TemplateOptionProperty< NoiseType >, inviwo::TemplateOptionProperty< BackgroundStyle >, inviwo::TemplateOptionProperty< BlendMode >, inviwo::TemplateOptionProperty< Shader::OnError >, inviwo::TemplateOptionProperty< utilgl::debug::BreakLevel >, inviwo::TemplateOptionProperty< utilgl::debug::Mode >, inviwo::TemplateOptionProperty< ColoringMethod >, inviwo::TemplateOptionProperty< UsageMode >, inviwo::TemplateOptionProperty< InputType >, inviwo::TemplateOptionProperty< size_t >, inviwo::TemplateOptionProperty< LayerType >, inviwo::TemplateOptionProperty< Type >, inviwo::TemplateOptionProperty< BoundaryType >, inviwo::TemplateOptionProperty< LabelPosition >, inviwo::TemplateOptionProperty< TickStyle >, inviwo::TemplateOptionProperty< Layout >, inviwo::TemplateOptionProperty< SplitterStyle >, inviwo::TemplateOptionProperty< colorbrewer::Family >, inviwo::TemplateOptionProperty< ColormapType >, inviwo::TemplateOptionProperty< AxisSelection >, inviwo::TemplateOptionProperty< Generator >, inviwo::TemplateOptionProperty< CartesianCoordinateAxis >, inviwo::TemplateOptionProperty< CoordinateSpace >, inviwo::TemplateOptionProperty< DataFormatId >, inviwo::TemplateOptionProperty< Shader::UniformWarning >, inviwo::TemplateOptionProperty< Placement >, inviwo::TemplateOptionProperty< OutputType >, inviwo::TemplateOptionProperty< Orientation >, inviwo::TemplateOptionProperty< SplitDirection >, inviwo::TemplateOptionProperty< GlyphType >, inviwo::TemplateOptionProperty< SourceType >, inviwo::TemplateOptionProperty< AxisRangeMode >, inviwo::TemplateOptionProperty< BrushBy >, inviwo::TemplateOptionProperty< Classification >, inviwo::TemplateOptionProperty< RenderingType >, inviwo::TemplateOptionProperty< RenderMode >, inviwo::TemplateOptionProperty< BasisPropertyMode >, inviwo::TemplateOptionProperty< util::VolumeLaplacianPostProcessing >, inviwo::TemplateOptionProperty< glui::BoxLayout::LayoutDirection >, inviwo::TemplateOptionProperty< Output >, inviwo::TemplateOptionProperty< inviwo::FileExtension >, and inviwo::DataFrameColumnProperty.


The documentation for this class was generated from the following files: