Loading...
Searching...
No Matches
TerraView.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 TerraView - A Free and Open Source GIS Application.
4
5 TerraView is free software: you can redistribute it and/or modify
6 it under the terms of the GNU 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 TerraView 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 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with TerraLib Code Editor. See COPYING. If not, write to
17 TerraLib Team at <terralib-team@dpi.inpe.br>.
18 */
19
20/*!
21 \file terraview/TerraView.h
22
23 \brief The main class of TerraView.
24*/
25
26#ifndef __TERRAVIEW_INTERNAL_TERRAVIEW_H
27#define __TERRAVIEW_INTERNAL_TERRAVIEW_H
28
29// TerraLib
30#include "TerraViewController.h"
32
33// STL
34#include <string>
35
36// Forward declarations
37class QWidget;
38class QMenu;
39
40struct ProjectMetadata;
41
42namespace te
43{
44 namespace qt
45 {
46 namespace af
47 {
48 class InterfaceController;
49 }
50 namespace widgets
51 {
52 class ChartDisplayWidget;
53 class CompositionModeMenuWidget;
54 class HelpManagerImpl;
55 class QueryDialog;
56 class ProgressViewerBar;
57 class ProgressViewerWidget;
58 }
59 }
60}
61
62/*!
63 \brief The main class of TerraView.
64
65 \sa te::qt::af::BaseApplication
66*/
68{
69 Q_OBJECT
70
71 public:
72
73 TerraView(QWidget* parent = 0);
74
76
77 void init(const QString& cfgFile);
78
79 void startProject(const QString& projectFileName);
80
81 protected:
82
83 virtual void makeDialog();
84
85 virtual void initActions();
86
87 virtual void initMenus();
88
89 virtual void initToolbars();
90
91 virtual void initSlotsConnections();
92
93 virtual void createDefaultSettings();
94
96
98
99 protected slots:
100
102
103
105
106
108
110
112
113 void onSaveProjectTriggered(bool save_as = false);
114
116
118
119
121
122
124
126
128
130
132
134
136
138
140
142
144
146
148
150
152
154
155 void onRecentProjectsTriggered(QAction* proj);
156
157
159
161
163
165
167
169
171
173
175
177
178 protected:
179
181
183
184 void openProject(const QString& prjFileName);
185
187
188 void closeEvent(QCloseEvent * event);
189
190 void addActions(const QString& name, const QString& category, const QList<QAction*>& acts);
191
192 void saveImage();
193
198 QAction* m_fileExit;
199 QAction* m_filePrint;
203
204 QAction* m_helpAbout;
206 QAction* m_helpUpdate;
207
210 QAction* m_layerChart;
217
219
227
236
240 QMenu* m_mapMenu;
249
250
251 QDockWidget* m_progressDockWidget; //!< Dock widget used to show progress information
252
254
256
258
260
262
264
266
268
269 QString m_filePath;
270
272};
273
274#endif // __TERRAVIEW_INTERNAL_TERRAVIEW_H
A QMainWindow to be used as the basis for TerraLib applications.
The API for controller of TerraView application.
The API for controller of TerraView application.
The main class of TerraView.
Definition: TerraView.h:68
void onToolsRasterMultiResolutionTriggered()
QMenu * m_helpMenu
Definition: TerraView.h:238
void onToolsDataExchangerDirectTriggered()
QAction * m_layerSpatialQuery
Definition: TerraView.h:215
void onToolsDataExchangerDirectPopUpTriggered()
void onRecentProjectsTriggered(QAction *proj)
virtual void initActions()
void onLayerCompositionModeTriggered()
QAction * m_toolsCustomize
Definition: TerraView.h:228
QAction * m_layerAttrQuery
Definition: TerraView.h:216
void onOpenProjectTriggered()
void onPluginsManagerTriggered()
void saveImage()
QAction * m_helpAbout
Definition: TerraView.h:204
QAction * m_layerChartsScatter
Definition: TerraView.h:209
QAction * m_projectAddLayerGraph
Definition: TerraView.h:223
te::qt::widgets::ProgressViewerWidget * m_pvw
Definition: TerraView.h:267
QAction * m_projectAddFolderLayer
Definition: TerraView.h:224
te::qt::af::InterfaceController * m_iController
Definition: TerraView.h:255
TerraViewController * m_tvController
Definition: TerraView.h:263
void onAddTabularLayerTriggered()
void onRestartSystemTriggered()
void onUpdateLayerDataSourceTriggered()
QMenu * m_projectMenu
Definition: TerraView.h:242
void closeEvent(QCloseEvent *event)
QMenu * m_pluginsMenu
Definition: TerraView.h:241
void showAboutDialog()
void onAttrQueryLayerTriggered()
void startProject(const QString &projectFileName)
QAction * m_layerLinkTable
Definition: TerraView.h:212
void projectChanged()
ProjectMetadata * m_project
Definition: TerraView.h:261
QAction * m_toolsDataExchanger
Definition: TerraView.h:229
void onCreateNewLayer(te::map::AbstractLayerPtr layer)
virtual void initToolbars()
void onAddFolderLayerTriggered()
QAction * m_toolsDataSourceExplorer
Definition: TerraView.h:232
QAction * m_projectProperties
Definition: TerraView.h:226
void onHelpTriggered()
QString m_filePath
Definition: TerraView.h:269
void onNewProjectTriggered()
QAction * m_fileSaveAsImage
Definition: TerraView.h:201
te::qt::widgets::QueryDialog * m_queryDlg
Definition: TerraView.h:257
QDockWidget * m_progressDockWidget
Dock widget used to show progress information.
Definition: TerraView.h:251
virtual void initMenus()
QAction * m_fileSaveProject
Definition: TerraView.h:195
void addPopUpMenu()
te::qt::widgets::CompositionModeMenuWidget * m_compModeMenu
Definition: TerraView.h:259
QAction * m_layerChartsHistogram
Definition: TerraView.h:208
QAction * m_layerChart
Definition: TerraView.h:210
QAction * m_projectUpdateLayerDataSource
Definition: TerraView.h:225
QAction * m_projectAddLayerQueryDataSet
Definition: TerraView.h:221
QAction * m_fileNewProject
Definition: TerraView.h:194
QAction * m_fileExit
Definition: TerraView.h:198
QAction * m_filePrint
Definition: TerraView.h:199
void onLinkTriggered()
QAction * m_pluginsManager
Definition: TerraView.h:218
void onAddQueryLayerTriggered()
void onSaveProjectTriggered(bool save_as=false)
void onQueryLayerCreateLayer(te::map::AbstractLayerPtr layer)
QAction * m_toolsDataSourceManagement
Definition: TerraView.h:233
void addActions(const QString &name, const QString &category, const QList< QAction * > &acts)
QString m_selectedFilter
Definition: TerraView.h:271
void onLayerChartTriggered()
QMenu * m_layerMenu
Definition: TerraView.h:239
te::qt::widgets::ProgressViewerBar * m_pvb
Definition: TerraView.h:265
void onLayerHistogramTriggered()
QMenu * m_fileMenu
Definition: TerraView.h:237
QAction * m_layerCompositionMode
Definition: TerraView.h:214
void onToolsCustomizeTriggered()
void onDataSourceExplorerTriggered()
void onLayerScatterTriggered()
void onAddDataSetLayerTriggered()
QMenu * m_projectAddLayerMenu
Definition: TerraView.h:243
virtual void createDefaultSettings()
void onHighlightLayerObjects(const te::map::AbstractLayerPtr &layer, te::da::DataSet *dataset, te::se::Style *style)
QAction * m_toolsRasterMultiResolution
Definition: TerraView.h:235
QAction * m_layerDuplicateLayer
Definition: TerraView.h:211
QAction * m_toolsDataExchangerDirect
Definition: TerraView.h:230
QAction * m_toolsQueryDataSource
Definition: TerraView.h:234
bool checkAndSaveProject()
QAction * m_projectAddLayerTabularDataSet
Definition: TerraView.h:222
QMenu * m_mapMenu
Definition: TerraView.h:240
QMenu * m_toolsExchangerMenu
Definition: TerraView.h:246
virtual void makeDialog()
QMenu * m_toolsMenu
Definition: TerraView.h:245
QMenu * m_recentProjectsMenu
Definition: TerraView.h:244
te::qt::widgets::HelpManagerImpl * m_helpManager
Definition: TerraView.h:253
QMenu * m_viewToolBarsMenu
Definition: TerraView.h:248
QAction * m_helpUpdate
Definition: TerraView.h:206
void onLayerDuplicateLayerTriggered()
void resetComponents()
QAction * m_fileRestartSystem
Definition: TerraView.h:202
QAction * m_toolsDataExchangerDirectPopUp
Definition: TerraView.h:231
QAction * m_projectAddLayerDataset
Definition: TerraView.h:220
void onSaveAsImageTriggered()
void onToolsQueryDataSourceTriggered()
void onSaveProjectAsTriggered()
TerraView(QWidget *parent=0)
void onApplicationTriggered(te::qt::af::evt::Event *e)
QMenu * m_viewMenu
Definition: TerraView.h:247
QAction * m_helpContents
Definition: TerraView.h:205
QAction * m_fileOpenProject
Definition: TerraView.h:197
QAction * m_fileSaveProjectAs
Definition: TerraView.h:196
QAction * m_filePrintPreview
Definition: TerraView.h:200
QAction * m_layerObjectGrouping
Definition: TerraView.h:213
void addMenusActions()
void onToolsDataExchangerTriggered()
virtual void initSlotsConnections()
void onSpatialQueryLayerTriggered()
void onLayerGroupingTriggered()
void init(const QString &cfgFile)
void openProject(const QString &prjFileName)
void onProjectPropertiesTriggered()
A dataset is the unit of information manipulated by the data access module of TerraLib.
Definition: DataSet.h:114
A connector to controll all non modal interfaces.
This class is widget that provides a menu for composition mode selection.
An interface for help managers implementations.
A class that defines the interface of a qt bar progress viewer.
A class that defines the interface of a qt widget to group a set of ProgressWidgetItem.
This file defines a class for a Query Dialog Dialog.
Definition: QueryDialog.h:66
The Style defines the styling that is to be applied to a geographic dataset (vector geometries or cov...
Definition: Style.h:66
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr
TerraLib.
#define slots
A base class for application events.
Definition: Event.h:60