diff options
Diffstat (limited to 'kbugbuster/gui/packageselectdialog.h')
-rw-r--r-- | kbugbuster/gui/packageselectdialog.h | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/kbugbuster/gui/packageselectdialog.h b/kbugbuster/gui/packageselectdialog.h new file mode 100644 index 00000000..1fe596aa --- /dev/null +++ b/kbugbuster/gui/packageselectdialog.h @@ -0,0 +1,64 @@ +#ifndef PACKAGESELECTDIALOG_H +#define PACKAGESELECTDIALOG_H + +#include <qdict.h> + +#include <kdialogbase.h> + +#include "package.h" + +class KCompletion; +class KLineEdit; + +class PackageListView : public QListView +{ + Q_OBJECT + public: + PackageListView( QWidget *parent ); + + void resetTyped(); + + signals: + void typed( const QString & ); + + protected: + void keyPressEvent( QKeyEvent *e ); + + private: + QString mTyped; +}; + +class PackageSelectDialog : public KDialogBase +{ + Q_OBJECT + public: + PackageSelectDialog(QWidget *parent=0,const char *name=0); + ~PackageSelectDialog(); + + void setRecentPackages( const QStringList & ); + void setPackages( const Package::List &pkgs ); + + Package selectedPackage(); + QString selectedComponent(); + + protected slots: + void slotOk(); + + private slots: + void recentSelected( int, QListViewItem * ); + void completeSelected( int, QListViewItem * ); + void completeTyped( const QString & ); + + private: + Package::List mPackages; + Package mSelectedPackage; + QString mSelectedComponent; + + QListView *mRecentList; + PackageListView *mCompleteList; + KLineEdit *mPackageEdit; + KCompletion *mCompletion; + QDict<QListViewItem> mCompletionDict; +}; + +#endif |