00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef HK_KDECOMBOBOX
00013 #define HK_KDECOMBOBOX
00014 #include <hk_dscombobox.h>
00015 #include <qcombobox.h>
00029 class hk_kdecombobox :public QComboBox,public hk_dscombobox
00030 {
00031 Q_OBJECT
00032 friend class qlineedit;
00033 public:
00034 hk_kdecombobox(QWidget* wid,hk_form* form=NULL);
00035 virtual ~hk_kdecombobox(void);
00036 virtual void set_value(const hk_string&);
00037 virtual hk_string value(void);
00038
00039 protected:
00040 virtual bool datasource_enable(void);
00041 virtual bool datasource_disable(void);
00042 virtual void widget_specific_enable_disable();
00043 virtual bool widget_specific_row_change(void);
00044 virtual bool widget_specific_coordinates(unsigned int px,unsigned int py,unsigned int pwidth,unsigned int pheight);
00045 virtual void widget_specific_insert_mode(void);
00046 virtual void widget_specific_row_deleted(void);
00047 virtual void widget_specific_row_added(void);
00048 virtual void widget_specific_mode_change(void);
00049 virtual void after_store_changed_data(void);
00050 virtual void widget_specific_font_changed(void);
00051 virtual void presentationmode_changed(void);
00052
00053 virtual void resizeEvent (QResizeEvent *);
00054 virtual void keyPressEvent(QKeyEvent *);
00055 virtual void mousePressEvent(QMouseEvent*);
00056 virtual void moveEvent ( QMoveEvent * ) ;
00057 virtual void load_listitems(void);
00058 virtual void widget_specific_backgroundcolour_changed(const hk_colour&);
00059 virtual void widget_specific_foregroundcolour_changed(const hk_colour&);
00060 virtual void mouseDoubleClickEvent(QMouseEvent*);
00061
00062 protected slots:
00063 void slot_data_changed(int);
00064 void slot_text_changed(void);
00065
00066 private:
00067 void selector_row_changed(int index);
00068 void reposition(void);
00069 bool p_widget_specific_row_change;
00070 bool p_whiledatachange;
00071 void set_currentlistitem(void);
00072 void set_selecteditemdata(int);
00073 int find_edittextitem(void);
00074
00075 };
00076 #endif