QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RMixedOperation Class Reference

Implementation of an operation that adds, modifies and deletes entities. More...

#include <RMixedOperation.h>

Inheritance diagram for RMixedOperation:
ROperation RRequireHeap RNonCopyable

List of all members.

Public Types

enum  Mode {
  NoMode = 0x0, UseCurrentAttributes = 0x1, Delete = 0x2, ForceNew = 0x4,
  EndCycle = 0x8
}

Public Member Functions

QSharedPointer< RObjectaddObject (const QSharedPointer< RObject > &obj, bool useCurrentAttributes=true, bool forceNew=false)
virtual RTransaction apply (RDocument &document, bool preview=false) const
 Applies this operation to selection in the given document.
void deleteObject (const QSharedPointer< RObject > &obj)
void endCycle ()
 RMixedOperation (bool undoable=true)
 Copyright (c) 2011-2013 by Andrew Mustun.
virtual ~RMixedOperation ()
- Public Member Functions inherited from ROperation
RS::EntityType getEntityTypeFilter () const
 ROperation (bool undoable=true, RS::EntityType entityTypeFilter=RS::EntityAll)
void setRecordAffectedObjects (bool on)
void setSpatialIndexDisabled (bool on)
virtual ~ROperation ()
- Public Member Functions inherited from RRequireHeap
void doDelete ()

Protected Member Functions

bool getMode (const RMixedOperation::Modes &modes, RMixedOperation::Mode mode) const
void setMode (RMixedOperation::Modes &modes, RMixedOperation::Mode mode, bool on=true)

Private Attributes

QList< QPair< QSharedPointer
< RObject >, Modes > > 
list

Additional Inherited Members

- Protected Attributes inherited from ROperation
RS::EntityType entityTypeFilter
bool recordAffectedObjects
bool spatialIndexDisabled
bool undoable

Detailed Description

Implementation of an operation that adds, modifies and deletes entities.

Scriptable:
This class is wrapped for script environments.

Member Enumeration Documentation

Enumerator:
NoMode 
UseCurrentAttributes 
Delete 
ForceNew 
EndCycle 

Constructor & Destructor Documentation

RMixedOperation::RMixedOperation ( bool  undoable = true)

Copyright (c) 2011-2013 by Andrew Mustun.

All rights reserved.

This file is part of the QCAD project.

QCAD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

QCAD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with QCAD.

virtual RMixedOperation::~RMixedOperation ( )
inlinevirtual

Member Function Documentation

QSharedPointer< RObject > RMixedOperation::addObject ( const QSharedPointer< RObject > &  obj,
bool  useCurrentAttributes = true,
bool  forceNew = false 
)
RTransaction RMixedOperation::apply ( RDocument document,
bool  preview = false 
) const
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.

Implements ROperation.

void RMixedOperation::deleteObject ( const QSharedPointer< RObject > &  obj)
void RMixedOperation::endCycle ( )
bool RMixedOperation::getMode ( const RMixedOperation::Modes &  modes,
RMixedOperation::Mode  mode 
) const
protected
void RMixedOperation::setMode ( RMixedOperation::Modes &  modes,
RMixedOperation::Mode  mode,
bool  on = true 
)
protected

Member Data Documentation

QList<QPair<QSharedPointer<RObject>, Modes> > RMixedOperation::list
private

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