All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
GridSettingsOutside.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 GridSettingsOutside.h
22 
23  \brief Window (QDialog) map grid setting (MapItem).
24 
25  \ingroup layout
26 */
27 
28 #ifndef __TERRALIB_LAYOUT_INTERNAL_GRID_SETTINGS_OUTSIDE_H
29 #define __TERRALIB_LAYOUT_INTERNAL_GRID_SETTINGS_OUTSIDE_H
30 
31 // Qt
32 #include <QDialog>
33 
34 // TerraLib
35 #include "../../core/pattern/mvc/OutsideObserver.h"
36 #include "../../core/property/GridSettingsConfigProperties.h"
37 #include "../../core/Config.h"
38 #include "../../../geometry/Envelope.h"
39 #include "../../../color/RGBAColor.h"
40 #include "../../core/property/Property.h"
41 
42 namespace Ui { class GridSettings; }
43 
44 namespace te
45 {
46  namespace layout
47  {
48  class OutsideController;
49  class Observable;
50  class PlanarGridSettingsConfigProperties;
51  class GeodesicGridSettingsConfigProperties;
52 
53  /*!
54  \brief Window (QDialog) map grid setting (MapItem).
55 
56  \ingroup layout
57 
58  \sa te::layout::OutsideObserver
59  */
60  class TELAYOUTEXPORT GridSettingsOutside : public QDialog, public OutsideObserver
61  {
62  Q_OBJECT
63 
64  public:
65 
67 
68  virtual ~GridSettingsOutside();
69 
70  virtual void updateObserver(ContextItem context);
71 
72  virtual void setPosition(const double& x, const double& y);
73 
74  virtual te::gm::Coord2D getPosition();
75 
76  virtual void blockComponents();
77 
78  virtual void unblockComponents();
79 
80  virtual void load();
81 
82  private slots:
83 
84  /* Grid */
85  virtual void on_pbClose_clicked();
86 
87  virtual void on_helpPushButton_clicked();
88 
89  virtual void on_cmbUnit_currentIndexChanged ( const QString & text );
90 
91  virtual void on_chkShowPlanar_clicked();
92 
93  virtual void on_cmbPlanarStyle_currentIndexChanged ( const QString & text );
94 
95  virtual void on_cmbGridStyle_currentIndexChanged ( const QString & text );
96 
97  virtual void on_chkShowGeodesic_clicked();
98 
99  ///* Line */
100 
101  virtual void on_lneHrzPlanarGap_editingFinished();
102 
103  virtual void on_lneVrtPlanarGap_editingFinished();
104 
105  virtual void on_lneHorizontalGap_editingFinished();
106 
107  virtual void on_lneVerticalGap_editingFinished();
108 
109  virtual void on_pbPlanarLineColor_clicked();
110 
111  virtual void on_cmbPlanarLineType_currentIndexChanged ( const QString & text );
112 
113  virtual void on_cmbPlanarLineWidth_currentIndexChanged ( const QString & text );
114 
115  virtual void on_cmbLineType_currentIndexChanged ( const QString & text );
116 
117  virtual void on_cmbLineWidth_currentIndexChanged ( const QString & text );
118 
119  virtual void on_pbLineColor_clicked();
120 
121  ///*Text: Basic Configuration*/
122 
123  virtual void on_cmbPlanarTextSize_currentIndexChanged ( const QString & text );
124 
125  virtual void on_cmbPlanarFont_currentIndexChanged ( const QString & text );
126 
127  virtual void on_pbGridTextPlanarColor_clicked();
128 
129  virtual void on_chkSuperscriptPlanarText_clicked();
130 
131  virtual void on_cmbGeoFont_currentIndexChanged ( const QString & text );
132 
133  virtual void on_cmbGeoTextSize_currentIndexChanged ( const QString & text );
134 
135  virtual void on_pbGridTextGeoColor_clicked();
136 
137  virtual void on_chkSuperscriptGeoText_clicked();
138 
139  ///*Text: Advanced configuration*/
140 
141  virtual void on_xGridInitialPoint_planar_textField_editingFinished();
142 
143  virtual void on_yGridInitialPoint_planar_textField_editingFinished();
144 
145  virtual void on_xGridInitialPoint_geo_textField_editingFinished();
146 
147  virtual void on_yGridInitialPoint_geo_textField_editingFinished();
148 
149  virtual void on_chkBottomPlanarText_clicked();
150 
151  virtual void on_chkLeftPlanarText_clicked();
152 
153  virtual void on_chkRightPlanarText_clicked();
154 
155  virtual void on_chkTopPlanarText_clicked();
156 
157  virtual void on_chkBottomGeoText_clicked();
158 
159  virtual void on_chkLeftGeoText_clicked();
160 
161  virtual void on_chkRightGeoText_clicked();
162 
163  virtual void on_chkTopGeoText_clicked();
164 
165  virtual void on_chkBottomRotatePlanarText_clicked();
166 
167  virtual void on_chkLeftRotatePlanarText_clicked();
168 
169  virtual void on_chkRightRotatePlanarText_clicked();
170 
171  virtual void on_chkTopRotatePlanarText_clicked();
172 
173  virtual void on_chkBottomRotateGeoText_clicked();
174 
175  virtual void on_chkLeftRotateGeoText_clicked();
176 
177  virtual void on_chkRightRotateGeoText_clicked();
178 
179  virtual void on_chkTopRotateGeoText_clicked();
180 
181  virtual void on_lneVrtPlanarDisplacement_editingFinished();
182 
183  virtual void on_chkVisibleTextsPlanarText_clicked();
184 
185  virtual void on_lneHrzPlanarDisplacement_editingFinished();
186 
187  virtual void on_lneVrtGeoDisplacement_editingFinished();
188 
189  virtual void on_lneHrzGeoDisplacement_editingFinished();
190 
191  virtual void on_chkDegreesGeoText_clicked();
192 
193  virtual void on_chkMinutesGeoText_clicked();
194 
195  virtual void on_chkSecondsGeoText_clicked();
196 
197  virtual void on_chkVisibleTextsGeoText_clicked();
198 
199  virtual void on_cmbCornerGeoFont_currentIndexChanged ( const QString & text );
200 
201  virtual void on_cmbCornerGeoTextSize_currentIndexChanged ( const QString & text );
202 
203  virtual void on_pbCornerTextGeoColor_clicked();
204 
205  virtual void on_lneCornerHrzGeoDisplacement_editingFinished();
206 
207  virtual void on_lneCornerVrtGeoDisplacement_editingFinished();
208 
209  virtual void on_chkLowerRightCornerGeoText_clicked();
210 
211  virtual void on_chkUpperRightCornerGeoText_clicked();
212 
213  virtual void on_chkLowerLeftCornerGeoText_clicked();
214 
215  virtual void on_chkUpperLeftCornerGeoText_clicked();
216 
217  virtual void on_chkVisibleCornerTextsGeoText_clicked();
218 
219  /*Geodesic: Topographic Map*/
220 
221  virtual void on_ckDefineScale_clicked();
222 
223  virtual void on_cmbScale_currentIndexChanged ( const QString & text );
224 
225  virtual void on_ckbClip_clicked();
226 
227  virtual void on_lneX1_editingFinished();
228 
229  virtual void on_lneX2_editingFinished();
230 
231  virtual void on_lneY1_editingFinished();
232 
233  virtual void on_lneY2_editingFinished();
234 
235  virtual void on_lneX3_editingFinished();
236 
237  virtual void on_lneX4_editingFinished();
238 
239  virtual void on_lneY3_editingFinished();
240 
241  virtual void on_lneY4_editingFinished();
242 
243  signals:
244 
245  void updateProperty(Property prop);
246 
247  protected:
248 
249  virtual bool checkValidDegreeValue(const QString &);
250 
251  virtual te::color::RGBAColor configColor(QWidget* widget);
252 
253  virtual void init();
254 
255  virtual void initString( QWidget* widget, std::string nameComponent, EnumType* gridType );
256 
257  virtual void initInt( QWidget* widget, std::string nameComponent, EnumType* gridType );
258 
259  virtual void initDouble( QWidget* widget, std::string nameComponent, EnumType* gridType );
260 
261  virtual void initBool( QWidget* widget, std::string nameComponent, EnumType* gridType );
262 
263  virtual void initColor( QWidget* widget, std::string nameComponent, EnumType* gridType );
264 
265  virtual void initCombo(QWidget* widget, std::string nameComponent, EnumType* gridType);
266 
267  protected:
268 
273 
274  private:
275 
276  std::auto_ptr<Ui::GridSettings> m_ui;
277  };
278  }
279 }
280 
281 #endif
282 
283 
284 
Abstract class to represent an observable. "Model" part of MVC component.
Definition: Observable.h:56
Class responsible for maintaining the drawing context of a MVC component. It is always used by the "M...
Definition: ContextItem.h:49
std::auto_ptr< Ui::GridSettings > m_ui
#define TELAYOUTEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition: Config.h:99
PlanarGridSettingsConfigProperties * m_planarGridSettings
Abstract class to represent an observer. "View" part of MVC widget. All classes representing the grap...
An utility struct for representing 2D coordinates.
Definition: Coord2D.h:40
Window (QDialog) map grid setting (MapItem).
Class that represents the value of an enumeration. An enumeration is made of "1..n" objects EnumType...
Definition: EnumType.h:48
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
Definition: RGBAColor.h:57
Abstract class to represent a controller. "Controller" part of MVC widget. All classes representing t...
GeodesicGridSettingsConfigProperties * m_geodesicGridSettings
A property acts like a attribute member of a object and stores the state of this attribute. A set of properties stores the state of an object. Any data type, not included in the convertValue method in the class te::layout::Variant, it will be by default "std::string" value.
Definition: Property.h:47