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

Interface for interaction between a graphics document and a user. More...

#include <RDocumentInterface.h>

List of all members.

Public Types

enum  IoErrorCode {
  IoErrorNoError, IoErrorNoImporterFound, IoErrorZeroSize, IoErrorNotFound,
  IoErrorPermission, IoErrorGeneralImportError, IoErrorGeneralImportUrlError
}

Public Member Functions

void addAuxShapeToPreview (RShape &shape)
 Exports the given shape to the preview.
void addCoordinateListener (RCoordinateListener *l)
 Adds a listener for coordinate events.
void addEntityToPreview (REntity &entity)
 Adds the given entity to the preview of all scenes / view.
void addShapeToPreview (RShape &shape, const RColor &color, const QBrush &brush, RLineweight::Lineweight lineweight, Qt::PenStyle style, const QList< qreal > &dashValues=RDEFAULT_QLIST_QREAL)
void addZoomBoxToPreview (const RBox &box)
 Adds a box to the preview that represents a zoom box displayed while drawing a window to magnify an area.
RTransaction applyOperation (const ROperation *operation)
 Applies the given operation to the document.
void autoZoom (int margin=RDEFAULT_MIN1)
 Auto zooms in the view that currently has the focus.
void beginPreview ()
 After calling this function, all exports go into the preview of the scene instead of the scene itself.
void clear ()
 Resets the document to its original, empty state.
void clearCaches ()
 Clears cached variables to ensure they are re-initialized before the next use.
void clearPreview ()
 Clears the preview of all scenes.
void clearProperties ()
 Notifies all property listeners that no properties are relevant at this point.
void clearSelection ()
 Clears the current selection and updates the scenes / views accordingly.
void commandEvent (RCommandEvent &event)
void commandEventPreview (RCommandEvent &event)
void coordinateEvent (RCoordinateEvent &event)
void coordinateEventPreview (RCoordinateEvent &event)
void deleteTerminatedActions ()
 Deletes all actions that have been terminated.
void deselectAll ()
 De-select all entities, for convenience.
void deselectEntities (const QSet< REntity::Id > &entityIds)
 Deselects the given entities and updates the scenes accordingly.
void deselectEntity (REntity::Id entityId)
 Deselects the given entity and updates the scenes accordingly.
void disableMouseTracking ()
void disableUpdates ()
void enableMouseTracking ()
void enableUpdates ()
void endPreview ()
 After calling this function, all exports go into the scene again and not the preview anymore.
bool exportFile (const QString &fileName, const QString &fileVersion="", bool resetModified=true)
RAction::ClickMode getClickMode ()
REntity::Id getClosestEntity (RMouseEvent &event)
REntity::Id getClosestEntity (const RVector &position, double range, bool includeLockedLayers=true)
QString getCorrectedFileName (const QString &fileName, const QString &fileVersion)
RActiongetCurrentAction ()
RColor getCurrentColor ()
RLinetype getCurrentLinetype ()
RLineweight::Lineweight getCurrentLineweight ()
RUcs getCurrentUcs ()
QString getCurrentUcsName ()
bool getCursorOverride () const
RVector getCursorPosition () const
RDocumentgetDocument ()
QList< RGraphicsScene * > getGraphicsScenes ()
RGraphicsViewgetGraphicsViewWithFocus ()
RGraphicsViewgetLastKnownViewWithFocus ()
RVector getLastPosition () const
RVector getRelativeZero () const
RScriptHandlergetScriptHandler (const QString &extension)
RSnapgetSnap ()
 Gets the current snap object.
RSnapRestrictiongetSnapRestriction ()
RStoragegetStorage ()
bool hasCurrentAction ()
bool hasSelection ()
void highlightEntity (REntity::Id entityId)
 
void highlightReferencePoint (const RVector &position)
 Highlights the given reference point.
RDocumentInterface::IoErrorCode importFile (const QString &fileName, const QString &nameFilter="", bool notify=true)
 Imports the given file if there is a file importer registered for that file type.
