QCAD
Open Source 2D CAD
|
This abstract class is an interface for all operation implementations. More...
#include <ROperation.h>
Public Member Functions | |
virtual RTransaction | apply (RDocument &document, bool preview=false)=0 |
Applies this operation to selection in the given document. More... | |
RS::EntityType | getEntityTypeFilter () const |
QString | getText () const |
int | getTransactionGroup () const |
bool | getTransactionType (RTransaction::Type t) const |
RTransaction::Types | getTransactionTypes () const |
ROperation (bool undoable=true, RS::EntityType entityTypeFilter=RS::EntityAll) | |
void | setAllowAll (bool on) |
void | setAllowInvisible (bool on) |
void | setKeepChildren (bool on) |
Keep child entities (e.g. More... | |
void | setRecordAffectedObjects (bool on) |
void | setSpatialIndexDisabled (bool on) |
void | setText (const QString &t) |
void | setTransactionGroup (int g) |
void | setTransactionType (RTransaction::Type t, bool on=true) |
virtual | ~ROperation () |
Public Member Functions inherited from RRequireHeap | |
void | doDelete () |
Protected Attributes | |
bool | allowAll |
bool | allowInvisible |
RS::EntityType | entityTypeFilter |
bool | keepChildren |
bool | recordAffectedObjects |
bool | spatialIndexDisabled |
QString | text |
int | transactionGroup |
RTransaction::Types | transactionTypes |
bool | undoable |
Additional Inherited Members | |
Protected Member Functions inherited from RRequireHeap | |
virtual | ~RRequireHeap () |
Private Member Functions inherited from RNonCopyable | |
RNonCopyable () | |
~RNonCopyable () | |
This abstract class is an interface for all operation implementations.
An operation encapsulates a modification that can be applied to a document. An implementing class might for example implement a move operation that moves all selected entities by a given vector.
|
inline |
|
inlinevirtual |
|
pure virtual |
Applies this operation to selection in the given document.
This is used for both previews and the actual apply. In case of a preview, the given document is a temporary document with a storage that is linked to the real document for realistic condiditions for the preview.
Implemented in RPasteOperation, RAddObjectsOperation, RMixedOperation, RChangePropertyOperation, RClipboardOperation, RDeleteObjectsOperation, RDeleteAllEntitiesOperation, RMoveReferencePointOperation, RMoveSelectionOperation, RScaleSelectionOperation, RCopyOperation, RDeleteSelectionOperation, and RClickReferencePointOperation.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Keep child entities (e.g.
keep block attributes when deleting block references)
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |