VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtEnvironmentConditionsWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2  * Copyright (c) 2014 MAK Technologies, Inc.
3  * All rights reserved.
4  ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
14 
15 #include <QtCore/QList>
16 #include <QtCore/QString>
17 #include <QtGui/QWidget>
18 
19 class QButtonGroup;
20 class QCheckBox;
21 class QColor;
22 class QComboBox;
23 class QDial;
24 class QDoubleSpinBox;
25 class QHBoxLayout;
26 class QLabel;
27 class QPushButton;
28 class QRadioButton;
29 class QSignalMapper;
30 class QSlider;
31 class QTreeWidget;
32 class QTreeWidgetItem;
33 class QVBoxLayout;
34 
35 namespace makVrv
36 {
37 
38  class DtColorPushButton;
39  class DtSliderDoubleSpinboxWidget;
40  class DtSliderSpinboxWidget;
41  class DtWindDirectionWidget;
42 
43 
48  {
49  Q_OBJECT
50 
51  protected:
52 
53  typedef enum
54  {
55  CloudTreeColumnType = 0,
60 
61  } CloudTreeColumnLabelIndices;
62 
63  public:
69  DtDe& de, QWidget* parent = NULL, Qt::WindowFlags flags = 0);
70 
73 
77 
80  virtual void setEnvironmentConditionsNames(const std::list<DtUnicode>& names);
81 
84  virtual StringList environmentConditionNames() const;
85 
88  virtual void setDefaultConditionName(const DtUnicode& name);
89 
92  virtual void setAdvanceConditionsVisible(bool show);
93 
95 
99 
105  virtual void setWindSpeed(double speed);
106 
110  virtual void setWindSpeedDecimals(int decimals);
111 
115  virtual void setWindSpeedUnits(const DtUnicode& units);
116 
122  virtual void setWindSpeedRange(double step, double max, double min = 0.0);
123 
126  virtual void setWindDirection(double degrees);
127 
131  virtual void setPrecipitationType(unsigned int type);
132 
135  virtual void setPrecipitationIntensity(double intensity);
136 
142  virtual void setVisibleDistance(double distance);
143 
147  virtual void setVisibleDistanceDecimals(int decimals);
148 
152  virtual void setVisibleDistanceUnits(const DtUnicode& units);
153 
159  virtual void setVisibleDistanceRange(
160  double step, double max, double min = 0.0);
161 
163 
167 
175  virtual void addCloudLayer(const DtUnicode& type,
176  const DtUnicode& xLocation, const DtUnicode& yLocation,
177  const DtUnicode& altitude, bool enabled, bool infinite);
178 
187  virtual void setCloudLayer(unsigned int index, const DtUnicode& type,
188  const DtUnicode& xLocation, const DtUnicode& yLocation,
189  const DtUnicode& altitude, bool enabled, bool infinite);
190 
192  virtual void removeAllCloudLayers();
193 
196  virtual void removeCloudLayer(unsigned int index);
197 
201  virtual void setCloudLayerEnabled(unsigned int index, bool enabled);
202 
205  virtual void setCloudCover( DtVrfWeatherCloudState cloudCover );
206 
211  virtual void setAxisLabels(
212  const DtUnicode& x, const DtUnicode& y, const DtUnicode& z);
213 
216  virtual void queryUserForNewCloudLayer();
217 
220  virtual void queryUserToEditCloudLayer(unsigned int index);
221 
222 
228  virtual void setFogHeight(double height);
229 
233  virtual void setFogHeightDecimals(int decimals);
234 
238  virtual void setFogHeightUnits(const DtUnicode& units);
239 
244  virtual void setFogHeightRange(double step, double max, double min = 0.0);
245 
251  virtual void setFogColor(double red, double green, double blue);
252 
255  virtual void setAirTurbidity(double turbidity);
256 
258 
262 
265  virtual void setSwellStateNames(const StringList& names);
266 
269  virtual StringList swellStateNames() const;
270 
274  virtual void setSwellState(unsigned int index);
275 
278  virtual void setSwellState(const DtUnicode& name);
279 
282  virtual void setSwellStateDirection(double degrees);
283 
288  virtual void enableWindDrivenSeaState(bool enable);
289 
292  virtual void setSeaStateNames(const StringList& names);
293 
296  virtual StringList seaStateNames() const;
297 
301  virtual void setSeaState(unsigned int index);
302 
305  virtual void setSeaState(const DtUnicode& name);
306 
309  virtual void setSeaStateDirection(double degrees);
310 
312 
316 
319  virtual void setSurfaceTransparency(double alpha);
320 
326  virtual void setUnderwaterVisibility(double distance);
327 
331  virtual void setUnderwaterVisibilityDecimals(int decimals);
332 
336  virtual void setUnderwaterVisibilityUnits(const DtUnicode& units);
337 
343  virtual void setUnderwaterVisibilityRange(
344  double step, double max, double min = 0.0);
345 
348  virtual void setWaterChoppiness(double chop);
349 
355  virtual void setWindFetch(double distance);
356 
360  virtual void setWindFetchDecimals(int decimals);
361 
365  virtual void setWindFetchUnits(const DtUnicode& units);
366 
372  virtual void setWindFetchRange(double step, double max, double min = 0.0);
373 
374 
377  virtual void setSurgeDepth(double depth);
378 
381  virtual void setDepthOffset(double offset);
382 
386  virtual void setTidalCurrentSpeedDecimals(int decimals);
387 
391  virtual void setTidalCurrentSpeedUnits(const DtUnicode& units);
392 
398  virtual void setTidalCurrentSpeedRange(double step, double max, double min = 0.0);
399 
402  virtual void setTidalCurrentSpeed(double speed);
403 
407  virtual void setTidalCurrentDirectionDecimals(int decimals);
408 
412  virtual void setTidalCurrentDirectionUnits(const DtUnicode& units);
413 
419  virtual void setTidalCurrentDirectionRange(double step, double max,
420  double min = 0.0);
421 
424  virtual void setTidalCurrentDirection(double direction);
425 
427 
428 
431 
434  virtual void setListenToRemoteWeather(bool enable);
435 
437 
438 
439  protected slots:
440 
444 
445  virtual void on_selectEnvironmentConditions(const QString&);
446  virtual void on_environmentConditionClicked(const QString&);
447 
448  virtual void on_windSpeedValueChanged(double);
449  virtual void on_windDirectionValueChanged(double);
450 
451  virtual void on_precipitationTypeClicked(int);
452  virtual void on_precipitationIntensityValueChanged(int);
453 
454  virtual void on_visibilityValueChanged(double);
455  virtual void on_cloudCoverChanged(int);
456 
457  virtual void on_addCloudLayerClicked();
458  virtual void on_cloudLayerChanged(QTreeWidgetItem*, int);
459  virtual void on_editCloudLayerClicked();
460  virtual void on_editCloudLayerDoubleClicked(QTreeWidgetItem*, int);
461  virtual void on_deleteCloudLayerClicked();
462  virtual void on_cloudLayerSelectionChanged();
463 
464  virtual void on_fogHeightValueChanged(double);
465  virtual void on_fogColorValueChanged(const QColor&);
466  virtual void on_airTurbidityChanged(int);
467 
468  virtual void on_swellStateChanged(int);
469  virtual void on_swellStateDirectionChanged(double);
470 
471  virtual void on_windDrivenSeaStateEnabledChanged(const QString&);
472  virtual void on_seaStateChanged(int);
473  virtual void on_seaStateDirectionChanged(double);
474 
475  virtual void on_seaSurfaceTransparencyChanged(double);
476  virtual void on_underWaterVisibilityChanged(double);
477  virtual void on_seaChoppinessChanged(int);
478  virtual void on_windFetchChanged(double);
479  virtual void on_surgeDepthChanged(double);
480  virtual void on_depthOffsetChanged(double);
481  virtual void on_tidalCurrentSpeedChanged(double);
482  virtual void on_tidalCurrentDirectionChanged(double);
483 
484  virtual void on_listenToVrfStateChanged(int);
485  virtual void on_refreshVrfWeatherClicked();
486 
488 
489  protected:
492 
496  void setWidgetsEnabled(WidgetList& widgets, bool enable) const;
497 
501  void setWidgetEnabled(QWidget& widget, bool enable) const;
502 
506  void setWidgetsVisible(WidgetList& widgets, bool show) const;
507 
511  void setWidgetVisible(QWidget& widget, bool show) const;
512 
513  private:
516  void setupGui();
517 
520  void connectToSignals();
521 
526  void setStringsToComboBox(
527  QComboBox& cbox, const StringList& lst, bool srt=true) const;
528 
532  StringList getStringsFromComboBox(const QComboBox& cbox) const;
533 
538  void setQStringsToComboBox(
539  QComboBox& cbox, QStringList lst, bool srt=true) const;
540 
544  QStringList getQStringsFromComboBox(const QComboBox& cbox) const;
545 
546  protected:
547  QVBoxLayout* myMainLayout;
548  QHBoxLayout* myConditionsLayout;
549  QVBoxLayout* myWeatherLayout;
551  QVBoxLayout* myMarineLayout;
554 
555  QSignalMapper* myConditionsSignalMapper;
564 
566 
570 
573  QRadioButton* myPrecipitationNone;
574  QRadioButton* myPrecipitationRain;
575  QRadioButton* myPrecipitationSnow;
578 
581 
582  QHBoxLayout* myCloudLayersLayout;
585 
586  // Not currently used
591  //
592 
595 
597 
602 
605 
607 
610 
611  QSignalMapper* mySeaStateSignalMapper;
612  QButtonGroup* mySeaStateButtonGroup;
613  QRadioButton* mySeaStateWindDriven;
614  QRadioButton* mySeaStateManual;
617 
620 
622 
639 
642 
647  };
648 
649 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)