RDocumentInterface::IoErrorCode importUrl (const QUrl &url, bool notify=true)
bool isClipboard ()
bool isPreviewEmpty ()
bool isRelativeZeroLocked () const
bool isScriptRunning ()
bool isSuspended ()
void keepPreview ()
 Makes sure that the current preview survives one mouse move.
void keyPressEvent (QKeyEvent &event)
void keyReleaseEvent (QKeyEvent &event)
void killAllActions ()
void lockRelativeZero ()
 Locks the position of the relative zero point.
void mouseDoubleClickEvent (RMouseEvent &event)
 Forwards the given mouse double click event to the current action.
void mouseMoveEvent (RMouseEvent &event)
 Forwards the given mouse move event to the current action.
void mousePressEvent (RMouseEvent &event)
 Forwards the given mouse press event to the current action.
void mouseReleaseEvent (RMouseEvent &event)
 Forwards the given mouse release event to the current action.
void notifyCoordinateListeners ()
 Notifies all coordinate listeners that the coordinate has changed to position.
void objectChangeEvent (QList< RObject::Id > &objectIds)
 Triggers an objectChangeEvent for every object in the given set.
void panGestureEvent (QPanGesture &gesture)
 Forwards the given gesture to the current action.
void pinchGestureEvent (QPinchGesture &gesture)
 Forwards the given gesture to the current action.
void previewOperation (const ROperation *operation)
 Previews the given operation by applying the operation to a temporary document that is linked to the (read only) document.
void propertyChangeEvent (RPropertyEvent &event)
 Forwards the given event to the current action to signal that a property value has been changed.
void queueAction (RAction *action)
 RDocumentInterface (RDocument &document)
void redo ()
 Transaction based redo.
void regenerateScenes (bool undone=false)
 Regenerates all scenes attached to this document interface by exporting the document into them.
void regenerateScenes (QSet< REntity::Id > &entityIds, bool updateViews)
 Regenerates the given part of all scenes attached to this document interface by exporting the given list of entities into them.
void regenerateScenes (REntity::Id entityId, bool updateViews)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void regenerateViews (bool force=false)
 Regenerates all views.
void registerScene (RGraphicsScene &scene)
 Registers a scene with this document interface.
void repaintViews ()
 Repaints all views.
void resume ()
void selectAll ()
 Selects all and updates the scenes / views accordingly.
void selectBoxXY (const RBox &box, bool add=false)
void selectEntities (const QSet< REntity::Id > &entityIds, bool add=false)
 Selects the given entities and updates the scenes accordingly.
void selectEntity (REntity::Id entityId, bool add=false)
 Selects the given entity and updates the scenes accordingly.
void setClickMode (RAction::ClickMode m)
 Sets the click mode of the current action to the given mode.
void setCurrentAction (RAction *action)
 Sets the current action.
void setCurrentBlock (const RBlock &block)
 Sets the current block that is in use for all views attached to this document interface.
void setCurrentBlock (const QString &blockName)
 Sets the current block based on the given block name.
void setCurrentColor (const RColor &color)
void setCurrentLayer (const RLayer &layer)
 Sets the current Layer that is in use for all views attached to this document interface.
void setCurrentLayer (const QString &layerName)
 Sets the current layer based on the given layer name.
void setCurrentLinetype (RLinetype lt)
void setCurrentLineweight (RLineweight::Lineweight lw)
void setCurrentUcs (const RUcs &ucs)
 Sets the current UCS (user coordinate system) that is in use for all views attached to this document interface.
void setCurrentUcs (const QString &ucsName)
 Sets the current UCS based on the given UCS name.
void setCurrentView (const QString &viewName)
 Sets the current view based on the given view name.
void setCursor (const QCursor &cursor, bool global=true)
void setCursorOverride (bool on)
 Force cursor to be shown.
void setCursorPosition (const RVector &p)
void setDefaultAction (RAction *action)
 Sets the action that is active if no other action is active.
void setLastKnownViewWithFocus (RGraphicsView *view)
void setNotifyListeners (bool on)
void setRelativeZero (const RVector &p)
void setSnap (RSnap *snap)
 Sets the current snap object.
