00001 #ifndef IGUANA_GL_BROWSERS_IG_3D_MBOOL_CONTROL_H
00002 # define IGUANA_GL_BROWSERS_IG_3D_MBOOL_CONTROL_H
00003
00004
00005
00006 # include "Iguana/GLBrowsers/interface/Ig3DFieldControl.h"
00007 # include <Inventor/SbLinear.h>
00008 # include <Inventor/fields/SoMFBool.h>
00009 # include <vector>
00010
00011
00012
00013
00014
00015 class QComboBox;
00016 class QCheckBox;
00017
00018
00019
00020
00021
00022 class IGUANA_GL_BROWSERS_API Ig3DMBoolControl : public Ig3DFieldControl
00023 {
00024 Q_OBJECT
00025 public:
00026 Ig3DMBoolControl (IgControlCategory *pane, QString label);
00027
00028
00029
00030
00031 SoMFBool * field (void) const;
00032 void setField (SoMFBool *field);
00033 const SbBool* fieldValue (void) const;
00034
00035 const SbBool* value (void) const;
00036 QWidget* widget(void) const;
00037 virtual void resize (unsigned int size);
00038
00039 public slots:
00040 virtual void setValue (unsigned int size, const SbBool* newval);
00041 virtual void newIndex (int);
00042
00043 protected:
00044 virtual void applyValue (void);
00045 virtual void updateValue (void);
00046
00047 private slots:
00048 void valueChanged (bool newval);
00049
00050 private:
00051 QWidget *m_value;
00052 QCheckBox *m_checkBox;
00053 QComboBox *m_indexs;
00054 std::vector<SbBool> m_values;
00055 };
00056
00057
00058
00059
00060 #endif // IGUANA_GL_BROWSERS_IG_3D_MBOOL_CONTROL_H