diff options
Diffstat (limited to 'khotkeys/shared/khlistview.h')
-rw-r--r-- | khotkeys/shared/khlistview.h | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/khotkeys/shared/khlistview.h b/khotkeys/shared/khlistview.h new file mode 100644 index 000000000..69986299d --- /dev/null +++ b/khotkeys/shared/khlistview.h @@ -0,0 +1,69 @@ +/**************************************************************************** + + KHotKeys + + Copyright (C) 1999-2002 Lubos Lunak <[email protected]> + + Distributed under the terms of the GNU General Public License version 2. + +****************************************************************************/ + +#ifndef _KHLISTVIEW_H_ +#define _KHLISTVIEW_H_ + +#include <qtimer.h> + +#include <klistview.h> +#include <kdemacros.h> + +namespace KHotKeys +{ + +class KDE_EXPORT KHListView + : public KListView + { + Q_OBJECT + Q_PROPERTY( bool forceSelect READ forceSelect WRITE setForceSelect ) + public: + KHListView( QWidget* parent_P, const char* name_P = NULL ); + virtual void clear(); + virtual void insertItem( QListViewItem* item_P ); + virtual void clearSelection(); + bool forceSelect() const; + void setForceSelect( bool force_P ); + signals: + void current_changed( QListViewItem* item_P ); + protected: + virtual void contentsDropEvent (QDropEvent*); + private slots: + void slot_selection_changed( QListViewItem* item_P ); + void slot_selection_changed(); + void slot_current_changed( QListViewItem* item_P ); + void slot_insert_select(); + private: + QListViewItem* saved_current_item; + bool in_clear; + bool ignore; + bool force_select; + QTimer insert_select_timer; + }; + +//*************************************************************************** +// Inline +//*************************************************************************** + +inline +void KHListView::setForceSelect( bool force_P ) + { + force_select = force_P; + } + +inline +bool KHListView::forceSelect() const + { + return force_select; + } + +} // namespace KHotKeys + +#endif |