void setSnapRestriction (RSnapRestriction *snapRestriction)
 Sets the current snap restriction object.
void showPropertiesOf (REntity &entity)
 Notifies all property listeners that the properties of the given entity should be shown.
RVector snap (RMouseEvent &event)
 Uses the current snap to snap the given position to a grid point, end point, etc.
void suspend ()
void swipeGestureEvent (QSwipeGesture &gesture)
 Forwards the given gesture to the current action.
void tabletEvent (RTabletEvent &event)
 Forwards the given tablet event to the current action.
void terminateEvent (RTerminateEvent &event)
void ucsSetEvent (const QString &ucsName)
 Called immediately after the user has activated a new UCS to be used as current UCS.
void undo ()
 Transaction based undo.
void unlockRelativeZero ()
 Unlocks the position of the relative zero point.
void unregisterScene (RGraphicsScene &scene)
 Unregisters a scene from this document interface.
void updateAllEntities ()
 Marks all entities with any kind of caching as dirty, so they are regenerated next time regenerate is called.
void updateSelectionStatus (QSet< REntity::Id > &entityIds, bool updateViews)
void updateSelectionStatus (REntity::Id entityId, bool updateViews)
void wheelEvent (RWheelEvent &event)
 Forwards the given mouse wheel event to the current action.
void zoomIn ()
 Zooms in at the view that currently has the focus.
void zoomOut ()
 Zooms out at the view that currently has the focus.
void zoomPrevious ()
 Zooms to the previously visible viewport.
void zoomTo (const RBox &region, int margin=0)
 Zooms to the given region.
bool zoomToSelection ()
 ~RDocumentInterface ()

Static Public Member Functions

static RDocumentInterfacegetClipboard ()

Private Member Functions

void handleClickEvent (RAction &action, RMouseEvent &event)
 Helper function for mouseReleaseEvent.
void previewClickEvent (RAction &action, RMouseEvent &event)
 Helper function for mouseMoveEvent.

Private Attributes

bool allowUpdate
QList< RCoordinateListener * > coordinateListeners
QStack< RAction * > currentActions
RSnapcurrentSnap
RSnapRestrictioncurrentSnapRestriction
RUcs currentUcs
QString currentUcsName
bool cursorOverride
RVector cursorPosition
RActiondefaultAction
bool deleting
RDocumentdocument
bool keepPreviewOnce
RGraphicsViewlastKnownViewWithFocus
RVector lastPosition
bool mouseTrackingEnabled
bool notifyListeners
QQueue< RAction * > queuedActions
RVector relativeZero
bool relativeZeroLocked
QList< RGraphicsScene * > scenes
QMap< QString, RScriptHandler * > scriptHandlers
bool suspended

Static Private Attributes

static RDocumentInterfaceclipboard = NULL
 Copyright (c) 2011-2013 by Andrew Mustun.

Detailed Description

Interface for interaction between a graphics document and a user.

Typically one document interface exists for every document that is open in an MDI application. The document interface owns and links the various scenes, views and the currently active action.

A document interface can own multiple graphics scenes, each of which can have multiple views attached to it. The views forward all user events (mouse moves, mouse clicks, etc.) to the document interface for processing. The document interface dispatches the events to the currently active action object.

Scriptable:
This class is wrapped for script environments.

Member Enumeration Documentation

Enumerator:
IoErrorNoError 

No error occurred during import or export.

IoErrorNoImporterFound 

No suitable importer was found.

IoErrorZeroSize 

File size is zero bytes.

IoErrorNotFound 

File not found.

IoErrorPermission 

No permissions to read file.

IoErrorGeneralImportError 

General import error, i.e.

non of the errors above.

IoErrorGeneralImportUrlError 

General import error if an URL was given, i.e.

non of the errors above.


Constructor & Destructor Documentation

RDocumentInterface::RDocumentInterface ( RDocument document)
RDocumentInterface::~RDocumentInterface ( )

Member Function Documentation

void RDocumentInterface::addAuxShapeToPreview ( RShape shape)

Exports the given shape to the preview.

