Main Page
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
LineItem.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 LineItem.h
22
23
\brief
24
25
\ingroup layout
26
*/
27
28
#ifndef __TERRALIB_LAYOUT_INTERNAL_LINE_ITEM_H
29
#define __TERRALIB_LAYOUT_INTERNAL_LINE_ITEM_H
30
31
// TerraLib
32
#include "
ObjectItem.h
"
33
#include "../../../geometry/Point.h"
34
35
// Qt
36
#include <QVector>
37
#include <QPolygonF>
38
39
class
QGraphicsSceneMouseEvent;
40
41
namespace
te
42
{
43
namespace
layout
44
{
45
class
Observable;
46
47
class
LineItem
:
public
ObjectItem
48
{
49
public
:
50
51
LineItem
(
ItemController
* controller,
Observable
* o );
52
53
virtual
~LineItem
();
54
55
/*!
56
\brief Reimplemented from ItemObserver
57
*/
58
virtual
void
updateObserver
(
ContextItem
context);
59
60
/*!
61
\brief Reimplemented from QGraphicsItem
62
*/
63
virtual
void
paint
( QPainter * painter,
const
QStyleOptionGraphicsItem * option, QWidget * widget = 0 );
64
65
protected
:
66
67
virtual
void
drawLine
(QPainter * painter);
68
69
QPolygonF
m_poly
;
70
};
71
}
72
}
73
74
#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
te::layout::LineItem::LineItem
LineItem(ItemController *controller, Observable *o)
Definition:
LineItem.cpp:48
te::layout::LineItem::paint
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
Reimplemented from QGraphicsItem.
Definition:
LineItem.cpp:86
te::layout::LineItem::~LineItem
virtual ~LineItem()
Definition:
LineItem.cpp:54
te::layout::ItemController
Abstract class to represent a controller. "Controller" part of MVC component. All classes representin...
Definition:
ItemController.h:52
te::layout::LineItem::updateObserver
virtual void updateObserver(ContextItem context)
Reimplemented from ItemObserver.
Definition:
LineItem.cpp:59
te::layout::LineItem::drawLine
virtual void drawLine(QPainter *painter)
Definition:
LineItem.cpp:108
te::layout::ObjectItem
Abstract class that represents a graphic item. This object is of type QGraphicsObject.
Definition:
ObjectItem.h:61
ObjectItem.h
Abstract class that represents a graphic item. This object is of type QGraphicsObject.
te::layout::LineItem
Definition:
LineItem.h:47
te::layout::LineItem::m_poly
QPolygonF m_poly
Definition:
LineItem.h:69
TL5_2015_release
terralib5
src
terralib
layout
qt
item
LineItem.h
Generated on Wed Jun 3 2015 10:23:03 for TerraLib by
1.8.7