Mercurial > minori
view include/gui/pages/now_playing.h @ 291:9a88e1725fd2
*: refactor lots of stuff
I forgot to put this into different commits, oops!
anyway, it doesn't really matter *that* much since this is an
unfinished hobby project anyway. once it starts getting stable
commit history will be more important, but for now it's not
that big of a deal
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Sun, 12 May 2024 16:31:07 -0400 |
parents | 3ec7804abf17 |
children | 6b0768158dcd |
line wrap: on
line source
#ifndef MINORI_GUI_PAGES_NOW_PLAYING_H_ #define MINORI_GUI_PAGES_NOW_PLAYING_H_ #include "gui/widgets/anime_info.h" #include "gui/widgets/poster.h" #include "gui/widgets/text.h" #include <QFrame> #include <memory> #include <unordered_map> class QStackedWidget; namespace Anime { class Anime; } namespace anitomy { class Elements; } namespace NowPlayingPages { class Default : public QWidget { Q_OBJECT public: Default(QWidget* parent = nullptr); }; class Playing : public QWidget { Q_OBJECT public: Playing(QWidget* parent = nullptr); void SetPlayingAnime(const Anime::Anime& anime, const anitomy::Elements& info); int GetPlayingAnime(); private: int _id = 0; int _episode = 0; std::unique_ptr<QWidget> _main = nullptr; std::unique_ptr<TextWidgets::Title> _title = nullptr; std::unique_ptr<AnimeInfoWidget> _info = nullptr; std::unique_ptr<QWidget> _sidebar = nullptr; std::unique_ptr<Poster> _poster = nullptr; }; } // namespace NowPlayingPages class NowPlayingPage final : public QFrame { Q_OBJECT public: NowPlayingPage(QWidget* parent = nullptr); void SetDefault(); void SetPlaying(const Anime::Anime& anime, const anitomy::Elements& episodes); int GetPlayingId(); private: QStackedWidget* stack; }; #endif // MINORI_GUI_PAGES_NOW_PLAYING_H_