46class SoDialogGroup :
public SoDialogComponent
48 SO_DG_HEADER(SoDialogGroup);
110 virtual void insertChild(SoDialogComponent *child,
int newChildIndex);
125 virtual int findChild(
const SoDialogComponent *child)
const;
150 virtual void replaceChild(SoDialogComponent *oldChild, SoDialogComponent *newChild);
154 virtual SoChildList *getChildren()
const;
157 static void initClass();
158 static void exitClass();
159 virtual void updateFromSensor(
SoSensor* sensor);
160 SbBool isVScrollVisible() {
return m_vScrollVisible;};
161 void updateAfterSceneGraphChange();
162 virtual void resetSize();
163 virtual void destroyWidget();
166 virtual void internalRemoveChild(
int index ) {
removeChild(index); }
167 virtual void internalRemoveChild( SoNode *child ) {
removeChild(internalFindChild(child)); }
169 virtual void internalAddChild( SoNode *child );
170 virtual int internalFindChild(
const SoNode *child )
const;
171 virtual void internalInsertChild( SoNode *child,
int newChildIndex );
172 virtual SoNode *internalGetChild(
int index)
const {
return getChild(index); }
173 virtual void internalReplaceChild(
int index, SoNode *newChild);
174 virtual void internalReplaceChild( SoNode *oldChild, SoNode *newChild) {
replaceChild(
dynamic_cast<SoDialogComponent*
>(oldChild),
dynamic_cast<SoDialogComponent*
>(newChild) ); }
179 virtual SbBool readInstance(SoInput *in,
unsigned short flags);
182 virtual SbBool readChildren(SoInput *in);
184 int m_arrayNumChildren;
185 SbVec2i32* m_childrenMin;
186 SbVec2i32* m_childrenMax;
187 SbVec2i32* m_childrenSize;
191 SoWidget m_groupWidget;
194 int m_numberOfChildren;
198 virtual ~SoDialogGroup();
199 virtual void fixSizeWithBorder(SbVec2i32 &size,
int revert = 1);
200 virtual SbVec2i32 getLabelInitSize();
201 virtual SbVec2i32 getComponentInitSize();
203 virtual void getSize(SbVec2i32 &size, SbVec2i32 &min, SbVec2i32 &max);
204 virtual void setChildrenComponentSize() {};
205 virtual void setChildrenLabelSize() {};
206 virtual void setComponentSize(SbVec2i32& size);
207 virtual void setLabelSize(SbVec2i32& size);
208 void setScrollProperties();
209 void updateGroupWidgetScrollPosition();
210 void updateChildrenSizeDB();
212 virtual void changeEnable();
213 virtual void changeWidgetEnable(
SbBool state);
217 void createGroupWidget(SbVec2i32 & rSize, SbVec2i32 & pos);
218 virtual void applyAuditor(SoDialogViz* dlgCpt);
221 SoDialogGroupAuditor* m_defaultAuditor;
226 virtual void show3D(
SbBool show);
227 virtual void change3DPosition();
228 virtual void change3DEnable();
229 virtual void change3DWidgetEnable(
SbBool state);
233 virtual void getBoundingBox(SoGetBoundingBoxAction* action);
234 virtual void rayPick(SoRayPickAction *action);
235 virtual void search(SoSearchAction *action);
236 virtual void write(SoWriteAction *action);