iLand
paintarea.h
Go to the documentation of this file.
1/********************************************************************************************
2** iLand - an individual based forest landscape and disturbance model
3** http://iland-model.org
4** Copyright (C) 2009- Werner Rammer, Rupert Seidl
5**
6** This program is free software: you can redistribute it and/or modify
7** it under the terms of the GNU General Public License as published by
8** the Free Software Foundation, either version 3 of the License, or
9** (at your option) any later version.
10**
11** This program is distributed in the hope that it will be useful,
12** but WITHOUT ANY WARRANTY; without even the implied warranty of
13** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14** GNU General Public License for more details.
15**
16** You should have received a copy of the GNU General Public License
17** along with this program. If not, see <http://www.gnu.org/licenses/>.
18********************************************************************************************/
19
20#ifndef PAINTAREA_H
21#define PAINTAREA_H
22
23#include <QWidget>
24#include "mapgrid.h"
25#include "layeredgrid.h"
32 QString name;
33 QString description;
39 double min_value;
40 double max_value;
43 static QColor background_color;
44 // other options
47 QString expression;
48 QObject *handler;
49};
50
53class PaintArea : public QWidget
54 {
55 Q_OBJECT
56
57 public:
58 PaintArea(QWidget *parent = 0);
59 QImage &drawImage() { return m_bitmap; }
60
61signals:
62 void needsPainting(QPainter &painter);
63 void mouseClick(const QPoint &pos);
64 void mouseDrag(const QPoint &from, const QPoint &to, Qt::MouseButton mouseButton);
65 void mouseMove(const QPoint &pos);
66 void mouseWheel(const QPoint &pos, int wheel_steps);
67
68 protected:
69 void paintEvent(QPaintEvent *event);
70 void mousePressEvent ( QMouseEvent * event );
71 void mouseReleaseEvent ( QMouseEvent * event );
72 void resizeEvent ( QResizeEvent * event );
73 void mouseMoveEvent(QMouseEvent *event);
74 void wheelEvent ( QWheelEvent * event );
75 void keyPressEvent(QKeyEvent *event);
76 private:
77 QImage m_bitmap;
78 QPoint m_lastDown;
79 };
80
81
82#endif // PAINTAREA_H
Definition: layeredgrid.h:32
Definition: mapgrid.h:32
PaintArea.
Definition: paintarea.h:7
void wheelEvent(QWheelEvent *event)
PaintArea(QWidget *parent=0)
void mouseMove(const QPoint &pos)
void paintEvent(QPaintEvent *event)
void mouseReleaseEvent(QMouseEvent *event)
void keyPressEvent(QKeyEvent *event)
Definition: paintarea.cpp:97
void needsPainting(QPainter &painter)
void resizeEvent(QResizeEvent *event)
QImage & drawImage()
Definition: paintarea.h:59
void mousePressEvent(QMouseEvent *event)
void mouseDrag(const QPoint &from, const QPoint &to, Qt::MouseButton mouseButton)
void mouseWheel(const QPoint &pos, int wheel_steps)
void mouseClick(const QPoint &pos)
void mouseMoveEvent(QMouseEvent *event)
GridViewType
Definition: grid.h:193
Definition: paintarea.h:28
const Grid< double > * dbl_grid
Definition: paintarea.h:35
@ PaintNothing
Definition: paintarea.h:30
@ PaintTrees
Definition: paintarea.h:30
@ PaintResourceUnits
Definition: paintarea.h:30
@ PaintMapGrid
Definition: paintarea.h:30
@ PaintLayers
Definition: paintarea.h:30
@ PaintFloatGrid
Definition: paintarea.h:30
@ PaintHeightGrid
Definition: paintarea.h:30
@ PaintRegeneration
Definition: paintarea.h:30
@ PaintLIF
Definition: paintarea.h:30
@ PaintHandledObject
Definition: paintarea.h:30
QString description
Definition: paintarea.h:33
double cur_max_value
Definition: paintarea.h:41
double cur_min_value
Definition: paintarea.h:41
GridViewType view_type
Definition: paintarea.h:38
enum PaintObject::@6 what
bool clip_to_stands
Definition: paintarea.h:45
double max_value
Definition: paintarea.h:40
QString name
Definition: paintarea.h:32
PaintObject()
Definition: paintarea.h:29
QString expression
Definition: paintarea.h:47
const LayeredGridBase * layered
Definition: paintarea.h:36
double min_value
Definition: paintarea.h:39
MapGrid * map_grid
Definition: paintarea.h:31
static QColor background_color
Definition: paintarea.h:43
int layer_id
Definition: paintarea.h:37
bool species_colors
Definition: paintarea.h:46
const FloatGrid * float_grid
Definition: paintarea.h:34
QObject * handler
Definition: paintarea.h:48
bool auto_range
Definition: paintarea.h:42