00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef _SO_DIALOG_SEPARATOR_
00024 #define _SO_DIALOG_SEPARATOR_
00025
00026 #include <DialogViz/dialog/SoDialogComponent.h>
00027
00089 class SoDialogSeparator : public SoDialogComponent
00090 {
00091 SO_DG_HEADER(SoDialogSeparator);
00092
00093 public:
00094
00098 SoDialogSeparator();
00099
00100
00101
00102 private:
00103 virtual void buildWidget(SoWidget parent, SbVec2i32 &rSize, SbVec2i32 & pos, SbBool isActive2d);
00104 virtual void destroyWidget();
00105 static void initClass();
00106 static void exitClass();
00107 virtual void updateFromSensor(SoSensor* ) {};
00108 void setOrientationHorz(SbBool orentation = TRUE);
00109 void updateSeparatorWidget();
00110
00111 private:
00112
00113 virtual ~SoDialogSeparator();
00114
00115 private:
00116 SoWidget m_separatorWidget;
00117 SbBool m_orientationHorz;
00118
00119 void createSeparatorWidget();
00120 virtual void getDefaultSize(SbVec2i32 &size, SbVec2i32 &min, SbVec2i32 &max);
00121 virtual void changeEdgeStyle();
00122
00123
00125
00126 private:
00127 static char* DialogSeparator;
00128 static void change3DSkin();
00129 static SbBool isSkinLoaded();
00130 static void setSkinLoaded(SbBool loaded);
00131
00132 private:
00133 SO_DG_CATALOG_ENTRY_HEADER(frameSep);
00134 SO_DG_CATALOG_ENTRY_HEADER(frameSwitch);
00135 SO_DG_CATALOG_ENTRY_HEADER(hFrame);
00136 SO_DG_CATALOG_ENTRY_HEADER(vFrame);
00137
00138 private:
00139 SoScale* separatorFrameScale;
00140 static SbBool m_isSkinLoaded;
00141
00142 void create3DSeparator();
00143 void update3DSeparator();
00144
00146 };
00147
00148 #endif // _SO_DIALOG_SEPARATOR_
00149
00150
00151