te::edit::MoveGeometryTool Class Reference

This class implements a concrete tool to move geometries. More...

#include <MoveGeometryTool.h>

Inheritance diagram for te::edit::MoveGeometryTool:
te::edit::GeometriesUpdateTool te::qt::widgets::AbstractTool QObject

Signals

void geometriesEdited ()
 
void geometriesStarted ()
 
void toolDeleted ()
 

Public Member Functions

void disableMouseEvent (QMouseEvent::Type mEvent)
 
std::string getLayerId ()
 
bool isInUse () const
 
void resetVisualizationTool ()
 
void setInUse (const bool &status)
 
void setLayer (te::map::AbstractLayer *layer)
 
Initializer Methods

Methods related to instantiation and destruction.

 MoveGeometryTool (te::qt::widgets::MapDisplay *display, const te::map::AbstractLayerPtr &layer, QObject *parent=0)
 It constructs a move geometry tool associated with the given map display. More...
 
 ~MoveGeometryTool ()
 Destructor. More...
 
AbstractTool Methods

Methods related with tool behavior.

bool mousePressEvent (QMouseEvent *e)
 This event handler can be reimplemented in a concrete tool class to receive mouse press events for the watched object. More...
 
bool mouseMoveEvent (QMouseEvent *e)
 This event handler can be reimplemented in a concrete tool class to receive mouse move events for the watched object. More...
 
bool mouseReleaseEvent (QMouseEvent *e)
 This event handler can be reimplemented in a concrete tool class to receive mouse release events for the watched object. More...
 
AbstractTool Methods

Methods related with tool behavior.

virtual bool mouseDoubleClickEvent (QMouseEvent *e)
 This event handler can be reimplemented in a concrete tool class to receive mouse double click events for the watched object. More...
 
virtual bool keyPressEvent (QKeyEvent *e)
 This event handler can be reimplemented in a concrete tool class to receive key press events for the watched object. More...
 

Protected Member Functions

void setCursor (const QCursor &cursor)
 It sets the tool cursor. More...
 

Protected Attributes

QCursor m_curCursor
 The current mapdisplay cursor. More...
 
QCursor m_cursor
 The default tool cursor. More...
 
QPointF m_delta
 Difference between pressed point and destination point on mouse move. More...
 
MapDisplaym_display
 The map display associated with the tool. More...
 
Featurem_feature
 
bool m_isInUse
 
te::map::AbstractLayerm_layer
 
QMouseEvent::Type m_mEvent
 
bool m_moveStarted
 Flag that indicates if move operation was started. More...
 
QPointF m_origin
 Origin point on mouse pressed. More...
 
UndoStackManagerm_stack
 
std::vector< te::edit::Feature * > m_vecFeatures
 

Private Member Functions

te::gm::Envelope buildEnvelope (const QPointF &pos)
 
void draw ()
 
void pickFeature (const QPointF &pos)
 
void reset ()
 
void storeFeature ()
 
void storeUndoCommand ()
 
void updateCursor ()
 

Detailed Description

This class implements a concrete tool to move geometries.

This class implements a concrete tool to rotate geometries.

Definition at line 66 of file MoveGeometryTool.h.

Constructor & Destructor Documentation

te::edit::MoveGeometryTool::MoveGeometryTool ( te::qt::widgets::MapDisplay display,
const te::map::AbstractLayerPtr layer,
QObject parent = 0 
)

It constructs a move geometry tool associated with the given map display.

Parameters
displayThe map display associated with the tool.
parentThe tool's parent.
Note
The tool will NOT take the ownership of the given pointers.

Definition at line 52 of file MoveGeometryTool.cpp.

References draw(), and updateCursor().

te::edit::MoveGeometryTool::~MoveGeometryTool ( )

Destructor.

Definition at line 63 of file MoveGeometryTool.cpp.

References te::common::FreeContents(), and m_vecFeatures.

Member Function Documentation

te::gm::Envelope te::edit::MoveGeometryTool::buildEnvelope ( const QPointF &  pos)
private
void te::edit::GeometriesUpdateTool::disableMouseEvent ( QMouseEvent::Type  mEvent)
inherited

Definition at line 82 of file GeometriesUpdateTool.cpp.

References te::edit::GeometriesUpdateTool::m_mEvent.

void te::edit::GeometriesUpdateTool::geometriesStarted ( )
signalinherited
std::string te::edit::GeometriesUpdateTool::getLayerId ( )
inherited
bool te::edit::GeometriesUpdateTool::isInUse ( ) const
inherited
bool te::qt::widgets::AbstractTool::keyPressEvent ( QKeyEvent *  e)
virtualinherited