Todo:
Support other shapes.
void RDocumentInterface::addCoordinateListener ( RCoordinateListener l)

Adds a listener for coordinate events.

This can for example be a document specific widget that displays the current coordinate, e.g. rulers.

void RDocumentInterface::addEntityToPreview ( REntity entity)

Adds the given entity to the preview of all scenes / view.

void RDocumentInterface::addShapeToPreview ( RShape shape,
const RColor color,
const QBrush &  brush,
RLineweight::Lineweight  lineweight,
Qt::PenStyle  style,
const QList< qreal > &  dashValues = RDEFAULT_QLIST_QREAL 
)
void RDocumentInterface::addZoomBoxToPreview ( const RBox box)

Adds a box to the preview that represents a zoom box displayed while drawing a window to magnify an area.

RTransaction RDocumentInterface::applyOperation ( const ROperation operation)

Applies the given operation to the document.

The operation might for example do something with the current selection.

void RDocumentInterface::autoZoom ( int  margin = RDEFAULT_MIN1)

Auto zooms in the view that currently has the focus.

void RDocumentInterface::beginPreview ( )

After calling this function, all exports go into the preview of the scene instead of the scene itself.

See also:
endPreview
void RDocumentInterface::clear ( )

Resets the document to its original, empty state.

void RDocumentInterface::clearCaches ( )

Clears cached variables to ensure they are re-initialized before the next use.

void RDocumentInterface::clearPreview ( )

Clears the preview of all scenes.

void RDocumentInterface::clearProperties ( )

Notifies all property listeners that no properties are relevant at this point.

This can for example clear the property editor and other property listeners.

void RDocumentInterface::clearSelection ( )

Clears the current selection and updates the scenes / views accordingly.

Todo:
refactor into operations
void RDocumentInterface::commandEvent ( RCommandEvent event)
void RDocumentInterface::commandEventPreview ( RCommandEvent event)
void RDocumentInterface::coordinateEvent ( RCoordinateEvent event)
void RDocumentInterface::coordinateEventPreview ( RCoordinateEvent event)
void RDocumentInterface::deleteTerminatedActions ( )

Deletes all actions that have been terminated.

void RDocumentInterface::deselectAll ( )

De-select all entities, for convenience.

See also:
RDocumentInterface::clearSelection()
void RDocumentInterface::deselectEntities ( const QSet< REntity::Id > &  entityIds)

Deselects the given entities and updates the scenes accordingly.

void RDocumentInterface::deselectEntity ( REntity::Id  entityId)

Deselects the given entity and updates the scenes accordingly.

void RDocumentInterface::disableMouseTracking ( )
void RDocumentInterface::disableUpdates ( )
void RDocumentInterface::enableMouseTracking ( )
void RDocumentInterface::enableUpdates ( )
void RDocumentInterface::endPreview ( )

After calling this function, all exports go into the scene again and not the preview anymore.

See also:
beginPreview
bool RDocumentInterface::exportFile ( const QString &  fileName,
const QString &  fileVersion = "",
bool  resetModified = true 
)
RAction::ClickMode RDocumentInterface::getClickMode ( )
RDocumentInterface & RDocumentInterface::getClipboard ( )
static
REntity::Id RDocumentInterface::getClosestEntity ( RMouseEvent event)
Returns:
ID of the entity that is the closest to the mouse cursor of the given event.

The event is also used to determine the maximum distance from the cursor to the entity in the view in which the event originated.

