Sayonara Player
CoverLookupAlternative.h
1 /* CoverLookupAlternative.h */
2 
3 /* Copyright (C) 2011-2020 Michael Lugmair (Lucio Carreras)
4  *
5  * This file is part of sayonara player
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11 
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16 
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 #ifndef COVERLOOKUPALTERNATIVE_H
22 #define COVERLOOKUPALTERNATIVE_H
23 
24 #include "AbstractCoverLookup.h"
25 #include "Utils/Pimpl.h"
26 
27 namespace Cover
28 {
29  class Location;
30 
36  public LookupBase
37  {
38  Q_OBJECT
39  PIMPL(AlternativeLookup)
40 
41  signals:
42  void sigCoverChanged(Cover::Location& cl);
43  void sigCoverfetchersChanged();
44 
45  private:
46  void go(const Cover::Location& cl);
47 
48  public:
49  AlternativeLookup(const Cover::Location& cl, int n_covers, bool silent, QObject* parent);
50  ~AlternativeLookup() override;
51 
52  void start();
53  void start(const QString& cover_fetcher_identifier);
54 
55  void startTextSearch(const QString& search_term);
56  void startTextSearch(const QString& search_term, const QString& cover_fetcher_identifier);
57 
58  void stop() override;
59  void reset();
60 
61  bool save(const QPixmap& pm, bool save_to_library);
62  bool isRunning() const;
63 
70  bool isSilent() const;
71 
72  enum SearchMode
73  {
74  Fulltext,
75  Default
76  };
77 
78  QStringList activeCoverfetchers(SearchMode mode) const;
79 
80  private slots:
81  void started();
82  void finished(bool success);
83  void coverFound(const QPixmap& pm);
84  void coverfetchersChanged();
85  };
86 }
87 
88 #endif // COVERLOOKUPALTERNATIVE_H
Cover::AlternativeLookup
The CoverLookupAlternative class.
Definition: CoverLookupAlternative.h:37
Cover::AlternativeLookup::isSilent
bool isSilent() const
silent results that the cover is not stored productively. The AlternativeCoverFetcher will save the c...
Cover::Location
The CoverLocation class.
Definition: CoverLocation.h:39
Cover::LookupBase
The CoverLookupInterface class.
Definition: AbstractCoverLookup.h:39