This event handler can be reimplemented in a concrete tool class to receive key press events for the watched object.

Parameters
eThe key event.
Returns
If you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.

Reimplemented in te::qt::widgets::Measure.

Definition at line 101 of file AbstractTool.cpp.

Referenced by te::qt::widgets::AbstractTool::eventFilter().

bool te::qt::widgets::AbstractTool::mouseDoubleClickEvent ( QMouseEvent *  e)
virtualinherited

This event handler can be reimplemented in a concrete tool class to receive mouse double click events for the watched object.

Parameters
eThe mouse event.
Returns
If you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.
Note
The AbstractTool will also receive mouse press and mouse release events in addition to the double click event. It is up to the developer to ensure that the application interprets these events correctly.

Reimplemented in te::edit::VertexTool, te::qt::widgets::Measure, te::edit::SplitPolygonTool, te::edit::CreatePolygonTool, te::edit::CreateLineTool, te::edit::CreatePointTool, te::qt::widgets::PolygonAcquire, te::edit::AggregateAreaTool, te::edit::SubtractAreaTool, and te::mnt::ProfileTools.

Definition at line 96 of file AbstractTool.cpp.

Referenced by te::qt::widgets::AbstractTool::eventFilter().

bool te::edit::MoveGeometryTool::mouseMoveEvent ( QMouseEvent *  e)
virtual

This event handler can be reimplemented in a concrete tool class to receive mouse move events for the watched object.

Parameters
eThe mouse event.
Returns
If you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.

Reimplemented from te::qt::widgets::AbstractTool.

Definition at line 119 of file MoveGeometryTool.cpp.

References draw(), te::edit::GetPosition(), m_delta, te::qt::widgets::AbstractTool::m_display, m_moveStarted, m_origin, m_vecFeatures, te::edit::MoveGeometry(), and te::qt::widgets::MapDisplay::transform().

bool te::edit::MoveGeometryTool::mousePressEvent ( QMouseEvent *  e)
virtual
bool te::edit::MoveGeometryTool::mouseReleaseEvent ( QMouseEvent *  e)
virtual

This event handler can be reimplemented in a concrete tool class to receive mouse release events for the watched object.

Parameters
eThe mouse event.
Returns
If you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.

Reimplemented from te::qt::widgets::AbstractTool.

Definition at line 143 of file MoveGeometryTool.cpp.

References draw(), te::edit::GeometriesUpdateTool::geometriesEdited(), m_delta, m_moveStarted, storeFeature(), and storeUndoCommand().

void te::edit::MoveGeometryTool::reset ( )
private
void te::edit::MoveGeometryTool::resetVisualizationTool ( )
virtual
void te::edit::GeometriesUpdateTool::setInUse ( const bool status)
inherited
void te::edit::GeometriesUpdateTool::setLayer ( te::map::AbstractLayer layer)
inherited
void te::edit::MoveGeometryTool::storeFeature ( )
private
void te::edit::GeometriesUpdateTool::toolDeleted ( )
signalinherited

Member Data Documentation

QCursor te::qt::widgets::AbstractTool::m_curCursor
protectedinherited
QCursor te::qt::widgets::AbstractTool::m_cursor
protectedinherited
QPointF te::edit::MoveGeometryTool::m_delta
protected

Difference between pressed point and destination point on mouse move.

Definition at line 126 of file MoveGeometryTool.h.

Referenced by draw(), mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), and reset().

MapDisplay* te::qt::widgets::AbstractTool::m_display
protectedinherited

The map display associated with the tool.

Definition at line 171 of file AbstractTool.h.

