Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkSMUndoStackBuilder Class Reference

builds server manager undo sets and pushes them on the undo stack. More...

#include <vtkSMUndoStackBuilder.h>

Inheritance diagram for vtkSMUndoStackBuilder:
Inheritance graph
[legend]
Collaboration diagram for vtkSMUndoStackBuilder:
Collaboration graph
[legend]

Public Types

typedef vtkSMObject Superclass
 
- Public Types inherited from vtkSMObject
typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent) override
 
virtual void Begin (const char *label)
 Begins monitoring of the vtkSMProxyManager for undoable operations. More...
 
virtual void End ()
 Stops monitoring of the vtkSMProxyManager for undoable operations. More...
 
virtual void PushToStack ()
 If any undoable changes were recorded by the builder, this will push the vtkUndoSet formed on to the UndoStack. More...
 
virtual void Clear ()
 Discard all recorded changes that haven't been pushed on the UndoStack. More...
 
virtual bool Add (vtkUndoElement *element)
 One can add arbitrary elements to the active undo set. More...
 
virtual void OnStateChange (vtkSMSession *session, vtkTypeUInt32 globalId, const vtkSMMessage *previousState, const vtkSMMessage *newState)
 
virtual void OnCreateObject (vtkSMSession *session, vtkSMMessage *newState)
 
void EndAndPushToStack ()
 Convenience method call End(); PushToStack(); in that order. More...
 
virtual vtkSMUndoStackGetUndoStack ()
 Get/Set the undo stack that this builder will build. More...
 
virtual void SetUndoStack (vtkSMUndoStack *)
 Get/Set the undo stack that this builder will build. More...
 
virtual void SetIgnoreAllChanges (bool)
 If IgnoreAllChanges is true, any server manager changes will be ignored even if the changes happened within a Begin()-End() call. More...
 
virtual bool GetIgnoreAllChanges ()
 If IgnoreAllChanges is true, any server manager changes will be ignored even if the changes happened within a Begin()-End() call. More...
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool debugFlag)
 
virtual void Modified ()
 
virtual vtkMTimeType GetMTime ()
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommandGetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
void SetReferenceCount (int)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 
void PrintRevisions (ostream &)
 

Static Public Member Functions

static vtkSMUndoStackBuilderNew ()
 
static int IsTypeOf (const char *type)
 
static vtkSMUndoStackBuilderSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkSMObject
static vtkSMObjectNew ()
 
static int IsTypeOf (const char *type)
 
static vtkSMObjectSafeDownCast (vtkObject *o)
 
static std::string CreatePrettyLabel (const std::string &name)
 Return a well-formated label using provided name by adding spaces between lower cases and upper cases: More...
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 
static vtkObjectBaseNew ()
 
static vtkObjectBaseNew ()
 

Protected Member Functions

 vtkSMUndoStackBuilder ()
 
 ~vtkSMUndoStackBuilder () override
 
virtual void SetLabel (const char *)
 
virtual bool HandleChangeEvents ()
 Returns if the event raised by the proxy manager should be converted to undo elements. More...
 
void InitializeUndoSet ()
 
- Protected Member Functions inherited from vtkSMObject
 vtkSMObject ()
 
 ~vtkSMObject () override
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) VTK_OVERRIDE
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

vtkSMUndoStackUndoStack
 
vtkUndoSetUndoSet
 
char * Label
 
int EnableMonitoring
 
bool IgnoreAllChanges
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Detailed Description

builds server manager undo sets and pushes them on the undo stack.

vtkSMUndoStackBuilder records Server Manager changes that are undo/redo able and collects them. To begin recording such changes one must call Begin(). To end recording use End(). One can have multiple blocks of Begin-End before pushing the changes on the Undo Stack. To push all collected changes onto the Undo Stack as a single undoable step, use PushToStack(). Applications can subclass vtkSMUndoStackBuilder to record GUI related changes and add them to the undo stack.

Definition at line 31 of file vtkSMUndoStackBuilder.h.

Member Typedef Documentation

◆ Superclass

Definition at line 35 of file vtkSMUndoStackBuilder.h.

Constructor & Destructor Documentation

◆ vtkSMUndoStackBuilder()

vtkSMUndoStackBuilder::vtkSMUndoStackBuilder ( )
protected

◆ ~vtkSMUndoStackBuilder()

vtkSMUndoStackBuilder::~vtkSMUndoStackBuilder ( )
overrideprotected

Member Function Documentation

◆ New()

static vtkSMUndoStackBuilder* vtkSMUndoStackBuilder::New ( )
static

◆ GetClassName()

virtual const char* vtkSMUndoStackBuilder::GetClassName ( )
virtual

Reimplemented from vtkSMObject.

Reimplemented in pqUndoStackBuilder.

◆ IsTypeOf()

static int vtkSMUndoStackBuilder::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual int vtkSMUndoStackBuilder::IsA ( const char *  type)
virtual

Reimplemented from vtkSMObject.

Reimplemented in pqUndoStackBuilder.

◆ SafeDownCast()

static vtkSMUndoStackBuilder* vtkSMUndoStackBuilder::SafeDownCast ( vtkObject o)
static

