CMS 3D CMS Logo

IgQtRangeMControlFloat.h

Go to the documentation of this file.
00001 #ifndef IGUANA_GL_BROWSERS_IG_QT_RANGE_MCONTROL_FLOAT_H
00002 # define IGUANA_GL_BROWSERS_IG_QT_RANGE_MCONTROL_FLOAT_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "Iguana/GLBrowsers/interface/IgQtRangeMValueFloat.h"
00007 # include "Iguana/GLBrowsers/interface/IgQtRangeMControl.h"
00008 
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00013 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00014 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00015 
00016 class IGUANA_GL_BROWSERS_API IgQtRangeMControlFloat : public IgQtRangeMControl,
00017                                                       public IgQtRangeMValueFloat
00018 {
00019     Q_OBJECT
00020 public:
00021     typedef IgQtRangeMValueFloat inherited;
00022     
00023     IgQtRangeMControlFloat (QWidget *parent, int parts,
00024                        float value = 0.,
00025                        const char *name = 0);
00026 
00027     IgQtRangeMControlFloat (QWidget *parent, int parts,
00028                        unsigned int size,
00029                        const float* values,
00030                        const char *name = 0);
00031 
00032     IgQtRangeMControlFloat (QWidget *parent, int parts,
00033                        const rangeMValues& values,
00034                        const char *name = 0);
00035 
00036     // implicit copy constructor
00037     // implicit assignment operator
00038     // implicit destructor
00039 
00040     virtual void        setPrecision (float precision);
00041 
00042     float       stringToNumber (const QString& val) const
00043     { return val.toFloat(); }
00044     
00045     using IgQtRangeMControl::setDirty;
00046     void                setDirty (bool dirty);
00047 
00048     void                resize (unsigned int size, float appendedValues = 0);
00049     
00050     float               getSmallStep (void) const;
00051     float               getLongStep (void) const;
00052 
00053     void                setSmallStep (float size);
00054     void                setLongStep (float size);
00055 
00056     void                setRange (float min, float max);
00057 
00058     virtual void        setValue (float newval);
00059     virtual void        setValue (unsigned int index, float newval);
00060     virtual void        setValue (unsigned int size, const float* newvals);
00061     virtual void        setValue (const rangeMValues& newvals);
00062 
00063     void                revMin (void);
00064     void                revLong (void);
00065     void                revSmall (void);
00066     void                fwdSmall (void);
00067     void                fwdLong (void);
00068     void                fwdMax (void);
00069 
00070     void                editSettings (void);
00071 
00072     QString             getSettingString (void) const;
00073     void                setSettingString (QString &setting);
00074     
00075 signals:
00076     void                valueChanged (std::vector<float> delta);
00077     void                newValue (std::vector<float> newval);
00078 
00079 protected:
00080     virtual void        emitSignals (void);
00081     virtual void        initialize (int parts);
00082     virtual void        adjustSliderSteps (void);
00083     virtual void        moveValue (float delta, MoveDirection dir);
00084     virtual void        fwdEnable (bool enable);
00085     virtual void        revEnable (bool enable);
00086 
00087     void                sliderChanged (int newval);
00088     void                textChanged (const QString &value);
00089     void                updateTextValue (void);
00090 
00091     float               m_longStep;
00092     float               m_smallStep;
00093 };
00094 
00095 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00096 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00097 
00098 #endif // IGUANA_GL_BROWSERS_IG_QT_RANGE_MCONTROL_FLOAT_H

Generated on Tue Jun 9 17:38:33 2009 for CMSSW by  doxygen 1.5.4