CMS 3D CMS Logo

Ig3DFieldControl Class Reference

#include <Iguana/GLBrowsers/interface/Ig3DFieldControl.h>

Inheritance diagram for Ig3DFieldControl:

IgControlBase IgControlItem Ig3DBoolControl Ig3DColorControl Ig3DEnumControl Ig3DMBoolControl Ig3DMColorControl Ig3DMStringControl Ig3DPlaneControl Ig3DRangeControl< C1, C2, C3 > Ig3DRangeControl< SoSFFloat, float, IgQtRangeControlFloat > Ig3DRangeControl< SoSFInt32, int, IgQtRangeControlInt > Ig3DRangeControl< SoSFShort, short, IgQtRangeControlShort > Ig3DRangeControl< SoSFUInt32, unsigned int, IgQtRangeControlUInt > Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort > Ig3DRangeMControl< C1, C2, C3 > Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat > Ig3DRangeMControl< SoMFInt32, int, IgQtRangeMControlInt > Ig3DRangeMControl< SoMFShort, short, IgQtRangeMControlShort > Ig3DRangeMControl< SoMFUInt32, unsigned int, IgQtRangeMControlUInt > Ig3DRangeMControl< SoMFUShort, unsigned short, IgQtRangeMControlUShort > Ig3DRotationFControl Ig3DStringControl Ig3DVectorBaseControl

List of all members.

Public Slots

virtual void fieldSettingsChanged (void)

Signals

void settingsChanged (void)
void settingsChanged (SoField *)

Public Member Functions

virtual void attach (void)
void clearField (void)
virtual void detach (void)
 Ig3DFieldControl (IgControlCategory *pane)
 ~Ig3DFieldControl (void)

Protected Member Functions

SoField * field (void) const
virtual bool hasValue (void) const
void setField (SoField *field)

Static Protected Member Functions

static void fieldChanged (void *data, SoSensor *sensor)

Protected Attributes

SoField * m_field
SoFieldSensor * m_sensor


Detailed Description

Definition at line 21 of file Ig3DFieldControl.h.


Constructor & Destructor Documentation

Ig3DFieldControl::Ig3DFieldControl ( IgControlCategory pane  ) 

Definition at line 18 of file Ig3DFieldControl.cc.

00019     : IgControlBase (pane),
00020       m_field (0),
00021       m_sensor (new SoFieldSensor (&fieldChanged, this))
00022 {}

Ig3DFieldControl::~Ig3DFieldControl ( void   ) 

Definition at line 24 of file Ig3DFieldControl.cc.

References m_sensor.

00025 { delete m_sensor; }


Member Function Documentation

void Ig3DFieldControl::attach ( void   )  [virtual]

Reimplemented from IgControlBase.

Definition at line 44 of file Ig3DFieldControl.cc.

References IgControlBase::attach(), m_field, and m_sensor.

Referenced by setField().

00045 {
00046     IgControlBase::attach ();
00047     if (m_field)
00048         m_sensor->attach (m_field);
00049 }

void Ig3DFieldControl::clearField ( void   ) 

Definition at line 36 of file Ig3DFieldControl.cc.

References setField().

00037 { setField (0); }

void Ig3DFieldControl::detach ( void   )  [virtual]

Reimplemented from IgControlBase.

Definition at line 52 of file Ig3DFieldControl.cc.

References IgControlBase::detach(), m_field, and m_sensor.

Referenced by setField().

00053 {
00054     IgControlBase::detach ();
00055     if (m_field)
00056         m_sensor->detach ();
00057 }

SoField * Ig3DFieldControl::field ( void   )  const [protected]

Reimplemented in Ig3DBoolControl, Ig3DColorControl, Ig3DEnumControl, Ig3DMBoolControl, Ig3DMColorControl, Ig3DMStringControl, Ig3DPlaneControl, Ig3DRangeControl< C1, C2, C3 >, Ig3DRangeMControl< C1, C2, C3 >, Ig3DRotationControl, Ig3DRotationFControl, Ig3DStringControl, Ig3DVec2fControl, Ig3DVec3fControl, Ig3DVec4fControl, Ig3DRangeControl< SoSFShort, short, IgQtRangeControlShort >, Ig3DRangeControl< SoSFFloat, float, IgQtRangeControlFloat >, Ig3DRangeControl< SoSFUInt32, unsigned int, IgQtRangeControlUInt >, Ig3DRangeControl< SoSFInt32, int, IgQtRangeControlInt >, Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort >, Ig3DRangeMControl< SoMFShort, short, IgQtRangeMControlShort >, Ig3DRangeMControl< SoMFUInt32, unsigned int, IgQtRangeMControlUInt >, Ig3DRangeMControl< SoMFUShort, unsigned short, IgQtRangeMControlUShort >, Ig3DRangeMControl< SoMFInt32, int, IgQtRangeMControlInt >, and Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat >.

