Uranium
Application Framework
UM.Operations.GroupedOperation.GroupedOperation Class Reference

An operation that groups several other operations together. More...

Inheritance diagram for UM.Operations.GroupedOperation.GroupedOperation:
UM.Operations.Operation.Operation

Public Member Functions

def __init__ (self)
 Creates a new grouped operation. More...
 
def addOperation (self, op)
 Adds an operation to this group. More...
 
def undo (self)
 Undo all operations in this group. More...
 
def redo (self)
 Redoes all operations in this group.
 
def mergeWith (self, other)
 Merges this operation with another GroupOperation. More...
 
def __repr__ (self)
 
- Public Member Functions inherited from UM.Operations.Operation.Operation
def push (self)
 Push the operation onto the stack. More...
 

Detailed Description

An operation that groups several other operations together.

The intent of this operation is to hide an underlying chain of operations from the user if they correspond to only one interaction with the user, such as an operation applied to multiple scene nodes or a re-arrangement of multiple items in the scene.

Constructor & Destructor Documentation

◆ __init__()

def UM.Operations.GroupedOperation.GroupedOperation.__init__ (   self)

Creates a new grouped operation.

The grouped operation is empty after its initialisation.

Reimplemented from UM.Operations.Operation.Operation.

Member Function Documentation

◆ addOperation()

def UM.Operations.GroupedOperation.GroupedOperation.addOperation (   self,
  op 
)

Adds an operation to this group.

The operation will be undone together with the rest of the operations in this group. Note that when the order matters, the operations are undone in reverse order as the order in which they are added.

◆ mergeWith()

def UM.Operations.GroupedOperation.GroupedOperation.mergeWith (   self,
  other 
)

Merges this operation with another GroupOperation.

This prevents the user from having to undo multiple operations if they were not his operations.

The older operation must have the same number of child operations, and each pair of operations must succesfully merge, or the merge of the groupOperation will fail.

Parameters
otherThe older GroupOperation to merge this with.
Returns
A combination of the two group operations, or False if the operations can not be merged.

Reimplemented from UM.Operations.Operation.Operation.

◆ undo()

def UM.Operations.GroupedOperation.GroupedOperation.undo (   self)

Undo all operations in this group.

The operations are undone in reverse order as the order in which they were added.

Reimplemented from UM.Operations.Operation.Operation.


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