5 #include "someplayer.h"
7 #include <QStandardItemModel>
8 #include <QStandardItem>
16 using SomePlayer::DataObjects::Library;
17 using SomePlayer::DataObjects::Track;
18 using SomePlayer::DataObjects::Playlist;
20 enum LibraryFormListState {STATE_NONE, STATE_ARTIST, STATE_ALBUM, STATE_TRACK, STATE_PLAYLIST, STATE_PLAYLIST_TRACK, STATE_DYNAMIC};
22 class LibraryForm : public QWidget
27 explicit LibraryForm(Library *lib, QWidget *parent = 0);
36 void _dynamic_button();
37 void _playlists_button();
39 void _delete_button();
42 void _process_list_click(QModelIndex);
47 QStandardItemModel *_model;
48 LibraryFormListState _state;
49 QString _current_artist;
50 QString _current_album;
51 Playlist _current_playlist;
52 QList<Track> _current_tracks;
54 void _add_artist(QString artist);
55 void _add_album(QString artist, QString album);
56 void _add_track(Track track);
57 void _add_playlist(QString name);
58 void _delete_track(Track track);
61 #endif // LIBRARYFORM_H