Main Page
Modules
Namespaces
Classes
Files
File List
File Members
LegendItem.h
Go to the documentation of this file.
1
/* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2
3
This file is part of the TerraLib - a Framework for building GIS enabled applications.
4
5
TerraLib is free software: you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as published by
7
the Free Software Foundation, either version 3 of the License,
8
or (at your option) any later version.
9
10
TerraLib is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU Lesser General Public License for more details.
14
15
You should have received a copy of the GNU Lesser General Public License
16
along with TerraLib. See COPYING. If not, write to
17
TerraLib Team at <terralib-team@terralib.org>.
18
*/
19
20
/*!
21
\file LegendItem.h
22
23
\brief Class that represents a graphic legend of a map.
24
Its coordinate system is the same of scene (millimeters).
25
This is also the son of ItemObserver and ObjectItem, so it can become observer of a model (Observable).
26
27
\ingroup layout
28
*/
29
30
#ifndef __TERRALIB_LAYOUT_INTERNAL_LEGEND_ITEM_H
31
#define __TERRALIB_LAYOUT_INTERNAL_LEGEND_ITEM_H
32
33
#include <QVariant>
34
35
// TerraLib
36
#include "
ObjectItem.h
"
37
#include "../../core/Config.h"
38
39
namespace
te
40
{
41
namespace
layout
42
{
43
class
Observable;
44
45
/*!
46
\brief Class that represents a graphic legend of a map.
47
Its coordinate system is the same of scene (millimeters).
48
This is also the son of ItemObserver and ObjectItem, so it can become observer of a model (Observable).
49
50
\ingroup layout
51
52
\sa te::layout::ObjectItem
53
*/
54
class
TELAYOUTEXPORT
LegendItem
:
public
ObjectItem
55
{
56
public
:
57
58
/*!
59
\brief Constructor
60
61
\param controller "Controller" part of MVC component
62
\param o "Model" part of MVC component
63
*/
64
LegendItem
(
ItemController
* controller,
Observable
* o );
65
66
/*!
67
\brief Destructor
68
*/
69
virtual
~
LegendItem
();
70
71
/*!
72
\brief Reimplemented from ObjectItem
73
*/
74
virtual
void
updateObserver(
ContextItem
context);
75
76
/*!
77
\brief Mandatory implementation from QGraphicsObject
78
*/
79
virtual
void
paint ( QPainter * painter,
const
QStyleOptionGraphicsItem * option, QWidget * widget = 0 );
80
81
/*!
82
\brief Reimplemented from QGraphicsItem
83
*/
84
virtual
QVariant itemChange ( GraphicsItemChange change,
const
QVariant & value );
85
86
/*!
87
\brief Reimplemented from QGraphicsItem
88
*/
89
virtual
void
mouseMoveEvent ( QGraphicsSceneMouseEvent * event );
90
91
private
:
92
93
bool
m_move
;
94
};
95
}
96
}
97
98
#endif
te::layout::Observable
Abstract class to represent an observable. "Model" part of MVC component.
Definition:
Observable.h:56
te::layout::ContextItem
Class responsible for maintaining the drawing context of a MVC component. It is always used by the "M...
Definition:
ContextItem.h:49
TELAYOUTEXPORT
#define TELAYOUTEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition:
Config.h:96
te::layout::ItemController
Abstract class to represent a controller. "Controller" part of MVC component. All classes representin...
Definition:
ItemController.h:52
te::layout::LegendItem
Class that represents a graphic legend of a map. Its coordinate system is the same of scene (millimet...
Definition:
LegendItem.h:54
te::layout::ObjectItem
Abstract class that represents a graphic item. This object is of type QGraphicsObject.
Definition:
ObjectItem.h:61
te
URI C++ Library.
Definition:
AddressGeocodingOp.h:51
ObjectItem.h
Abstract class that represents a graphic item. This object is of type QGraphicsObject.
te::layout::LegendItem::m_move
bool m_move
Definition:
LegendItem.h:93
git_master
terralib5
src
terralib
layout
qt
item
LegendItem.h
Generated on Tue Jan 12 2016 08:40:55 for TerraLib by
1.8.9.1