Definition at line 40 of file Ig3DFieldControl.cc.

References m_field.

Referenced by Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort >::applyValue(), Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat >::applyValue(), Ig3DMColorControl::field(), Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat >::field(), Ig3DColorControl::field(), Ig3DRotationFControl::field(), Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort >::field(), Ig3DPlaneControl::field(), Ig3DStringControl::field(), Ig3DBoolControl::field(), Ig3DEnumControl::field(), Ig3DMBoolControl::field(), Ig3DRotationControl::field(), Ig3DVec3fControl::field(), Ig3DVec2fControl::field(), Ig3DVec4fControl::field(), Ig3DMStringControl::field(), Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort >::fieldValue(), and Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat >::fieldValue().

00041 { return m_field; }

void Ig3DFieldControl::fieldChanged ( void data,
SoSensor *  sensor 
) [static, protected]

Definition at line 64 of file Ig3DFieldControl.cc.

References ASSERT, and IgControlBase::update().

00065 { ASSERT (data); static_cast<Ig3DFieldControl *> (data)->update (); }

void Ig3DFieldControl::fieldSettingsChanged ( void   )  [virtual, slot]

Definition at line 68 of file Ig3DFieldControl.cc.

References m_field, and settingsChanged().

Referenced by Ig3DPlaneControl::emitSettingsChanged(), Ig3DRotationFControl::emitSettingsChanged(), Ig3DRangeControl< C1, C2, C3 >::Ig3DRangeControl(), Ig3DRangeMControl< C1, C2, C3 >::Ig3DRangeMControl(), and Ig3DVectorBaseControl::syncSettings().

00069 {
00070     emit settingsChanged (m_field);
00071     emit settingsChanged ();
00072 }

bool Ig3DFieldControl::hasValue ( void   )  const [protected, virtual]

Reimplemented from IgControlBase.

Definition at line 60 of file Ig3DFieldControl.cc.

References IgControlBase::hasValue(), and m_field.

00061 { return IgControlBase::hasValue () && m_field; }

void Ig3DFieldControl::setField ( SoField *  field  )  [protected]

Definition at line 28 of file Ig3DFieldControl.cc.

References attach(), detach(), and m_field.

Referenced by clearField(), Ig3DVec2fControl::setField(), Ig3DPlaneControl::setField(), Ig3DVec4fControl::setField(), Ig3DBoolControl::setField(), Ig3DRangeMControl< SoMFFloat, float, IgQtRangeMControlFloat >::setField(), Ig3DVec3fControl::setField(), Ig3DStringControl::setField(), Ig3DRotationFControl::setField(), Ig3DRangeControl< SoSFUShort, unsigned short, IgQtRangeControlUShort >::setField(), Ig3DMStringControl::setField(), Ig3DEnumControl::setField(), Ig3DMBoolControl::setField(), Ig3DRotationControl::setField(), Ig3DMColorControl::setField(), and Ig3DColorControl::setField().

00029 {
00030     detach ();
00031     m_field = field;
00032     attach ();
00033 }

void Ig3DFieldControl::settingsChanged ( void   )  [signal]

Referenced by fieldSettingsChanged(), Ig3DPlaneControl::Ig3DPlaneControl(), Ig3DRangeControl< C1, C2, C3 >::Ig3DRangeControl(), Ig3DRangeMControl< C1, C2, C3 >::Ig3DRangeMControl(), Ig3DRotationFControl::Ig3DRotationFControl(), and Ig3DVectorBaseControl::Ig3DVectorBaseControl().

void Ig3DFieldControl::settingsChanged ( SoField *   )  [signal]


Member Data Documentation

SoField* Ig3DFieldControl::m_field [protected]

Definition at line 51 of file Ig3DFieldControl.h.

Referenced by attach(), detach(), field(), fieldSettingsChanged(), hasValue(), and setField().

SoFieldSensor* Ig3DFieldControl::m_sensor [protected]

Definition at line 52 of file Ig3DFieldControl.h.

Referenced by attach(), detach(), and ~Ig3DFieldControl().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:24:57 2009 for CMSSW by  doxygen 1.5.4