00001
00002
00003 #include "Iguana/GLBrowsers/interface/Ig3DVec4fControl.h"
00004 #include "Iguana/GLBrowsers/interface/IgQtRangeControlFloat.h"
00005 #include <classlib/utils/DebugAids.h>
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 Ig3DVec4fControl::Ig3DVec4fControl (IgControlCategory *pane,
00018 QString label,
00019 QString labels )
00020 : Ig3DVectorBaseControl (pane, label, PositionWOAStyle, 4, labels)
00021 {}
00022
00026 IgQtRangeControlFloat *
00027 Ig3DVec4fControl::control (void) const
00028 { return control (0); }
00029
00030 IgQtRangeControlFloat *
00031 Ig3DVec4fControl::xControl (void) const
00032 { return control (0); }
00033
00034 IgQtRangeControlFloat *
00035 Ig3DVec4fControl::yControl (void) const
00036 { return control (1); }
00037
00038 IgQtRangeControlFloat *
00039 Ig3DVec4fControl::zControl (void) const
00040 { return control (2); }
00041
00042 IgQtRangeControlFloat *
00043 Ig3DVec4fControl::wControl (void) const
00044 { return control (3); }
00045
00049 float
00050 Ig3DVec4fControl::xValue (void) const
00051 { return xControl ()->value (); }
00052
00053 float
00054 Ig3DVec4fControl::yValue (void) const
00055 { return yControl ()->value (); }
00056
00057 float
00058 Ig3DVec4fControl::zValue (void) const
00059 { return zControl ()->value (); }
00060
00061 float
00062 Ig3DVec4fControl::wValue (void) const
00063 { return wControl ()->value (); }
00064
00065 SbVec4f
00066 Ig3DVec4fControl::value (void) const
00067 { return SbVec4f (xValue (), yValue (), zValue (), wValue ()); }
00068
00069 void
00070 Ig3DVec4fControl::setValue (const SbVec4f &newval)
00071 { setValues (newval.getValue (), 4); }
00072
00073 void
00074 Ig3DVec4fControl::setValue (float newx, float newy, float newz, float neww)
00075 { setValue (SbVec4f (newx, newy, newz, neww)); }
00079 float
00080 Ig3DVec4fControl::xChange (void) const
00081 { return xControl ()->valueChange (); }
00082
00083 float
00084 Ig3DVec4fControl::yChange (void) const
00085 { return yControl ()->valueChange (); }
00086
00087 float
00088 Ig3DVec4fControl::zChange (void) const
00089 { return zControl ()->valueChange (); }
00090
00091 float
00092 Ig3DVec4fControl::wChange (void) const
00093 { return wControl ()->valueChange (); }
00094
00095 SbVec4f
00096 Ig3DVec4fControl::change (void) const
00097 { return SbVec4f (xChange (), yChange (), zChange (), wChange ()); }
00101 SoSFVec4f *
00102 Ig3DVec4fControl::field (void) const
00103 { return static_cast<SoSFVec4f *> (Ig3DFieldControl::field ()); }
00104
00105 void
00106 Ig3DVec4fControl::setField (SoSFVec4f *field)
00107 { Ig3DFieldControl::setField (field); }
00108
00109 SbVec4f
00110 Ig3DVec4fControl::fieldValue (void) const
00111 { ASSERT (field ()); return field ()->getValue (); }
00112
00116 void
00117 Ig3DVec4fControl::updateValue (void)
00118 { setValue (fieldValue ()); }
00119
00120 void
00121 Ig3DVec4fControl::applyValue (void)
00122 { field ()->setValue (value ()); }