00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | __ __ ____ _____ ____ | 00004 | \ \ / /_ _/ ___|_ _|___ \ | 00005 | \ V / _` \___ \ | | __) | | 00006 | | | (_| |___) || | / __/ | 00007 | |_|\__,_|____/ |_| |_____| | 00008 | | 00009 | core system | 00010 | (C) SuSE GmbH | 00011 \----------------------------------------------------------------------/ 00012 00013 File: YCheckBox.h 00014 00015 Author: Mathias Kettner <kettner@suse.de> 00016 Maintainer: Stefan Hundhammer <sh@suse.de> 00017 00018 /-*/ 00019 00020 #ifndef YCheckBox_h 00021 #define YCheckBox_h 00022 00023 #include "YWidget.h" 00024 #include <ycp/YCPString.h> 00025 00026 00027 class YMacroRecorder; 00028 00032 class YCheckBox : public YWidget 00033 { 00034 public: 00038 YCheckBox( const YWidgetOpt & opt, const YCPString & label ); 00039 00044 virtual char *widgetClass() { return "YCheckBox"; } 00045 00049 YCPValue changeWidget( const YCPSymbol & property, const YCPValue & newvalue ); 00050 00054 YCPValue queryWidget( const YCPSymbol & property ); 00055 00059 virtual void setValue( const YCPValue & checked ) = 0; 00060 00065 virtual YCPValue getValue() = 0; 00066 00071 virtual void setLabel( const YCPString & label ); 00072 00078 YCPString getLabel(); 00079 00084 const char *shortcutProperty() { return YUIProperty_Label; } 00085 00090 const char *userInputProperty() { return YUIProperty_Value; } 00091 00092 00093 protected: 00097 YCPString label; 00098 00099 00100 private: 00101 00107 virtual void saveUserInput( YMacroRecorder *macroRecorder ); 00108 }; 00109 00110 00111 #endif // YCheckBox_h