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