REntity::Id RDocumentInterface::getClosestEntity ( const RVector position,
double  range,
bool  includeLockedLayers = true 
)
QString RDocumentInterface::getCorrectedFileName ( const QString &  fileName,
const QString &  fileVersion 
)
RAction * RDocumentInterface::getCurrentAction ( )
Returns:
Pointer to the current action or NULL. Used by script interfaces.
RColor RDocumentInterface::getCurrentColor ( )
RLinetype RDocumentInterface::getCurrentLinetype ( )
RLineweight::Lineweight RDocumentInterface::getCurrentLineweight ( )
RUcs RDocumentInterface::getCurrentUcs ( )
Returns:
The current UCS (user coordinate system).
QString RDocumentInterface::getCurrentUcsName ( )
Returns:
The current UCS name.
bool RDocumentInterface::getCursorOverride ( ) const
RVector RDocumentInterface::getCursorPosition ( ) const
Returns:
The last known mouse cursor position in model coordinates.
RDocument & RDocumentInterface::getDocument ( )
Returns:
Reference to underlying document.
QList< RGraphicsScene * > RDocumentInterface::getGraphicsScenes ( )
Returns:
List of attached graphics scenes.
RGraphicsView * RDocumentInterface::getGraphicsViewWithFocus ( )
Returns:
The graphics view that currently has the focus or the first attached view or NULL if no view is attached.
RGraphicsView * RDocumentInterface::getLastKnownViewWithFocus ( )
RVector RDocumentInterface::getLastPosition ( ) const
Returns:
The last used position, even if the relative zero is locked in one position.
RVector RDocumentInterface::getRelativeZero ( ) const
Returns:
The relative zero position in model coordinates.
RScriptHandler * RDocumentInterface::getScriptHandler ( const QString &  extension)
   \par Non-Scriptable:

This function is not available in script environments.

RSnap * RDocumentInterface::getSnap ( )

Gets the current snap object.

RSnapRestriction * RDocumentInterface::getSnapRestriction ( )
RStorage & RDocumentInterface::getStorage ( )
Returns:
Reference to underlying storage.
void RDocumentInterface::handleClickEvent ( RAction action,
RMouseEvent event 
)
private

Helper function for mouseReleaseEvent.

Triggers an appropriate higher level event for mouse clicks for the given action. The event type depends on the action's current ClickMode.

bool RDocumentInterface::hasCurrentAction ( )
Returns:
True if at least one action is active.
bool RDocumentInterface::hasSelection ( )
Returns:
True if the document has selected entities.
void RDocumentInterface::highlightEntity ( REntity::Id  entityId)

void RDocumentInterface::highlightReferencePoint ( const RVector position)

Highlights the given reference point.

RDocumentInterface::IoErrorCode RDocumentInterface::importFile ( const QString &  fileName,
const QString &  nameFilter = "",
bool  notify = true 
)

Imports the given file if there is a file importer registered for that file type.

RDocumentInterface::IoErrorCode RDocumentInterface::importUrl ( const QUrl &  url,
bool  notify = true 
)
bool RDocumentInterface::isClipboard ( )
inline
bool RDocumentInterface::isPreviewEmpty ( )
Returns:
True if the previews of all scenes are empty. This is used to detect if the views needs to be redrawn after a mouse move event.
bool RDocumentInterface::isRelativeZeroLocked ( ) const
Returns:
true if the position of the relative zero point is locked.
bool RDocumentInterface::isScriptRunning ( )
bool RDocumentInterface::isSuspended ( )
inline
void RDocumentInterface::keepPreview ( )

Makes sure that the current preview survives one mouse move.

void RDocumentInterface::keyPressEvent ( QKeyEvent &  event)
void RDocumentInterface::keyReleaseEvent ( QKeyEvent &  event)
void RDocumentInterface::killAllActions ( )
void RDocumentInterface::lockRelativeZero ( )

Locks the position of the relative zero point.

void RDocumentInterface::mouseDoubleClickEvent ( RMouseEvent event)

Forwards the given mouse double click event to the current action.

void RDocumentInterface::mouseMoveEvent ( RMouseEvent event)

Forwards the given mouse move event to the current action.

void RDocumentInterface::mousePressEvent ( RMouseEvent event)

Forwards the given mouse press event to the current action.

void RDocumentInterface::mouseReleaseEvent ( RMouseEvent event)

Forwards the given mouse release event to the current action.

void RDocumentInterface::notifyCoordinateListeners ( )

Notifies all coordinate listeners that the coordinate has changed to position.

void RDocumentInterface::objectChangeEvent ( QList< RObject::Id > &  objectIds)

Triggers an objectChangeEvent for every object in the given set.

