43 class GUI_AbstractLibrary :
47 PIMPL(GUI_AbstractLibrary)
50 explicit GUI_AbstractLibrary(
AbstractLibrary* library, QWidget* parent =
nullptr);
51 virtual ~GUI_AbstractLibrary()
override;
54 virtual void liveSearchChanged();
55 virtual void clearSelections();
56 virtual void searchTriggered();
57 virtual void searchEdited(
const QString& searchString);
58 virtual void keyPressed(
int key);
59 virtual void queryLibrary();
60 virtual void itemDeleteClicked();
61 virtual void showDeleteAnswer(
const QString& text);
63 void tracksDeleteClicked();
66 virtual void initShortcuts();
67 [[nodiscard]]
virtual bool hasSelections()
const;
69 virtual TrackDeletionMode showDeleteDialog(
int trackCount) = 0;
71 [[nodiscard]]
virtual TableView* lvArtist()
const = 0;
72 [[nodiscard]]
virtual TableView* lvAlbum()
const = 0;
73 [[nodiscard]]
virtual TableView* lvTracks()
const = 0;
74 [[nodiscard]]
virtual SearchBar* leSearch()
const = 0;
78 template<
typename T,
typename UI>
79 void setupParent(T* subclass, UI** ui)
84 uiPtr->setupUi(subclass);
89 void showEvent(QShowEvent* e)
override;
93 void boldFontChanged();