VR-Vantage API Documentation
DtEnvironmentWidget.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2012 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
13 
15 
16 #include <QtGui/QWidget>
17 
18 class QLabel;
19 class QComboBox;
20 class QCheckBox;
21 class QGroupBox;
22 class QPushButton;
23 class QTreeWidget;
24 class QDoubleSpinBox;
25 class QTreeWidgetItem;
26 
27 namespace makVrv
28 {
29 
30  class DtEnvironmentLogic;
31  class DtPersistenceControlsInterface;
32 
36  : public QWidget, public DtEnvironmentInterface
37  { Q_OBJECT;
38  protected:
39 
40  enum
41  {
42  CloudTreeColumnType = 0,
47  };
48 
49  public:
50 
53  DtPersistenceControlsInterface& persistenceControls, QWidget* parent = 0 );
54 
56  virtual ~DtEnvironmentWidget();
57 
61 
63  virtual void setListenToRemoteWeather( bool listen );
64 
66  virtual void setRefreshButtonEnabled( bool enabled );
67 
69  virtual void addCloudLayer( QString type, QString xLocation,
70  QString yLocation, QString altitude, bool enabled );
71 
72  virtual void removeAllCloudLayers();
73 
75  virtual void removeCloudLayer( int index );
76 
78  virtual void setCloudLayerEnabled( unsigned int index, bool enabled );
79 
81  virtual void setPrecipitationEnabled( bool enabledFlag );
82 
84  virtual void setPrecipitationType( const std::string& type );
85 
87  virtual void setPrecipitationIntensity( float intensity );
88 
90  virtual void setTurbidity( float value );
91 
93  virtual void setVisibleDistance( float distance );
94 
96  virtual void setVisibleDistanceDecimals( int decimals );
97 
99  virtual void setVisibleDistanceUnits( const DtUnicode& units );
100 
102  virtual void setAxisLabels( const DtUnicode& x, const DtUnicode& y, const DtUnicode& z );
103 
105 
108 
110  virtual void queryUserForNewCloudLayer();
111 
114  virtual void queryUserToEditCloudLayer( int index );
115 
117 
118  protected:
119 
122  void setupGui();
123 
126  void connectToSignals();
127 
129  std::string untranslatePrecipitationType( QString type ) const;
130 
132  QString translatePrecipitationType( const std::string& type ) const;
133 
134  protected slots:
135 
139 
140  void on_myListenToVrfBox_stateChanged( int );
141  void on_myRefreshVrfWeatherButton_clicked();
142  void on_myCloudLayersTree_itemSelectionChanged();
143  void on_myCloudLayersTree_itemChanged( QTreeWidgetItem* item,int column );
144  void on_myAddCloudLayerButton_clicked();
145  void on_myDeleteCloudLayerButton_clicked();
146  void on_myEditCloudLayerButton_clicked();
147  void on_myTurbidityBox_currentIndexChanged( int );
148  void on_myTurbiditySpinBox_valueChanged( double );
149  void on_myVisibilityBox_valueChanged( double );
150  void on_myPrecipitationGroup_toggled( bool state );
151  void on_myPrecipitationTypeBox_indexChanged( int index );
152  void on_myPrecipitationIntensityBox_valueChanged( double value );
153 
155 
156  protected:
157 
159 
161 
164 
167  QPushButton* myAddCloudLayerButton;
170 
173  QDoubleSpinBox* myTurbiditySpinBox;
175  QDoubleSpinBox* myVisibilityBox;
176 
181  QDoubleSpinBox* myPrecipitionIntensityBox;
182 
183  std::vector<std::pair<QString,float> > myPredefinedValues;
184 
185  };
186 
187 }


Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)