subsurface/desktop-widgets/tagwidget.h
Dirk Hohndel 9021a44ccc Add SPDX header to desktop widgets
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2017-04-29 13:32:55 -07:00

35 lines
771 B
C++

// SPDX-License-Identifier: GPL-2.0
#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