QGIS API Documentation  2.8.2-Wien
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
qgsvertexmarker.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsvertexmarker.h - canvas item which shows a simple vertex marker
3  ---------------------
4  begin : February 2006
5  copyright : (C) 2006 by Martin Dobias
6  email : wonder.sk at gmail dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSVERTEXMARKER_H
17 #define QGSVERTEXMARKER_H
18 
19 #include "qgsmapcanvasitem.h"
20 #include "qgspoint.h"
21 
22 class QPainter;
23 
27 class GUI_EXPORT QgsVertexMarker : public QgsMapCanvasItem
28 {
29  public:
30 
32  enum IconType
33  {
37  ICON_BOX
38  };
39 
40  QgsVertexMarker( QgsMapCanvas* mapCanvas );
41 
42  void setCenter( const QgsPoint& point );
43 
44  void setIconType( int iconType );
45 
46  void setIconSize( int iconSize );
47 
48  void setColor( const QColor& color );
49 
50  void setPenWidth( int width );
51 
52  void paint( QPainter* p ) override;
53 
54  QRectF boundingRect() const override;
55 
56  virtual void updatePosition() override;
57 
58  protected:
59 
61  int mIconType;
62 
64  int mIconSize;
65 
68 
70  QColor mColor;
71 
73  int mPenWidth;
74 };
75 
76 #endif