121 #ifndef vtkSMProperty_h 122 #define vtkSMProperty_h 137 class vtkSMInformationHelper;
156 vtkSetStringMacro(Command);
157 vtkGetStringMacro(Command);
166 vtkSetMacro(ImmediateUpdate,
int);
167 vtkGetMacro(ImmediateUpdate,
int);
228 template <
class DomainType>
229 inline DomainType* FindDomain();
235 unsigned int GetNumberOfDomains();
242 vtkGetMacro(InformationOnly,
int);
251 vtkGetMacro(IgnoreSynchronization,
int);
268 void AddDomain(
const char* name,
vtkSMDomain* dom);
274 virtual void AddLinkedProperty(
vtkSMProperty* targetProperty);
279 virtual void RemoveLinkedProperty(
vtkSMProperty* targetProperty);
289 virtual void RemoveFromSourceLink();
296 vtkSetMacro(Animateable,
int);
297 vtkGetMacro(Animateable,
int);
306 vtkSetMacro(IsInternal,
int);
307 vtkGetMacro(IsInternal,
int);
314 vtkSetMacro(NoCustomDefault,
int);
321 vtkGetMacro(NoCustomDefault,
int);
335 vtkSetStringMacro(PanelVisibility);
342 vtkGetStringMacro(PanelVisibility);
350 vtkSetStringMacro(PanelVisibilityDefaultForRepresentation);
358 vtkGetStringMacro(PanelVisibilityDefaultForRepresentation);
365 vtkSetStringMacro(PanelWidget);
372 vtkGetStringMacro(PanelWidget);
379 vtkSetStringMacro(DisableSubTrace);
386 vtkGetStringMacro(DisableSubTrace);
408 void ResetToDefault();
435 virtual bool ResetToDomainDefaults(
bool use_unchecked_values =
false);
441 vtkGetStringMacro(XMLLabel);
451 vtkGetStringMacro(XMLName);
460 vtkGetMacro(Repeatable,
int);
482 if (this->BlockModifiedEvents)
484 this->PendingModifiedEvents =
true;
489 this->PendingModifiedEvents =
false;
517 bool HasDomainsWithRequiredProperties();
532 "Use vtkSMObject::CreatePrettyLabel(const std::string& name) instead.")
533 static const char* CreateNewPrettyLabel(
const char*
name);
541 friend class vtkSMSubPropertyIterator;
576 vtkSetStringMacro(XMLName);
594 void RemoveAllDependents();
610 void UpdateDomains();
617 virtual void SaveState(
618 vtkPVXMLElement* parent,
const char* property_name,
const char* uid,
int saveDomains = 1);
628 virtual void SaveDomainState(
vtkPVXMLElement* propertyElement,
const char* uid);
648 vtkSetStringMacro(XMLLabel);
657 vtkSetMacro(InformationOnly,
int);
660 vtkSetMacro(IgnoreSynchronization,
int);
679 bool prev = this->BlockModifiedEvents;
680 this->BlockModifiedEvents = block;
690 vtkGetMacro(PendingModifiedEvents,
bool);
701 vtkSetMacro(StateIgnored,
bool);
702 vtkBooleanMacro(StateIgnored,
bool);
713 void InvokeDomainModifiedEvent();
715 bool PendingModifiedEvents;
716 bool BlockModifiedEvents;
719 #define vtkSMPropertyTemplateMacroCase(typeSMProperty, type, prop, call) \ 720 if (typeSMProperty* SM_PROPERTY = typeSMProperty::SafeDownCast(prop)) \ 723 typedef type SM_TT; \ 727 #define vtkSMVectorPropertyTemplateMacro(prop, call) \ 728 vtkSMPropertyTemplateMacroCase(vtkSMDoubleVectorProperty, double, prop, call) \ 729 vtkSMPropertyTemplateMacroCase(vtkSMIntVectorProperty, int, prop, call) \ 730 vtkSMPropertyTemplateMacroCase(vtkSMIdTypeVectorProperty, vtkIdType, prop, call) \ 731 vtkSMPropertyTemplateMacroCase(vtkSMStringVectorProperty, std::string, prop, call) 734 template <
class DomainType>
738 for (iter->Begin(); !iter->IsAtEnd(); iter->Next())
740 if (DomainType* domain = DomainType::SafeDownCast(iter->GetDomain()))
vtkSMProperty * InformationProperty
#define PARAVIEW_DEPRECATED_IN_5_12_0(reason)
static vtkSmartPointer< T > Take(T *t)
iterates over domains of a property
vtkSMDomainIterator * DomainIterator
vtkSMPropertyLink * Links
#define VTKREMOTINGSERVERMANAGER_EXPORT
superclass for all SM properties
void Modified() override
Overridden to support blocking of modified events.
Store messages for the interpreter.
DomainType * FindDomain()
Same as FindDomain(classname), except the classname is deduced from the type.
vtkSMInformationHelper * InformationHelper
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
virtual void UnRegister(vtkObjectBase *o)
represents the possible values a property can have
virtual bool IsStateIgnored()
superclass for most server manager classes
proxy for a VTK source on a server
int IgnoreSynchronization
The vtkSMSessionProxyManager is esponsible for creating and managing proxies for a given session...
Creates a link between two properties.
bool SetBlockModifiedEvents(bool block)
Block/unblock modified events, returns the current state of the block flag.
virtual void ReadFrom(const vtkSMMessage *, int vtkNotUsed(message_offset), vtkSMProxyLocator *)
Let the property read and set its content from the stream.
vtkSMDocumentation * Documentation
This is the concrete implementation for the Undo element for a property modification event...
static vtkSMObject * New()
proxy for a VTK object(s) on a server
is used to locate proxies referred to in state xmls while loading state files.
vtkWeakPointer< vtkSMProxy > Proxy
class providing access to the documentation for a vtkSMProxy.
vtkSMPropertyInternals * PInternals
virtual void ResetToXMLDefaults()
For properties that support specifying defaults in XML configuration, this method will reset the prop...
This is used by vtkPVXMLParser to represent an XML document starting at the root element.
char * PanelVisibilityDefaultForRepresentation
virtual bool IsValueDefault()
Returns true if the property's value is different from the default value.
virtual void ClearUncheckedElements()
Use this method to clear unchecked values set of this property.
virtual void UpdateAllInputs()
Update all proxies referred by this property (if any).
void PrintSelf(ostream &os, vtkIndent indent) override