1 #include "searchlineedit.h"
2 #include "autocomplete.h"
5 SearchLineEdit::SearchLineEdit(QWidget *parent) : QLineEdit(parent) {
6 setClearButtonEnabled(true);
7 setPlaceholderText(tr("Search"));
9 QAction *searchAction = new QAction();
10 IconUtils::setIcon(searchAction, "edit-find");
11 addAction(searchAction, QLineEdit::LeadingPosition);
14 autoComplete = new AutoComplete(this, this);
15 connect(autoComplete, SIGNAL(suggestionAccepted(Suggestion *)),
16 SIGNAL(suggestionAccepted(Suggestion *)));
18 connect(this, SIGNAL(returnPressed()), SLOT(returnPressed()));
21 QMenu *SearchLineEdit::menu() const {
25 void SearchLineEdit::setMenu(QMenu *menu) {
29 void SearchLineEdit::enableSuggest() {
30 autoComplete->enableSuggest();
33 void SearchLineEdit::preventSuggest() {
34 autoComplete->preventSuggest();
37 void SearchLineEdit::setSuggester(Suggester *suggester) {
38 autoComplete->setSuggester(suggester);
41 AutoComplete *SearchLineEdit::getAutoComplete() {
45 void SearchLineEdit::emitTextChanged(const QString &text) {
46 autoComplete->enableSuggest();
47 emit QLineEdit::textEdited(text);
50 void SearchLineEdit::returnPressed() {
51 QString s = text().simplified();
53 autoComplete->preventSuggest();
58 QLineEdit *SearchLineEdit::getLineEdit() {
62 QWidget *SearchLineEdit::toWidget() {