20 #ifndef ISOLINEEVENTROUTER_H
21 #define ISOLINEEVENTROUTER_H
30 #include "contourAppearance.h"
31 #include "contourIsovalues.h"
32 #include "contourImage.h"
34 #include "layoutWidget.h"
35 #include "glisolinewindow.h"
44 class TransferFunction;
74 virtual void hookUpTab();
82 virtual void captureMouseDown(
int button);
86 virtual void captureMouseUp();
94 void sessionLoadTF(QString* name);
101 virtual void StartCursorMove();
104 virtual void EndCursorMove();
107 void CopyRegionToIsoline();
113 virtual void SetDimension(
int dim);
116 virtual void variableChanged();
122 void changeExtents();
125 void isolineCenterRegion();
128 void isolineCenterView();
131 void isolineCenterRake();
134 void CenterIsolines();
138 void SetSingleColor();
142 void SetUseSingleColor(
bool val);
146 void EnableText(
bool val);
150 void textTypeChanged(
int type);
154 void SpaceIsovalues();
157 void EditIsovalues();
160 void SetIsolineDensity();
163 void isolineLoadTF();
166 void isolineLoadInstalledTF();
169 void isolineSaveTF();
172 void StartChangeIsoSelection(QString);
175 void EndChangeIsoSelection();
178 void copyToProbeOr2D();
182 void isolineAddSeed();
186 void isolineAttachSeed(
bool attach);
189 void SetPanelBackgroundColor();
194 void setIsolineTabTextChanged(
const QString& qs);
197 void isolineReturnPressed();
206 virtual void _confirmText(
Params* p);
209 virtual void _updateTab(
Params* p);
212 virtual void _reinitTab(
bool doOverride);
217 class IsolineAppearance :
public QWidget,
public Ui_ContourAppearance {
219 IsolineAppearance(QWidget* parent): QWidget(parent), Ui_ContourAppearance(){
226 class IsolineImage :
public QWidget,
public Ui_ContourImage {
228 IsolineImage(QWidget* parent): QWidget(parent), Ui_ContourImage(){
234 class IsolineIsovals :
public QWidget,
public Ui_ContourIsovalues {
236 IsolineIsovals(QWidget* parent): QWidget(parent), Ui_ContourIsovalues(){
249 void fitIsovalsToHisto(IsolineParams* ip);
254 void convertIsovalsToColors(TransferFunction* tf);
261 void resetImageSize(IsolineParams* iParams);
265 virtual void refreshHistogram(RenderParams* p);
268 virtual void wheelEvent(QWheelEvent*) {}
270 #ifndef DOXYGEN_SKIP_THIS
272 VariablesWidget *_variables;
273 IsolineAppearance * _appearance;
274 LayoutWidget * _layout;
275 IsolineIsovals * _isovals;
276 IsolineImage *_image;
277 GLIsolineWindow* _glIsolineWindow;
280 static const char* _webHelpText[];
281 static const char* _webHelpURL[];
283 static const float _thumbSpeedFactor;
288 bool _ignoreComboChanges;
290 float _maxBoxSize[3];
292 float _startRotateActualAngle;
293 float _startRotateViewAngle;
294 bool _renormalizedRotate;
297 double _prevIsoMax,_prevIsoMin;
299 Command* _savedCommand;
300 #endif //DOXYGEN_SKIP_THIS
306 #endif //ISOLINEEVENTROUTER_H
A pure virtual class for managing parameters used in visualization.
A Params subclass for managing parameters used by Renderers.
A pure virtual class specifying the common properties of all the parameter tabs in the VAPOR GUI...
A QGLWidget that displays a Transfer Function Editor, or an Iso Selection Window. ...
static EventRouter * CreateTab()
An EventRouter subclass that handles the Contours tab in the GUI.
virtual MappingFrame * getMappingFrame()
The Isoline tab uses a mapping frame for iso selection.
A class that manages the contents of the parameter tabs in VAPOR GUI.