00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | __ __ ____ _____ ____ | 00004 | \ \ / /_ _/ ___|_ _|___ \ | 00005 | \ V / _` \___ \ | | __) | | 00006 | | | (_| |___) || | / __/ | 00007 | |_|\__,_|____/ |_| |_____| | 00008 | | 00009 | core system | 00010 | (C) SuSE GmbH | 00011 \----------------------------------------------------------------------/ 00012 00013 File: YSlider.h 00014 00015 Author: Stefan Hundhammer <sh@suse.de> 00016 00017 /-*/ 00018 00019 #ifndef YSlider_h 00020 #define YSlider_h 00021 00022 #include "YWidget.h" 00023 #include <ycp/YCPString.h> 00024 #include <ycp/YCPInteger.h> 00025 00026 class YMacroRecorder; 00027 00031 class YSlider : public YWidget 00032 { 00033 public: 00034 00038 YSlider( const YWidgetOpt & opt, 00039 const YCPString & label, 00040 int minValue, 00041 int maxValue, 00042 int initialValue ); 00043 00048 virtual char *widgetClass() { return "YSlider"; } 00049 00053 YCPValue changeWidget( const YCPSymbol & property, 00054 const YCPValue & newValue ); 00055 00059 YCPValue queryWidget( const YCPSymbol & property ); 00060 00067 virtual void setLabel( const YCPString & label ); 00068 00075 virtual void setValue( int newValue ); 00076 00077 00078 YCPString label() { return _label; } 00079 int value() { return _value; } 00080 int minValue() { return _minValue; } 00081 int maxValue() { return _maxValue; } 00082 00083 00088 const char *shortcutProperty() { return YUIProperty_Label; } 00089 00090 00091 private: 00092 00098 virtual void saveUserInput( YMacroRecorder *macroRecorder ); 00099 00100 00101 YCPString _label; 00102 int _minValue; 00103 int _maxValue; 00104 int _value; 00105 }; 00106 00107 00108 #endif // YSlider_h