keduca
ktagcombobox.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __KTAGCOMBOBOX_H__
00026 #define __KTAGCOMBOBOX_H__
00027
00028 #include <qcombobox.h>
00029 #include <qiconset.h>
00030 class QPopupMenu;
00031 class QStringList;
00032
00033
00034
00035
00036
00037
00038
00039 class KTagComboBox : public QComboBox
00040 {
00041 Q_OBJECT
00042
00043 public:
00044 KTagComboBox(QWidget *parent=0, const char *name=0);
00045 ~KTagComboBox();
00046
00047 void insertItem(const QIconSet& icon, const QString &text, const QString &tag, const QString &submenu = QString::null, int index=-1 );
00048 void insertItem(const QString &text, const QString &tag, const QString &submenu = QString::null, int index=-1 );
00049 void insertSeparator(const QString &submenu = QString::null, int index=-1 );
00050 void insertSubmenu(const QString &text, const QString &tag, const QString &submenu = QString::null, int index=-1);
00051 void changeItem( const QString &text, int index );
00052
00053 int count() const;
00054 void clear();
00055
00056
00057
00058
00059 QString currentTag() const;
00060 QString tag ( int i ) const;
00061 bool containsTag (const QString &str ) const;
00062
00063
00064
00065
00066 int currentItem() const;
00067 void setCurrentItem(int i);
00068 void setCurrentItem(const QString &code);
00069
00070
00071 virtual void setFont( const QFont & );
00072
00073 signals:
00074 void activated( int index );
00075 void highlighted( int index );
00076
00077 private slots:
00078 void internalActivate( int );
00079 void internalHighlight( int );
00080
00081 protected:
00082 void paintEvent( QPaintEvent * );
00083 void mousePressEvent( QMouseEvent * );
00084 void keyPressEvent( QKeyEvent *e );
00085 void popupMenu();
00086
00087 private:
00088
00089 QStringList *_tags;
00090 QPopupMenu *_popup;
00091 int _current;
00092 };
00093
00094 #endif