tageditor/gui/dbquerywidget.h

68 lines
1.4 KiB
C
Raw Normal View History

2016-03-03 22:21:15 +01:00
#ifndef DBQUERYWIDGET_H
#define DBQUERYWIDGET_H
#include <QWidget>
#include <memory>
QT_FORWARD_DECLARE_CLASS(QItemSelection)
2016-06-02 22:41:01 +02:00
QT_FORWARD_DECLARE_CLASS(QMenu)
QT_FORWARD_DECLARE_CLASS(QAction)
2016-03-03 22:21:15 +01:00
namespace Settings {
class KnownFieldModel;
}
namespace QtGui {
namespace Ui {
class DbQueryWidget;
}
class QueryResultsModel;
class TagEditorWidget;
class TagEdit;
class DbQueryWidget : public QWidget
{
Q_OBJECT
public:
explicit DbQueryWidget(TagEditorWidget *tagEditorWidget, QWidget *parent = nullptr);
~DbQueryWidget();
void insertSearchTermsFromTagEdit(TagEdit *tagEdit);
public slots:
void searchMusicBrainz();
void searchLyricsWikia();
2016-03-03 22:21:15 +01:00
void abortSearch();
2016-06-02 22:41:01 +02:00
void applyResults();
void insertSearchTermsFromActiveTagEdit();
void clearSearchCriteria();
2016-03-03 22:21:15 +01:00
private slots:
void showResults();
void setStatus(bool aborted);
void fileStatusChanged(bool opened, bool hasTags);
void showResultsContextMenu();
void fetchAndShowCoverForSelection();
void showCover(const QByteArray &data);
void showCoverFromIndex(const QModelIndex &index);
2016-03-03 22:21:15 +01:00
protected:
bool eventFilter(QObject *obj, QEvent *event);
private:
std::unique_ptr<Ui::DbQueryWidget> m_ui;
TagEditorWidget *m_tagEditorWidget;
QueryResultsModel *m_model;
int m_coverIndex;
2016-06-02 22:41:01 +02:00
QMenu *m_menu;
QAction *m_insertPresentDataAction;
2016-03-03 22:21:15 +01:00
};
}
#endif // DBQUERYWIDGET_H