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);
34 void search(QString &);
41 void _dynamic_button();
42 void _playlists_button();
44 void _delete_button();
47 void _process_list_click(QModelIndex);
52 QStandardItemModel *_model;
53 LibraryFormListState _state;
54 QString _current_artist;
55 QString _current_album;
56 Playlist _current_playlist;
57 QList<Track> _current_tracks;
58 QString _search_pattern;
59 int _search_current_id;
61 void _add_artist(QString artist);
62 void _add_album(QString artist, QString album);
63 void _add_track(Track track);
64 void _add_playlist(QString name);
65 void _delete_track(Track track);
68 #endif // LIBRARYFORM_H