◆ PrintSelf()

void vtkSMUndoStackBuilder::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Reimplemented from vtkSMObject.

◆ Begin()

virtual void vtkSMUndoStackBuilder::Begin ( const char *  label)
virtual

Begins monitoring of the vtkSMProxyManager for undoable operations.

All noted actions are converted to UndoElements and collected. One vtkUndoElement is created per action. All undo elements become a part of a vtkUndoSet which is pushed on to the Undo Stack on PushToStack(). label is a suggestion for the UndoSet that will be built. If the UndoSet already has elements implying it hasn't been pushed to the stack then the label is ignored.

◆ End()

virtual void vtkSMUndoStackBuilder::End ( )
virtual

Stops monitoring of the vtkSMProxyManager for undoable operations.

Any changes made to the proxy manager will not be converted to UndoElements. This method does not push the vtkUndoSet of undo elements built. One must call PushToStack() to push the UndoSet to the Undo stack. Alternatively, one can use the EndAndPushToStack() method which combines End() and PushToStack().

◆ EndAndPushToStack()

void vtkSMUndoStackBuilder::EndAndPushToStack ( )
inline

Convenience method call End(); PushToStack(); in that order.

Definition at line 64 of file vtkSMUndoStackBuilder.h.

◆ PushToStack()

virtual void vtkSMUndoStackBuilder::PushToStack ( )
virtual

If any undoable changes were recorded by the builder, this will push the vtkUndoSet formed on to the UndoStack.

The UndoStack which the builder is building must be set by using SetUndoStack(). If the UndoSet is empty, it is not pushed on the stack. After pushing, the UndoSet is cleared so the builder is ready to collect new modifications.

◆ Clear()

virtual void vtkSMUndoStackBuilder::Clear ( )
virtual

Discard all recorded changes that haven't been pushed on the UndoStack.

◆ Add()

virtual bool vtkSMUndoStackBuilder::Add ( vtkUndoElement element)
virtual

One can add arbitrary elements to the active undo set.

It is essential that the StateLoader on the UndoStack can handle the arbitrary undo elements. If that element has been escaped for any reason, the method will return false;

◆ GetUndoStack()

virtual vtkSMUndoStack* vtkSMUndoStackBuilder::GetUndoStack ( )
virtual

Get/Set the undo stack that this builder will build.

◆ SetUndoStack()

virtual void vtkSMUndoStackBuilder::SetUndoStack ( vtkSMUndoStack )
virtual

Get/Set the undo stack that this builder will build.

Reimplemented in pqUndoStackBuilder.

◆ SetIgnoreAllChanges()

virtual void vtkSMUndoStackBuilder::SetIgnoreAllChanges ( bool  )
virtual

If IgnoreAllChanges is true, any server manager changes will be ignored even if the changes happened within a Begin()-End() call.

This provides a mechanism for the application to perform non-undoable operations irrespective of whether a undo set if being built. By default, it is set to false.

◆ GetIgnoreAllChanges()

virtual bool vtkSMUndoStackBuilder::GetIgnoreAllChanges ( )
virtual

If IgnoreAllChanges is true, any server manager changes will be ignored even if the changes happened within a Begin()-End() call.

This provides a mechanism for the application to perform non-undoable operations irrespective of whether a undo set if being built. By default, it is set to false.

◆ OnStateChange()

virtual void vtkSMUndoStackBuilder::OnStateChange ( vtkSMSession session,
vtkTypeUInt32  globalId,
const vtkSMMessage previousState,
const vtkSMMessage newState 
)
virtual

Reimplemented in pqUndoStackBuilder.

◆ OnCreateObject()

virtual void vtkSMUndoStackBuilder::OnCreateObject ( vtkSMSession session,
vtkSMMessage newState 
)
virtual

◆ SetLabel()

virtual void vtkSMUndoStackBuilder::SetLabel ( const char *  )
protectedvirtual

◆ HandleChangeEvents()

virtual bool vtkSMUndoStackBuilder::HandleChangeEvents ( )
inlineprotectedvirtual

Returns if the event raised by the proxy manager should be converted to undo elements.

Definition at line 134 of file vtkSMUndoStackBuilder.h.

◆ InitializeUndoSet()

void vtkSMUndoStackBuilder::InitializeUndoSet ( )
protected

Member Data Documentation

◆ UndoStack

vtkSMUndoStack* vtkSMUndoStackBuilder::UndoStack
protected

Definition at line 125 of file vtkSMUndoStackBuilder.h.

◆ UndoSet

vtkUndoSet* vtkSMUndoStackBuilder::UndoSet
protected

Definition at line 126 of file vtkSMUndoStackBuilder.h.

◆ Label

char* vtkSMUndoStackBuilder::Label
protected

Definition at line 127 of file vtkSMUndoStackBuilder.h.

◆ EnableMonitoring

int vtkSMUndoStackBuilder::EnableMonitoring
protected

Definition at line 140 of file vtkSMUndoStackBuilder.h.

◆ IgnoreAllChanges

bool vtkSMUndoStackBuilder::IgnoreAllChanges
protected

Definition at line 141 of file vtkSMUndoStackBuilder.h.


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