]> git.sur5r.net Git - minitube/blob - src/searchwidget.h
dd42b7014f0ab8b29423c23b57e1ea115cef3104
[minitube] / src / searchwidget.h
1 #ifndef SEARCHWIDGET
2 #define SEARCHWIDGET
3
4 #include <QtWidgets>
5
6 class SearchButton;
7 class Suggester;
8 class Suggestion;
9 class AutoComplete;
10
11 class SearchWidget {
12
13 public:
14     virtual QMenu *menu() const = 0;
15     virtual void setMenu(QMenu *menu) = 0;
16     virtual void enableSuggest() = 0;
17     virtual void preventSuggest() = 0;
18     virtual void selectAll() = 0;
19     virtual void setSuggester(Suggester *suggester) = 0;
20     virtual void setInactiveText(const QString &text) = 0;
21     virtual void setText(const QString &text) = 0;
22     virtual AutoComplete *getAutoComplete() = 0;
23     virtual void emitTextChanged(const QString &text) = 0;
24     virtual void returnPressed() = 0;
25     virtual QString text() = 0;
26     virtual QLineEdit *getLineEdit() = 0;
27     virtual QWidget *toWidget() = 0;
28
29 signals:
30     void textChanged(const QString &text);
31     void textEdited(const QString &text);
32     void search(const QString &text);
33     void suggestionAccepted(Suggestion *suggestion);
34
35 };
36
37 #endif // SEARCHWIDGET