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_kdecomboboxprivate;
00030
00031 class hk_kdecombobox :public QComboBox,public hk_dscombobox
00032 {
00033 Q_OBJECT
00034 friend class qlineedit;
00035 public:
00036 hk_kdecombobox(QWidget* wid,hk_form* form=NULL);
00037 virtual ~hk_kdecombobox(void);
00038 virtual void set_value(const hk_string&);
00039 virtual hk_string value(void);
00040 virtual void show_widget(void);
00041 virtual void hide_widget(void);
00042 virtual void close_widget(void);
00043
00044 protected:
00045 virtual void focusInEvent ( QFocusEvent * );
00046 virtual void focusOutEvent ( QFocusEvent * );
00047 virtual void widget_specific_tooltip_changed(void);
00048 virtual bool datasource_enable(void);
00049 virtual bool datasource_disable(void);
00050 virtual void widget_specific_enable_disable();
00051 virtual bool widget_specific_row_change(void);
00052 virtual bool widget_specific_coordinates(unsigned int px,unsigned int py,unsigned int pwidth,unsigned int pheight);
00053 virtual void widget_specific_insert_mode(void);
00054 virtual void widget_specific_row_deleted(void);
00055 virtual void widget_specific_row_added(void);
00056 virtual void widget_specific_enabled_changed(void);
00057 virtual void widget_specific_mode_change(void);
00058 virtual void after_store_changed_data(void);
00059 virtual void widget_specific_font_changed(void);
00060 virtual bool presentationmode_changed(void);
00061
00062 virtual void resizeEvent (QResizeEvent *);
00063 virtual void keyPressEvent(QKeyEvent *);
00064 virtual void mousePressEvent(QMouseEvent*);
00065 virtual void moveEvent ( QMoveEvent * ) ;
00066 virtual void load_listitems(void);
00067 virtual void widget_specific_backgroundcolour_changed(const hk_colour&);
00068 virtual void widget_specific_foregroundcolour_changed(const hk_colour&);
00069 virtual void mouseDoubleClickEvent(QMouseEvent*);
00070
00071 protected slots:
00072 void slot_data_changed(int);
00073 void slot_text_changed(void);
00074
00075 private:
00076 void load_listitems_from_column();
00077 void load_listitems_from_textlist();
00078 void selector_row_changed(int index);
00079 void reposition(void);
00080 bool p_widget_specific_row_change;
00081 bool p_whiledatachange;
00082 void set_currentlistitem(void);
00083 void set_selecteditemdata(int);
00084 int find_edittextitem(void);
00085 hk_kdecomboboxprivate* p_private;
00086
00087 };
00088 #endif