Referenced by te::qt::widgets::AbstractTool::AbstractTool(), te::qt::widgets::Zoom::applyZoom(), te::edit::MergeGeometriesTool::buildEnvelope(), te::edit::EditInfoTool::buildEnvelope(), te::qt::widgets::PointMove::buildEnvelope(), te::edit::SubtractAreaTool::buildEnvelope(), te::edit::RotateGeometryTool::buildEnvelope(), te::edit::DeleteGeometryTool::buildEnvelope(), te::edit::DeletePartTool::buildEnvelope(), te::edit::AggregateAreaTool::buildEnvelope(), buildEnvelope(), te::edit::DeleteGeometryByAreaTool::buildEnvelope(), te::edit::VertexTool::buildEnvelope(), te::edit::CreateLineTool::buildLine(), te::edit::CreatePointTool::buildPoint(), te::edit::SubtractAreaTool::buildPolygon(), te::edit::AggregateAreaTool::buildPolygon(), te::edit::DeleteGeometryByAreaTool::buildPolygon(), te::edit::CreatePolygonTool::buildPolygon(), te::qt::widgets::PolygonAcquire::clear(), te::qt::widgets::Measure::clear(), te::qt::widgets::CoordTracking::CoordTracking(), te::edit::CreateLineTool::CreateLineTool(), te::edit::CreatePolygonTool::CreatePolygonTool(), te::edit::MergeGeometriesTool::draw(), te::edit::EditInfoTool::draw(), te::edit::SubtractAreaTool::draw(), te::qt::widgets::PointMove::draw(), te::edit::AggregateAreaTool::draw(), te::edit::RotateGeometryTool::draw(), te::edit::CreatePointTool::draw(), te::edit::DeleteGeometryByAreaTool::draw(), te::edit::CreateLineTool::draw(), te::edit::CreatePolygonTool::draw(), draw(), te::edit::SplitPolygonTool::draw(), te::edit::VertexTool::draw(), te::qt::widgets::PanExtent::drawCurrentExtent(), SelectionTool::drawGeometries(), te::qt::widgets::PolygonAcquire::drawGeometry(), te::qt::widgets::Measure::drawGeometry(), te::edit::MergeGeometriesTool::editingFinished(), te::edit::SubtractAreaTool::editingFinished(), te::edit::AggregateAreaTool::editingFinished(), te::qt::widgets::ZoomKeyboard::eventFilter(), te::qt::widgets::ZoomWheel::eventFilter(), te::qt::widgets::AbstractTool::eventFilter(), te::qt::widgets::Selection::executeSelection(), te::edit::DeleteGeometryByAreaTool::executeSelection(), te::edit::MergeGeometriesTool::getBaseOID(), te::edit::MergeGeometriesTool::getRefEnvelope(), te::qt::widgets::Measure::Measure(), te::edit::SubtractAreaTool::mouseDoubleClickEvent(), te::edit::AggregateAreaTool::mouseDoubleClickEvent(), te::qt::widgets::PolygonAcquire::mouseDoubleClickEvent(), te::edit::CreatePolygonTool::mouseDoubleClickEvent(), te::edit::VertexTool::mouseDoubleClickEvent(), te::qt::plugins::mnt::ShowValuesTool::mouseMoveEvent(), te::qt::widgets::PanMiddleClick::mouseMoveEvent(), te::qt::widgets::ZoomClick::mouseMoveEvent(), te::qt::widgets::Pan::mouseMoveEvent(), te::qt::widgets::CoordTracking::mouseMoveEvent(), te::qt::widgets::PointMove::mouseMoveEvent(), te::qt::widgets::PointPicker::mouseMoveEvent(), te::qt::widgets::RubberBand::mouseMoveEvent(), te::qt::widgets::Zoom::mouseMoveEvent(), te::qt::widgets::PanExtent::mouseMoveEvent(), te::qt::widgets::PolygonAcquire::mouseMoveEvent(), te::edit::CreateLineTool::mouseMoveEvent(), te::edit::CreatePolygonTool::mouseMoveEvent(), te::edit::DeleteGeometryByAreaTool::mouseMoveEvent(), mouseMoveEvent(), te::qt::widgets::Measure::mouseMoveEvent(), te::edit::VertexTool::mouseMoveEvent(), te::edit::EditInfoTool::mousePressEvent(), te::qt::widgets::ZoomLeftAndRightClick::mousePressEvent(), te::qt::widgets::PanMiddleClick::mousePressEvent(), te::qt::widgets::Pan::mousePressEvent(), te::qt::widgets::ZoomClick::mousePressEvent(), te::qt::widgets::PointPicker::mousePressEvent(), te::qt::widgets::PanExtent::mousePressEvent(), te::qt::widgets::PolygonAcquire::mousePressEvent(), te::edit::CreateLineTool::mousePressEvent(), te::edit::CreatePointTool::mousePressEvent(), te::edit::DeleteGeometryTool::mousePressEvent(), te::edit::DeletePartTool::mousePressEvent(), mousePressEvent(), te::edit::DeleteGeometryByAreaTool::mousePressEvent(), te::edit::CreatePolygonTool::mousePressEvent(), te::qt::widgets::Measure::mousePressEvent(), te::qt::widgets::ReadPixelTool::mouseReleaseEvent(), SelectionTool::mouseReleaseEvent(), ReadPixelTool::mouseReleaseEvent(), te::mnt::ProfileTools::mouseReleaseEvent(), te::edit::SubtractAreaTool::mouseReleaseEvent(), te::qt::widgets::PanMiddleClick::mouseReleaseEvent(), te::qt::widgets::ZoomArea::mouseReleaseEvent(), te::qt::widgets::Pan::mouseReleaseEvent(), te::qt::widgets::ZoomClick::mouseReleaseEvent(), te::qt::widgets::PointMove::mouseReleaseEvent(), te::qt::widgets::RubberBand::mouseReleaseEvent(), te::qt::widgets::PointPicker::mouseReleaseEvent(), te::qt::widgets::ExtentAcquire::mouseReleaseEvent(), te::qt::widgets::Zoom::mouseReleaseEvent(), te::edit::AggregateAreaTool::mouseReleaseEvent(), te::edit::CreatePolygonTool::mouseReleaseEvent(), te::qt::widgets::Selection::mouseReleaseEvent(), te::qt::widgets::Info::mouseReleaseEvent(), te::qt::widgets::Measure::onExtentChanged(), te::edit::MergeGeometriesTool::pickFeature(), te::edit::EditInfoTool::pickFeature(), te::edit::SubtractAreaTool::pickFeature(), te::edit::RotateGeometryTool::pickFeature(), te::edit::AggregateAreaTool::pickFeature(), pickFeature(), te::edit::VertexTool::pickFeature(), te::edit::SplitPolygonTool::pickFeatures(), te::qt::widgets::PolygonAcquire::PolygonAcquire(), SelectionTool::SelectionTool(), te::edit::GeometriesUpdateTool::setCursor(), te::qt::widgets::AbstractTool::setCursor(), te::edit::SplitPolygonTool::splitPolygon(), te::edit::SubtractAreaTool::storeUndoCommand(), te::edit::AggregateAreaTool::storeUndoCommand(), storeUndoCommand(), te::edit::CreatePolygonTool::storeUndoCommand(), te::edit::VertexTool::storeUndoCommand(), te::qt::widgets::ZoomKeyboard::ZoomKeyboard(), te::qt::widgets::AbstractTool::~AbstractTool(), te::qt::widgets::Info::~Info(), te::qt::widgets::Measure::~Measure(), te::qt::widgets::PolygonAcquire::~PolygonAcquire(), and SelectionTool::~SelectionTool().

