23 #ifndef GUI_ABSTRACTLIBRARY_H 24 #define GUI_ABSTRACTLIBRARY_H 26 #include "Components/Library/LibraryNamespaces.h" 27 #include "GUI/Helper/Delegates/ComboBoxDelegate.h" 28 #include "GUI/Helper/SayonaraWidget/SayonaraWidget.h" 30 #include "Views/LibraryView.h" 31 #include "Views/LibraryViewAlbum.h" 33 #include "Models/LibraryItemModelAlbums.h" 34 #include "Models/LibraryItemModelArtists.h" 35 #include "Models/LibraryItemModelTracks.h" 37 #include "Delegates/LibraryItemDelegateAlbums.h" 38 #include "Delegates/LibraryItemDelegateTracks.h" 40 #include "Helper/Settings/SayonaraClass.h" 41 #include "Helper/Filter.h" 43 #include <QStringList> 49 #include <QPushButton> 61 QWidget *parent=
nullptr);
66 void set_index(
int idx);
85 QItemDelegate* _artist_delegate =
nullptr;
87 virtual void init_headers();
88 virtual void init_shortcuts();
89 virtual void language_changed()
override;
90 virtual Library::TrackDeletionMode show_delete_dialog(
int n_tracks)=0;
93 QComboBox* _combo_libchooser =
nullptr;
98 QComboBox* _combo_search =
nullptr;
99 QPushButton* _btn_clear =
nullptr;
100 QLineEdit* _le_search =
nullptr;
101 QPushButton* _btn_refresh =
nullptr;
104 void init_finished();
108 virtual void _sl_live_search_changed();
112 virtual void refresh();
115 virtual void lib_fill_albums(
const AlbumList&);
116 virtual void lib_fill_artists(
const ArtistList&);
117 virtual void track_info_available(
const MetaDataList& v_md);
123 virtual void artist_middle_clicked(
const QPoint& p);
124 virtual void album_middle_clicked(
const QPoint& p);
125 virtual void tracks_middle_clicked(
const QPoint& p);
127 virtual void artist_dbl_clicked(
const QModelIndex &);
128 virtual void album_dbl_clicked(
const QModelIndex &);
129 virtual void track_dbl_clicked(
const QModelIndex &);
131 virtual void columns_title_changed(
const BoolList&);
132 virtual void columns_album_changed(
const BoolList&);
133 virtual void columns_artist_changed(
const BoolList&);
135 virtual void sortorder_title_changed(SortOrder);
136 virtual void sortorder_album_changed(SortOrder);
137 virtual void sortorder_artist_changed(SortOrder);
139 virtual void text_line_edited(
const QString&);
140 virtual void clear_button_pressed();
141 virtual void combo_search_changed(
int idx);
142 virtual void return_pressed();
144 virtual void delete_artist();
145 virtual void delete_album();
146 virtual void delete_tracks();
148 virtual void refresh_artist();
149 virtual void refresh_album();
150 virtual void refresh_tracks();
152 virtual void album_rating_changed(
int);
153 virtual void title_rating_changed(
int);
155 virtual void append();
156 virtual void append_tracks();
157 virtual void play_next();
158 virtual void play_next_tracks();
160 virtual void show_delete_answer(QString);
164 virtual void id3_tags_changed();
168 void setup_parent(T* subclass){
170 subclass->setupUi(subclass);
172 _combo_libchooser = subclass->combo_lib_chooser;
173 _lv_artist = subclass->lv_artist;
174 _lv_album = subclass->lv_album;
175 _lv_tracks = subclass->tb_title;
176 _btn_clear = subclass->btn_clear;
177 _le_search = subclass->le_search;
178 _combo_search = subclass->combo_searchfilter;
182 _combo_search->setIconSize(QSize(16, 16));
183 _combo_search->view()->setIconSize(QSize(16, 16));
191 #endif // GUI_ABSTRACTLIBRARY_H Definition: LibraryItemDelegateAlbums.h:38
Definition: LibraryItemDelegateTracks.h:35
Definition: AbstractLibrary.h:50
The AlbumList class.
Definition: Album.h:72
Definition: GUI_AbstractLibrary.h:54
Definition: LibraryView.h:61
Definition: LibraryViewAlbum.h:33
Definition: ColumnHeader.h:40
ArtistList.
Definition: Artist.h:64
Definition: LibraryItemModelAlbums.h:38
Definition: LibraryItemModelArtists.h:38
Definition: LibraryItemModelTracks.h:35
The ComboBoxDelegate class Set this delegate to ComboBoxes if they should look nice.
Definition: ComboBoxDelegate.h:33