128 #ifndef vtkSMProperty_h 129 #define vtkSMProperty_h 143 class vtkSMInformationHelper;
162 vtkSetStringMacro(Command);
163 vtkGetStringMacro(Command);
172 vtkSetMacro(ImmediateUpdate,
int);
173 vtkGetMacro(ImmediateUpdate,
int);
234 template <
class DomainType>
235 inline DomainType* FindDomain();
241 unsigned int GetNumberOfDomains();
248 vtkGetMacro(InformationOnly,
int);
257 vtkGetMacro(IgnoreSynchronization,
int);
274 void AddDomain(
const char* name,
vtkSMDomain* dom);
280 virtual void AddLinkedProperty(
vtkSMProperty* targetProperty);
285 virtual void RemoveLinkedProperty(
vtkSMProperty* targetProperty);
295 virtual void RemoveFromSourceLink();
302 vtkSetMacro(Animateable,
int);
303 vtkGetMacro(Animateable,
int);
312 vtkSetMacro(IsInternal,
int);
313 vtkGetMacro(IsInternal,
int);
320 vtkSetMacro(NoCustomDefault,
int);
321 vtkGetMacro(NoCustomDefault,
int);
335 vtkSetStringMacro(PanelVisibility);
336 vtkGetStringMacro(PanelVisibility);
344 vtkSetStringMacro(PanelVisibilityDefaultForRepresentation);
345 vtkGetStringMacro(PanelVisibilityDefaultForRepresentation);
352 vtkSetStringMacro(PanelWidget);
353 vtkGetStringMacro(PanelWidget);
360 vtkSetStringMacro(DisableSubTrace);
361 vtkGetStringMacro(DisableSubTrace);
383 void ResetToDefault();
410 virtual bool ResetToDomainDefaults(
bool use_unchecked_values =
false);
416 vtkGetStringMacro(XMLLabel);
426 vtkGetStringMacro(XMLName);
435 vtkGetMacro(Repeatable,
int);
457 if (this->BlockModifiedEvents)
459 this->PendingModifiedEvents =
true;
464 this->PendingModifiedEvents =
false;
492 bool HasDomainsWithRequiredProperties();
505 friend class vtkSMSubPropertyIterator;
540 vtkSetStringMacro(XMLName);
558 void RemoveAllDependents();
574 void UpdateDomains();
581 virtual void SaveState(
582 vtkPVXMLElement* parent,
const char* property_name,
const char* uid,
int saveDomains = 1);
592 virtual void SaveDomainState(
vtkPVXMLElement* propertyElement,
const char* uid);
612 vtkSetStringMacro(XMLLabel);
621 vtkSetMacro(InformationOnly,
int);
624 vtkSetMacro(IgnoreSynchronization,
int);
643 bool prev = this->BlockModifiedEvents;
644 this->BlockModifiedEvents = block;
654 vtkGetMacro(PendingModifiedEvents,
bool);
665 vtkSetMacro(StateIgnored,
bool);
666 vtkBooleanMacro(StateIgnored,
bool);
677 void InvokeDomainModifiedEvent();
679 bool PendingModifiedEvents;
680 bool BlockModifiedEvents;
683 #define vtkSMPropertyTemplateMacroCase(typeSMProperty, type, prop, call) \ 684 if (typeSMProperty* SM_PROPERTY = typeSMProperty::SafeDownCast(prop)) \ 687 typedef type SM_TT; \ 691 #define vtkSMVectorPropertyTemplateMacro(prop, call) \ 692 vtkSMPropertyTemplateMacroCase(vtkSMDoubleVectorProperty, double, prop, call) \ 693 vtkSMPropertyTemplateMacroCase(vtkSMIntVectorProperty, int, prop, call) \ 694 vtkSMPropertyTemplateMacroCase(vtkSMIdTypeVectorProperty, vtkIdType, prop, call) \ 695 vtkSMPropertyTemplateMacroCase(vtkSMStringVectorProperty, std::string, prop, call) 698 template <
class DomainType>
702 for (iter->Begin(); !iter->IsAtEnd(); iter->Next())
704 if (DomainType* domain = DomainType::SafeDownCast(iter->GetDomain()))
vtkSMProperty * InformationProperty
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