Feature* te::edit::GeometriesUpdateTool::m_feature
protectedinherited

Definition at line 102 of file GeometriesUpdateTool.h.

Referenced by te::edit::SubtractAreaTool::buildPolygon(), te::edit::AggregateAreaTool::buildPolygon(), te::edit::SubtractAreaTool::clear(), te::edit::AggregateAreaTool::clear(), te::edit::CreatePolygonTool::clear(), te::edit::CreateLineTool::clear(), te::edit::MergeGeometriesTool::draw(), te::edit::EditInfoTool::draw(), te::edit::RotateGeometryTool::draw(), te::edit::VertexTool::draw(), te::edit::SubtractAreaTool::drawPolygon(), te::edit::AggregateAreaTool::drawPolygon(), te::edit::MergeGeometriesTool::editingFinished(), te::edit::SubtractAreaTool::editingFinished(), te::edit::AggregateAreaTool::editingFinished(), te::edit::CreatePolygonTool::editingFinished(), te::edit::DeleteGeometryByAreaTool::executeSelection(), te::edit::EditInfoTool::getInfo(), te::mnt::ProfileTools::mouseMoveEvent(), te::edit::RotateGeometryTool::mouseMoveEvent(), te::edit::VertexTool::mouseMoveEvent(), te::edit::EditInfoTool::mousePressEvent(), te::edit::RotateGeometryTool::mousePressEvent(), te::edit::DeleteGeometryTool::mousePressEvent(), te::edit::DeletePartTool::mousePressEvent(), mousePressEvent(), te::edit::VertexTool::mouseReleaseEvent(), te::edit::CreatePolygonTool::onCommandFeedback(), te::edit::VertexTool::onCommandFeedback(), te::edit::EditInfoTool::onOkPushButtonPressed(), te::edit::MergeGeometriesTool::pickFeature(), te::edit::EditInfoTool::pickFeature(), te::edit::SubtractAreaTool::pickFeature(), te::edit::RotateGeometryTool::pickFeature(), te::edit::AggregateAreaTool::pickFeature(), pickFeature(), te::edit::VertexTool::pickFeature(), te::edit::RotateGeometryTool::reset(), reset(), te::edit::VertexTool::reset(), te::edit::GeometriesUpdateTool::resetVisualizationTool(), resetVisualizationTool(), te::edit::VertexTool::resetVisualizationTool(), te::edit::MergeGeometriesTool::storeFeature(), te::edit::EditInfoTool::storeFeature(), te::edit::SubtractAreaTool::storeFeature(), te::edit::AggregateAreaTool::storeFeature(), te::edit::DeleteGeometryTool::storeFeature(), te::edit::RotateGeometryTool::storeFeature(), te::edit::DeletePartTool::storeFeature(), te::edit::CreatePointTool::storeFeature(), te::edit::CreateLineTool::storeFeature(), te::edit::DeleteGeometryByAreaTool::storeFeature(), te::edit::CreatePolygonTool::storeFeature(), te::edit::VertexTool::storeFeature(), te::edit::SubtractAreaTool::storeUndoCommand(), te::edit::AggregateAreaTool::storeUndoCommand(), te::edit::CreatePolygonTool::storeUndoCommand(), and te::edit::VertexTool::storeUndoCommand().

