diff options
Diffstat (limited to 'desktop-widgets/tagwidget.h')
-rw-r--r-- | desktop-widgets/tagwidget.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/desktop-widgets/tagwidget.h b/desktop-widgets/tagwidget.h new file mode 100644 index 000000000..6a16129f3 --- /dev/null +++ b/desktop-widgets/tagwidget.h @@ -0,0 +1,34 @@ +#ifndef TAGWIDGET_H +#define TAGWIDGET_H + +#include "groupedlineedit.h" +#include <QPair> + +class QCompleter; + +class TagWidget : public GroupedLineEdit { + Q_OBJECT +public: + explicit TagWidget(QWidget *parent = 0); + void setCompleter(QCompleter *completer); + QPair<int, int> getCursorTagPosition(); + void highlight(); + void setText(const QString &text); + void clear(); + void setCursorPosition(int position); + void wheelEvent(QWheelEvent *event); + void fixPopupPosition(int delta); +public +slots: + void reparse(); + void completionSelected(const QString &text); + void completionHighlighted(const QString &text); + +protected: + void keyPressEvent(QKeyEvent *e); +private: + QCompleter *m_completer; + bool lastFinishedTag; +}; + +#endif // TAGWIDGET_H |