Sayonara Player
LibrarySearchBar.h
1 #ifndef LIBRARYSEARCHBAR_H
2 #define LIBRARYSEARCHBAR_H
3 
4 #include <QLineEdit>
5 #include "Utils/Pimpl.h"
6 #include "Utils/Library/Filter.h"
7 #include "GUI/Utils/Widgets/WidgetTemplate.h"
8 
9 namespace Library
10 {
11  class SearchBar : public Gui::WidgetTemplate<QLineEdit>
12  {
13  Q_OBJECT
14  PIMPL(SearchBar)
15 
17 
18  signals:
19  void sig_current_mode_changed();
20  void sig_text_changed(const QString& text);
21 
22  public:
23  SearchBar(QWidget* parent=nullptr);
24  ~SearchBar();
25 
26  void set_modes(const QList<Filter::Mode>& modes);
27  QList<Filter::Mode> modes() const;
28 
29  void set_current_mode(Filter::Mode mode);
30  void set_next_mode();
31  Filter::Mode current_mode() const;
32 
33  protected:
34  void init_context_menu();
35  void keyPressEvent(QKeyEvent* e) override;
36  void language_changed() override;
37  void skin_changed() override;
38 
39  private slots:
40  void text_changed(const QString& text);
41  void search_shortcut_pressed();
42 
43  void livesearch_changed();
44  void livesearch_triggered(bool b);
45  };
46 }
47 
48 #endif // LIBRARYSEARCHBAR_H
Template for Sayonara Widgets. This template is responsible for holding a reference to the settings...
Definition: WidgetTemplate.h:78
Definition: LibrarySearchBar.h:11
An interface class needed when implementing a library plugin.
Definition: CachingThread.h:29
Definition: org_mpris_media_player2_adaptor.h:20