All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
te::qt::widgets::Info Class Reference

This class implements a concrete tool to get informations about a specified feature using pointing operation. More...

#include <Info.h>

Inheritance diagram for te::qt::widgets::Info:
te::qt::widgets::AbstractTool

Public Slots

void setLayers (const std::list< te::map::AbstractLayerPtr > &layers)
 

Public Member Functions

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

Methods related to instantiation and destruction.

 Info (MapDisplay *display, const QCursor &cursor, const std::list< te::map::AbstractLayerPtr > &layers, QObject *parent=0)
 It constructs a info tool associated with the given map display. More...
 
 ~Info ()
 Destructor. More...
 
AbstractTool Methods

Methods related with tool behavior.

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 eventFilter (QObject *watched, QEvent *e)
 Filters events if this object has been installed as an event filter for the watched object. More...
 
virtual 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...
 
virtual 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...
 
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...
 

Protected Attributes

QCursor m_cursor
 The default tool cursor. More...
 
MapDisplaym_display
 The map display associated with the tool. More...
 

Private Member Functions

void drawGeometry (te::gm::Geometry *g)
 
void getGeometryInfo (QTreeWidgetItem *layerItem, te::da::DataSet *dataset, const std::string &geomPropertyName, const te::gm::Envelope &e, int srid, bool needRemap)
 
void getInfo (const te::map::AbstractLayerPtr &layer, const te::gm::Envelope &e)
 
void getRasterInfo (QTreeWidgetItem *layerItem, te::rst::Raster *raster, const te::gm::Envelope &e, int srid, bool needRemap)
 

Private Attributes

QTreeWidget * m_infoWidget
 Widget used to show the informations. More...
 
std::list
< te::map::AbstractLayerPtr
m_layers
 The layer list that will be queried. More...
 

Detailed Description

This class implements a concrete tool to get informations about a specified feature using pointing operation.

Definition at line 74 of file Info.h.

Constructor & Destructor Documentation

te::qt::widgets::Info::Info ( MapDisplay display,
const QCursor &  cursor,
const std::list< te::map::AbstractLayerPtr > &  layers,
QObject *  parent = 0 
)

It constructs a info tool associated with the given map display.

Parameters
displayThe map display associated with the tool.
cursorThe tool cursor.
layersThe layer list that will be queried.
parentThe tool's parent.
Note
The tool will NOT take the ownership of the given pointers.

Definition at line 62 of file Info.cpp.

References m_infoWidget, and te::qt::widgets::AbstractTool::setCursor().

te::qt::widgets::Info::~Info ( )

Destructor.

Definition at line 81 of file Info.cpp.

Member Function Documentation

bool te::qt::widgets::AbstractTool::eventFilter ( QObject *  watched,
QEvent *  e 
)
virtualinherited

Filters events if this object has been installed as an event filter for the watched object.

Parameters
watchedThe watched object.
eventThe last event sent to watched object.
Note
In your reimplementation of this function, if you want to filter the event out, i.e. stop it being handled further, return true; otherwise return false.
Here, the default implementation looks for QMouseEvents and call the pure virutal methods defined on AbstractTool class, e.g. mousePressEvent().

Reimplemented in te::qt::widgets::ZoomKeyboard, and te::qt::widgets::ZoomWheel.

Definition at line 50 of file AbstractTool.cpp.

Referenced by te::qt::widgets::ZoomKeyboard::eventFilter(), and te::qt::widgets::ZoomWheel::eventFilter().

void te::qt::widgets::Info::getRasterInfo ( QTreeWidgetItem *  layerItem,
te::rst::Raster raster,
const te::gm::Envelope e,
int  srid,
bool  needRemap 
)
private
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::CreateLineTool, te::edit::CreatePolygonTool, te::edit::MoveGeometryTool, and te::qt::widgets::PolygonAcquire.

Definition at line 93 of file AbstractTool.cpp.

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

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 in te::edit::VertexTool, te::qt::widgets::Measure, te::qt::widgets::Selection, te::edit::CreateLineTool, te::edit::CreatePolygonTool, te::edit::MoveGeometryTool, te::qt::widgets::PolygonAcquire, te::qt::widgets::PanExtent, te::qt::widgets::ExtentAcquire, te::qt::widgets::RubberBand, te::qt::widgets::CoordTracking, te::qt::widgets::Pan, and te::qt::widgets::ZoomArea.

Definition at line 83 of file AbstractTool.cpp.

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

This event handler can be reimplemented in a concrete tool class to receive mouse press 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 in te::edit::VertexTool, te::qt::widgets::Measure, te::qt::widgets::Selection, te::edit::CreateLineTool, te::edit::CreatePolygonTool, te::edit::MoveGeometryTool, te::qt::widgets::PolygonAcquire, te::qt::widgets::PanExtent, te::qt::widgets::ExtentAcquire, te::qt::widgets::RubberBand, te::qt::widgets::Pan, te::qt::widgets::ZoomClick, te::qt::widgets::ZoomArea, and te::qt::widgets::ZoomLeftAndRightClick.

Definition at line 78 of file AbstractTool.cpp.

bool te::qt::widgets::Info::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 91 of file Info.cpp.

void te::qt::widgets::Info::setLayers ( const std::list< te::map::AbstractLayerPtr > &  layers)
slot

Definition at line 141 of file Info.cpp.

Member Data Documentation

QCursor te::qt::widgets::AbstractTool::m_cursor
protectedinherited

The default tool cursor.

Definition at line 161 of file AbstractTool.h.

QTreeWidget* te::qt::widgets::Info::m_infoWidget
private

Widget used to show the informations.

Definition at line 128 of file Info.h.

Referenced by Info().

std::list<te::map::AbstractLayerPtr> te::qt::widgets::Info::m_layers
private

The layer list that will be queried.

Definition at line 127 of file Info.h.


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