void RDocumentInterface::panGestureEvent ( QPanGesture &  gesture)

Forwards the given gesture to the current action.

void RDocumentInterface::pinchGestureEvent ( QPinchGesture &  gesture)

Forwards the given gesture to the current action.

void RDocumentInterface::previewClickEvent ( RAction action,
RMouseEvent event 
)
private

Helper function for mouseMoveEvent.

Triggers an appropriate preview event for the given action and the current click mode the action is in.

void RDocumentInterface::previewOperation ( const ROperation operation)

Previews the given operation by applying the operation to a temporary document that is linked to the (read only) document.

void RDocumentInterface::propertyChangeEvent ( RPropertyEvent event)

Forwards the given event to the current action to signal that a property value has been changed.

void RDocumentInterface::queueAction ( RAction action)
void RDocumentInterface::redo ( )

Transaction based redo.

void RDocumentInterface::regenerateScenes ( bool  undone = false)

Regenerates all scenes attached to this document interface by exporting the document into them.

void RDocumentInterface::regenerateScenes ( QSet< REntity::Id > &  entityIds,
bool  updateViews 
)

Regenerates the given part of all scenes attached to this document interface by exporting the given list of entities into them.

void RDocumentInterface::regenerateScenes ( REntity::Id  entityId,
bool  updateViews 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

void RDocumentInterface::regenerateViews ( bool  force = false)

Regenerates all views.

void RDocumentInterface::registerScene ( RGraphicsScene scene)

Registers a scene with this document interface.

void RDocumentInterface::repaintViews ( )

Repaints all views.

void RDocumentInterface::resume ( )
void RDocumentInterface::selectAll ( )

Selects all and updates the scenes / views accordingly.

void RDocumentInterface::selectBoxXY ( const RBox box,
bool  add = false 
)
void RDocumentInterface::selectEntities ( const QSet< REntity::Id > &  entityIds,
bool  add = false 
)

Selects the given entities and updates the scenes accordingly.

Parameters:
addTrue to add to the current selection, false otherwise.
void RDocumentInterface::selectEntity ( REntity::Id  entityId,
bool  add = false 
)

Selects the given entity and updates the scenes accordingly.

Parameters:
addTrue to add to the current selection, false otherwise.
Todo:
refactor into operations
void RDocumentInterface::setClickMode ( RAction::ClickMode  m)

Sets the click mode of the current action to the given mode.

See also:
ClickMode
void RDocumentInterface::setCurrentAction ( RAction action)

Sets the current action.

This action will receive all events until it finishes.

void RDocumentInterface::setCurrentBlock ( const RBlock block)

Sets the current block that is in use for all views attached to this document interface.

void RDocumentInterface::setCurrentBlock ( const QString &  blockName)

Sets the current block based on the given block name.

void RDocumentInterface::setCurrentColor ( const RColor color)
void RDocumentInterface::setCurrentLayer ( const RLayer layer)

Sets the current Layer that is in use for all views attached to this document interface.

void RDocumentInterface::setCurrentLayer ( const QString &  layerName)

Sets the current layer based on the given layer name.

void RDocumentInterface::setCurrentLinetype ( RLinetype  lt)
void RDocumentInterface::setCurrentLineweight ( RLineweight::Lineweight  lw)
void RDocumentInterface::setCurrentUcs ( const RUcs ucs)

Sets the current UCS (user coordinate system) that is in use for all views attached to this document interface.

void RDocumentInterface::setCurrentUcs ( const QString &  ucsName)

Sets the current UCS based on the given UCS name.

Todo:
refactor to store current UCS in document / storage like layer
void RDocumentInterface::setCurrentView ( const QString &  viewName)

Sets the current view based on the given view name.

void RDocumentInterface::setCursor ( const QCursor &  cursor,
bool  global = true 
)
void RDocumentInterface::setCursorOverride ( bool  on)

Force cursor to be shown.

Used for e.g. snap to intersection manual where we want to show the cursor eventhough we are in entity picking mode.

void RDocumentInterface::setCursorPosition ( const RVector p)
void RDocumentInterface::setDefaultAction ( RAction action)

Sets the action that is active if no other action is active.

void RDocumentInterface::setLastKnownViewWithFocus ( RGraphicsView view)
void RDocumentInterface::setNotifyListeners ( bool  on)
inline
void RDocumentInterface::setRelativeZero ( const RVector p)
void RDocumentInterface::setSnap ( RSnap snap)

Sets the current snap object.

The document interface takes ownership of the object.

void RDocumentInterface::setSnapRestriction ( RSnapRestriction snapRestriction)

Sets the current snap restriction object.

The document interface takes ownership of the object.

void RDocumentInterface::showPropertiesOf ( REntity entity)

Notifies all property listeners that the properties of the given entity should be shown.

RVector RDocumentInterface::snap ( RMouseEvent event)

Uses the current snap to snap the given position to a grid point, end point, etc.

Returns:
Coordinate to which was snapped.
void RDocumentInterface::suspend ( )
void RDocumentInterface::swipeGestureEvent ( QSwipeGesture &  gesture)

Forwards the given gesture to the current action.

void RDocumentInterface::tabletEvent ( RTabletEvent event)

Forwards the given tablet event to the current action.

void RDocumentInterface::terminateEvent ( RTerminateEvent event)
void RDocumentInterface::ucsSetEvent ( const QString &  ucsName)

Called immediately after the user has activated a new UCS to be used as current UCS.

void RDocumentInterface::undo ( )

Transaction based undo.

void RDocumentInterface::unlockRelativeZero ( )

Unlocks the position of the relative zero point.

void RDocumentInterface::unregisterScene ( RGraphicsScene scene)

Unregisters a scene from this document interface.

void RDocumentInterface::updateAllEntities ( )

Marks all entities with any kind of caching as dirty, so they are regenerated next time regenerate is called.

void RDocumentInterface::updateSelectionStatus ( QSet< REntity::Id > &  entityIds,
bool  updateViews 
)
void RDocumentInterface::updateSelectionStatus ( REntity::Id  entityId,
bool  updateViews 
)
void RDocumentInterface::wheelEvent ( RWheelEvent event)

Forwards the given mouse wheel event to the current action.

void RDocumentInterface::zoomIn ( )

Zooms in at the view that currently has the focus.

void RDocumentInterface::zoomOut ( )

Zooms out at the view that currently has the focus.

void RDocumentInterface::zoomPrevious ( )

Zooms to the previously visible viewport.

void RDocumentInterface::zoomTo ( const RBox region,
int  margin = 0 
)

Zooms to the given region.

bool RDocumentInterface::zoomToSelection ( )

Member Data Documentation

bool RDocumentInterface::allowUpdate
private
RDocumentInterface * RDocumentInterface::clipboard = NULL
staticprivate

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.

QList<RCoordinateListener*> RDocumentInterface::coordinateListeners
private
QStack<RAction*> RDocumentInterface::currentActions
private
RSnap* RDocumentInterface::currentSnap
private
RSnapRestriction* RDocumentInterface::currentSnapRestriction
private
RUcs RDocumentInterface::currentUcs
private
QString RDocumentInterface::currentUcsName
private
bool RDocumentInterface::cursorOverride
private
RVector RDocumentInterface::cursorPosition
private
RAction* RDocumentInterface::defaultAction
private
bool RDocumentInterface::deleting
private
RDocument& RDocumentInterface::document
private
bool RDocumentInterface::keepPreviewOnce
private
RGraphicsView* RDocumentInterface::lastKnownViewWithFocus
private
RVector RDocumentInterface::lastPosition
private
bool RDocumentInterface::mouseTrackingEnabled
private
bool RDocumentInterface::notifyListeners
private
QQueue<RAction*> RDocumentInterface::queuedActions
private
RVector RDocumentInterface::relativeZero
private
bool RDocumentInterface::relativeZeroLocked
private
QList<RGraphicsScene*> RDocumentInterface::scenes
private
QMap<QString, RScriptHandler*> RDocumentInterface::scriptHandlers
private
bool RDocumentInterface::suspended
private

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