00001
00002 #ifndef _OPTIONPANEL_
00003 #define _OPTIONPANEL_
00004
00005 #include <glui.h>
00006
00007 #include "LifeVariables.h"
00008
00009 using namespace std;
00010
00011 class OptionPanel {
00012 private:
00017 GLUI *panel;
00018
00020 GLUI_Panel *alignmentPanel;
00021
00023 GLUI_Panel *slicingPanel;
00024
00026 GLUI_RadioGroup *planeSelectorGroup;
00027
00029 GLUI_Panel *sliceSpinnerPanel;
00030
00032 GLUI_Spinner *selectedSliceSpinner;
00033
00035 GLUI_StaticText *maxSlicesText;
00036
00038 GLUI_RadioGroup *interpolationSelectorGroup;
00039
00041 GLUI_Panel *volumePanel;
00042
00044 GLUI_Panel *thresholdSpinnerPanel;
00045
00047 GLUI_Spinner *lowerThresholdSpinner;
00048
00050 GLUI_Panel *viewpointPanel;
00051
00053 GLUI_RadioGroup *viewpointGroup;
00054
00055
00057 GLUI_Panel *lightPositionPanel;
00058
00059 GLUI_EditText *lightXPosition;
00060 GLUI_EditText *lightYPosition;
00061 GLUI_EditText *lightZPosition;
00062
00063
00065 GLUI_RadioGroup *txFunctionSelectorGroup;
00066
00068 GLUI_Button *switchModeBtn;
00069
00071 GLUI_Button *refreshBtn;
00072
00074 GLUI_RadioGroup *volumeInterpolationSelectorGroup;
00075
00076 public:
00077
00087 int renderMode;
00088
00098 int selectedPlane;
00099
00108 int selectedSlice;
00109
00119 int interpolationMode;
00120
00127 int volumeInterpolationMode;
00128
00134 int txFunction;
00135
00141 int currLowerThreshold;
00142
00146 int viewingDirection;
00147
00151 float lightX;
00152
00156 float lightY;
00157
00158
00162 float lightZ;
00163
00164
00165
00167 OptionPanel(int mainWindowRef=0, int position=0);
00168
00170 void enable();
00171
00173 void disable();
00174
00182 void switchRenderMode(int mode);
00183
00185 void updateSliceMax(int valX, int valY, int valZ);
00186
00187
00189 void incSlice();
00190
00192 void decSlice();
00193
00195 void disableMipSpinners();
00196
00198 void enableMipSpinners();
00199
00201 void enableModeSelection();
00202
00204 void disableModeSelection();
00205
00206
00207 };
00208 #endif