![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvCoreQt/vrvCoreQt.h> 00013 #include <vrvCoreQt/DtIntervisibilitySettingsInterface.h> 00014 #include <QtGui/QWidget> 00015 00016 class QCheckBox; 00017 class QFrame; 00018 class QGridLayout; 00019 class QGroupBox; 00020 class QHBoxLayout; 00021 class QLabel; 00022 class QLineEdit; 00023 class QPushButton; 00024 class QVBoxLayout; 00025 class QDoubleSpinBox; 00026 class QSlider; 00027 00028 namespace makVrv 00029 { 00030 00031 class DtUnicode; 00032 00035 class DT_DLL_VRVCOREQT DtIntervisibilitySettingsWidget 00036 : public QWidget, public DtIntervisibilitySettingsInterface 00037 { 00038 00039 Q_OBJECT 00040 00041 public: 00042 00044 DtIntervisibilitySettingsWidget( DtDe& de, QWidget* parent, 00045 Qt::WindowFlags f = Qt::Widget ); 00046 00048 virtual ~DtIntervisibilitySettingsWidget(); 00049 00053 00056 virtual void setIntervisibilityEnabled(bool); 00057 00060 virtual void setLeftClickMakesObjectsPermanent( bool ); 00061 00063 virtual void setIntervisibilityElevationDecimals( int decimals ); 00064 00066 virtual void setOriginIntervisibilityElevation( double ); 00067 00069 virtual void setOriginIntervisibilityElevationLabel( const DtUnicode& label ); 00070 00072 virtual void setEndPointIntervisibilityElevation( double ); 00073 00075 virtual void setEndPointIntervisibilityElevationLabel( const DtUnicode& label ); 00076 00078 virtual void setFanModeSamplingRate( double ); 00079 00081 virtual void setFanModeSamplingRateMin( double ); 00082 00084 virtual void setFanModeSamplingRateMax( double ); 00085 00087 virtual void setFanModeSamplingRatePrecision( int decimals ); 00088 00090 virtual void setFanModeSamplingRateUnitLabel( const DtUnicode& label ); 00091 00095 virtual void setEntityFanUpdateRate( double ); 00096 00098 virtual void setVisibleColor( const QColor& ); 00099 00101 virtual void setBlockedColor( const QColor& ); 00102 00104 virtual void setCircleColor( const QColor& ); 00105 00107 virtual void setHatLinesEnabled( bool ); 00108 00110 virtual void setHatLinesOnSelectionOnly( bool ); 00111 00113 virtual void setEntityFanUpdateRateEnabled( bool ); 00114 00116 virtual void setFanModeSamplingRateEnabled( bool ); 00117 00119 virtual void setCircleColorEnabled( bool ); 00120 00122 virtual void setLeftClickMakesObjectsPermanentEnabled( bool ); 00123 00126 virtual void setRangeInfoLabelsEnabled( bool enabled ); 00127 00129 virtual void setRangeInfoLabelBackgroundOpacity( float opacity ); 00130 00133 virtual void setRangeInfoLabelBackgroundColor( const QColor& color ); 00134 00136 virtual void setRangeInfoAltChangeFieldEnabled( bool enabled ); 00137 00139 virtual void setRangeInfoLocationFieldEnabled( bool enabled ); 00140 00142 virtual void setRangeInfoHeadingFieldEnabled( bool enabled ); 00143 00145 virtual void setRangeInfoRangeFieldEnabled( bool enabled ); 00146 00148 00151 virtual void cancel(); 00152 00153 protected: 00154 00157 void setupGui(); 00158 00161 void connectToSignals(); 00162 00163 protected slots: 00164 00168 00169 virtual void onIntervisibilityEnabledChanged(); 00170 virtual void onLeftClickMakesObjectsPermanentChanged(); 00171 virtual void onOriginIntervisibilityElevationChanged(double); 00172 virtual void onEndPointIntervisibilityElevationChanged(double); 00173 virtual void onFanModeSamplingRateChanged(double); 00174 virtual void onEntityFanUpdateRateChanged(double); 00175 virtual void onChangeVisibleColor(); 00176 virtual void onChangeBlockedColor(); 00177 virtual void onChangeCircleColor(); 00178 virtual void onHatLinesEnabledChanged(); 00179 virtual void onHatLinesOnSelectionOnlyChanged(); 00180 virtual void onRangeInfoLabelsEnabledChanged(); 00181 virtual void onChangeRangeInfoColor(); 00182 virtual void onRangeInfoBackgroundOpacityChanged( int val ); 00183 virtual void onRangeInfoAltChangeFieldToggled(); 00184 virtual void onRangeInfoLocationFieldToggled(); 00185 virtual void onRangeInfoHeadingFieldToggled(); 00186 virtual void onRangeInfoRangeFieldToggled(); 00187 00189 00190 protected: 00191 00192 QVBoxLayout* myMainLayout; 00193 00194 QCheckBox* myEnabledCheckBox; 00195 QCheckBox* myLeftClickMakesObjectsPermanent; 00196 QCheckBox* myHatLinesEnabled; 00197 QCheckBox* myHatLinesOnSelectionOnly; 00198 00199 QLabel* myOriginIntervisibilityElevationLabel; 00200 QDoubleSpinBox* myOriginIntervisibilityElevation; 00201 00202 QLabel* myEndPointIntervisibilityElevationLabel; 00203 QDoubleSpinBox* myEndPointIntervisibilityElevation; 00204 00205 QLabel* myFanModeSamplingRateLabel; 00206 QDoubleSpinBox* myFanModeSamplingRate; 00207 00208 QLabel* myEntityFanUpdateRateLabel; 00209 QDoubleSpinBox* myEntityFanUpdateRate; 00210 00211 QLabel* myVisibleColorLabel; 00212 QPushButton* myVisibleColorButton; 00213 QColor myVisibleColor; 00214 00215 QLabel* myBlockedColorLabel; 00216 QPushButton* myBlockedColorButton; 00217 QColor myBlockedColor; 00218 00219 QLabel* myCircleColorLabel; 00220 QPushButton* myCircleColorButton; 00221 QColor myCircleColor; 00222 00223 QCheckBox* myRangeInfoLabelsCheckBox; 00224 00225 QLabel* myRangeInfoColorLabel; 00226 QPushButton* myRangeInfoColorButton; 00227 QColor myRangeInfoLabelBackgroundColor; 00228 00229 QLabel* myOpacityLabel; 00230 QSlider* myOpacitySlider; 00231 QCheckBox* myAltChangeFieldCheckBox; 00232 QCheckBox* myLocationFieldCheckBox; 00233 QCheckBox* myHeadingFieldCheckBox; 00234 QCheckBox* myRangeFieldCheckBox; 00235 00236 DtDe& myDe; 00237 00238 }; 00239 00240 }