VR-Forces 4.0.4 Class Documentation
include/vrvCoreQt/DtIntervisibilitySettingsWidget.h
Go to the documentation of this file.
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 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)