Added a custom widget for tagging dives

A custom tag widget has been added to MainTab.
Tags are seperated by a comma ",". The implementation
supports escaping a comma by using "\,".
While typing, the widget supports the user by suggesting
tags using a QCompleter.

Signed-off-by: Maximilian Güntner <maximilian.guentner@gmail.com>
This commit is contained in:
Maximilian Güntner 2013-11-02 02:20:02 +01:00
parent 6fe8cb6521
commit 04cdfce782
10 changed files with 582 additions and 50 deletions

26
qt-ui/tagwidget.h Normal file
View file

@ -0,0 +1,26 @@
#ifndef __TAGWIDGET_H
#define __TAGWIDGET_H
#include "groupedlineedit.h"
#include <QCompleter>
#include <QPair>
class TagWidget : public GroupedLineEdit
{
Q_OBJECT
public:
explicit TagWidget(QWidget *parent = 0);
void setCompleter(QCompleter *completer);
QPair<int, int> getCursorTagPosition();
void highlight();
void setText(QString text);
void clear();
void setCursorPosition(int position);
public slots:
void reparse();
void completionSelected(QString);
private:
QCompleter *m_completer;
};
#endif /* __TAGWIDGET_H */