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_ROW_DIALOG_
00024 #define _SO_ROW_DIALOG_
00025
00026 #include <DialogViz/dialog/SoDialogGroup.h>
00027
00077 class SoRowDialog : public SoDialogGroup
00078 {
00079 SO_DG_HEADER(SoRowDialog);
00080
00081 public:
00082
00086 SoSFInt32 rowSpacing;
00087
00091 SoRowDialog();
00092
00093
00094 private:
00095 virtual void buildWidget(SoWidget parent, SbVec2i32 &rSize, SbVec2i32 & pos, SbBool isActive2d);
00096 static void initClass();
00097 static void exitClass();
00098 virtual void updateFromSensor(SoSensor* sensor);
00099
00100 private:
00101 virtual ~SoRowDialog();
00102 virtual void fixSizeWithBorder(SbVec2i32 &size, int revert = 1);
00103
00104 private:
00105 void computeNewChildrenHeight(SbVec2i32 &rSize);
00106 void getDefaultSize(SbVec2i32 &size, SbVec2i32 &min, SbVec2i32 &max);
00107 void fixPosWithComponentBorder(SbVec2i32 &pos);
00108 virtual SbVec2i32 getComponentInitSize();
00109 virtual void setChildrenComponentSize();
00110 virtual void setChildrenLabelSize();
00111 void updateChildren();
00112
00113
00114
00115 FIELD_SENSOR(rowSpacing);
00116 void changeRowSpacing();
00117 virtual void changeEdgeStyle();
00118
00120
00121 private:
00122
00123 private:
00124 void update3DChildren();
00125
00127 };
00128
00129 #endif // _SO_ROW_DIALOG_
00130
00131
00132