#include "someplayer.h"
#include "playlist.h"
#include <QStandardItemModel>
-#include "player/player.h"
+#include "player/abstractplayer.h"
+#include "player/playerfactory.h"
#include <QSlider>
#include <QMenu>
#include <QTime>
#include "toolswidget.h"
#include "coverfinder.h"
#include "clickablelabel.h"
+#include "playlistsortform.h"
namespace Ui {
class PlayerForm;
using SomePlayer::DataObjects::Library;
using SomePlayer::DataObjects::Playlist;
using SomePlayer::DataObjects::Track;
-using SomePlayer::Playback::Player;
+using SomePlayer::Playback::AbstractPlayer;
using SomePlayer::Playback::PlayerState;
using SomePlayer::DataObjects::TagResolver;
~PlayerForm();
bool isEqualizerEnabled() { return _player->equalizerEnabled(); }
bool isEqualizerAvailable() { return _player->equalizerAvailable(); }
+ QString playerCaption();
signals:
void library();
void clearPlaylist();
void refreshLibrary();
void dirView();
+ void trackChanged();
public slots:
void reload(bool);
void play(Track);
void next();
void prev();
+ void toggle();
+ void toggleRandom();
+ void toggleView();
void showCountdown(QString);
void hideCountdown();
void updateTranslations();
void updateTrackColor();
+ void toggleRepeat();
+ void toggleToolsWidget();
private slots:
void _library();
void _dirview();
- void _toggle_view();
void _process_click(QModelIndex);
void _track_changed(Track);
void _tick(int, int);
void _edit_tags();
void _c_edit_tags();
void _state_changed(PlayerState);
- void _toggle_repeat();
- void _toggle_random();
void _track_decoded(Track);
- void _tools_widget_toggle();
void _display_cover(QImage);
void _toggle_extra_buttons();
+ void _start_playlist();
+ void _sort_playlist();
+ void _playlist_sorted();
private:
Ui::PlayerForm *ui;
QTime *_time;
QStandardItemModel *_model;
CoverFinder *_coverfinder;
- Player *_player;
+ AbstractPlayer *_player;
QSlider *_seek_slider;
QMenu *_context_menu;
QString _search_pattern;
int _search_current_id;
DBusAdaptop *_dbusadaptor;
+
+ PlaylistSortForm *_pls_sort_form;
};
#endif // PLAYERFORM_H