bool te::edit::GeometriesUpdateTool::m_isInUse
protectedinherited
te::map::AbstractLayer* te::edit::GeometriesUpdateTool::m_layer
protectedinherited

Definition at line 103 of file GeometriesUpdateTool.h.

Referenced by te::edit::DeleteGeometryByAreaTool::buildPolygon(), te::edit::MergeGeometriesTool::draw(), te::edit::EditInfoTool::draw(), te::edit::SubtractAreaTool::draw(), te::edit::RotateGeometryTool::draw(), te::edit::CreatePointTool::draw(), te::edit::DeleteGeometryByAreaTool::draw(), te::edit::CreateLineTool::draw(), te::edit::CreatePolygonTool::draw(), draw(), te::edit::SplitPolygonTool::draw(), te::edit::VertexTool::draw(), te::edit::MergeGeometriesTool::editingFinished(), te::edit::SplitPolygonTool::editingFinished(), te::edit::DeleteGeometryByAreaTool::executeSelection(), te::edit::EditInfoTool::getInfo(), te::edit::GeometriesUpdateTool::getLayerId(), te::edit::MergeGeometriesTool::getRefEnvelope(), te::edit::EditInfoTool::mousePressEvent(), te::edit::DeleteGeometryTool::mousePressEvent(), te::edit::DeletePartTool::mousePressEvent(), mousePressEvent(), te::mnt::ProfileTools::mouseReleaseEvent(), te::edit::VertexTool::mouseReleaseEvent(), te::edit::CreatePolygonTool::onCommandFeedback(), te::edit::SubtractAreaTool::pickFeature(), te::edit::RotateGeometryTool::pickFeature(), te::edit::AggregateAreaTool::pickFeature(), pickFeature(), te::edit::SplitPolygonTool::pickFeatures(), te::edit::SplitPolygonTool::resetVisualizationTool(), te::edit::GeometriesUpdateTool::setLayer(), te::edit::SplitPolygonTool::splitPolygon(), te::edit::MergeGeometriesTool::storeFeature(), te::edit::EditInfoTool::storeFeature(), te::edit::SubtractAreaTool::storeFeature(), te::edit::AggregateAreaTool::storeFeature(), te::edit::DeleteGeometryTool::storeFeature(), te::edit::RotateGeometryTool::storeFeature(), te::edit::DeletePartTool::storeFeature(), te::edit::CreatePointTool::storeFeature(), te::edit::CreateLineTool::storeFeature(), storeFeature(), te::edit::DeleteGeometryByAreaTool::storeFeature(), te::edit::CreatePolygonTool::storeFeature(), te::edit::VertexTool::storeFeature(), te::edit::SubtractAreaTool::storeUndoCommand(), te::edit::AggregateAreaTool::storeUndoCommand(), storeUndoCommand(), te::edit::CreatePolygonTool::storeUndoCommand(), te::edit::VertexTool::storeUndoCommand(), updateCursor(), te::mnt::ProfileTools::updateRepository(), te::edit::MergeGeometriesTool::~MergeGeometriesTool(), and te::edit::SplitPolygonTool::~SplitPolygonTool().

QMouseEvent::Type te::edit::GeometriesUpdateTool::m_mEvent
protectedinherited
bool te::edit::MoveGeometryTool::m_moveStarted
protected

Flag that indicates if move operation was started.

Definition at line 124 of file MoveGeometryTool.h.

Referenced by mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), and reset().

QPointF te::edit::MoveGeometryTool::m_origin
protected

Origin point on mouse pressed.

Definition at line 125 of file MoveGeometryTool.h.

Referenced by mouseMoveEvent(), mousePressEvent(), and reset().

UndoStackManager& te::edit::MoveGeometryTool::m_stack
protected

Definition at line 128 of file MoveGeometryTool.h.

Referenced by draw(), and storeUndoCommand().

std::vector<te::edit::Feature*> te::edit::MoveGeometryTool::m_vecFeatures
protected

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