Fixed bug with no_repeate mode, improved prev button behaviour
[someplayer] / src / dbstorage.h
index cc10880..60b63ee 100644 (file)
@@ -52,15 +52,25 @@ namespace SomePlayer {
                        Playlist getNeverPlayed();
                        Playlist getRecentlyAdded();
 
-                       QList<Track> search(QString pattern);
+                       QList<Track> searchTracks(QString pattern);
+
+                       int getArtistsCount();
+                       int getAlbumsCount();
+                       int getTracksCount();
 
                        void removeTrack(Track track);
                        void addToFavorites(Track track);
+                       void removeFromFavorites(Track track);
 
                        void updateTrackCount(Track track);
                        Track updateTrack(Track);
                        void addTrack(Track track);
 
+                       void deleteTracksFrom(QString path);
+                       void checkTracksFrom(QString path);
+
+                       bool isFavorite(Track);
+
                private:
                        QSqlDatabase db;
                        void _create_database_structure();
@@ -81,14 +91,19 @@ namespace SomePlayer {
                        QSqlQuery *_get_most_played_query;
                        QSqlQuery *_get_never_played_query;
                        QSqlQuery *_get_recently_added_query;
-                       QSqlQuery *_get_track_count;
+                       QSqlQuery *_get_track_count_query;
                        QSqlQuery *_get_tracks_by_pattern_query;
                        QSqlQuery *_get_track_id_by_source_query;
                        QSqlQuery *_get_directories_query;
+                       QSqlQuery *_get_artists_count_query;
+                       QSqlQuery *_get_albums_count_query;
+                       QSqlQuery *_get_tracks_count_query;
+                       QSqlQuery *_get_tracks_source_from_query;
 
                        QSqlQuery *_check_artist_query;
                        QSqlQuery *_check_album_query;
                        QSqlQuery *_check_directory_query;
+                       QSqlQuery *_check_favorite_query;
 
                        QSqlQuery *_insert_artist_query;
                        QSqlQuery *_insert_album_query;
@@ -102,6 +117,9 @@ namespace SomePlayer {
                        QSqlQuery *_remove_track_query;
                        QSqlQuery *_remove_empty_artists_query;
                        QSqlQuery *_remove_empty_albums_query;
+                       QSqlQuery *_remove_tracks_from_query;
+                       QSqlQuery *_remove_directory_query;
+                       QSqlQuery *_remove_track_from_favorites_query;
                };
        };
 };