|
|
#ifndef LABELTEXT_H #define LABELTEXT_H class LabelText; #include "Param.h" /** * Widget regroupant Label, Text et Slider pour régler un paramètre du programme. * @short Widget regroupant Label, Text et Slider * @author Ph.Chose * @version 10/99 */ class LabelText { private: /** * Widget de base */ Widget root; /** * Frame entourant le TextField */ Widget frame; /** * Label */ Widget label; /** * TextField */ Widget text; /** * Scale */ Widget slider; /** * Pointeur sur la classe des paramètres */ Param* theParam; /** * Valeur minimale du slider */ float min; /** * Valeur maximale du slider */ float max; /** * Pas d'incrément pour le slider */ float step; /** * Nombre de pas d'incrément pour le slider */ int nbSteps; public: /** * Construit le widget. * @param theParam pointeur sur la classe paramètres * @param parent widget père * @param name label du widget * @param min valeur minimale du slider * @param max valeur maximale du slider * @param step pas d'incrémentation du slider */ LabelText(Param* theParam, Widget parent, char* name, float min = 0., float max = 1., float step = 0.1); /** * Affecte une valeur entière au widget * @param data la valeur à affecter */ void setInteger(int data); /** * Affecte une valeur flottante au widget * @param data la valeur à affecter */ void setFloat(float data); /** * Affecte une chaîne de caractères au widget * @param la chaîne de caractères à affecter */ void setString(char*); /** * Récupère la valeur entiere affectée au widget * @return valeur entière */ int getInteger(); /** * Récupère la valeur flottante affectée au widget * @return valeur flottante */ float getFloat(); /** * Récupère la chaîne de caractères affectée au widget * @return chaîne de caractères */ char* getString(); private: /** * Règle le slider * @param data la valeur à laquelle le Slider doit être mis */ void setSlider(float data); /** * Récupère la valeur courante du Slider * @return valeur courante du slider */ float getSlider(); /** * Fonction callback appelée lorsque le slider est bougé et relaché. * Déclenche la mise à jour du TextField et met à jour les paramètres dans la classe @ref Param */ static void sliderValueChanged(Widget, XtPointer clientData, XtPointer); /** * Fonction callback appelée lorsque le slider est en train d'être bougé. * Déclenche la mise à jour du TextField pour refléter la valeur courante du slider */ static void sliderDrag(Widget, XtPointer clientData, XtPointer); /** * Fonction callback appelée lorsque la valeur du TextField est modifiée (touche Enter enfoncée) * Déclenche la mise à jour du slider et la récupération des paramètres par la classe @ref Param */ static void textValueChanged(Widget, XtPointer clientData, XtPointer); }; #endif
Generated by: chose@josquin on Wed Nov 10 20:57:01 199. |