Merge pull request #26350 from jjd-uk/estuary_media_align
[xbmc.git] / xbmc / video / GUIViewStateVideo.h
blob862db52a7621e55cf41339a840e466a930ae70e1
1 /*
2 * Copyright (C) 2005-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
7 */
9 #pragma once
11 #include "view/GUIViewState.h"
13 class CGUIViewStateWindowVideo : public CGUIViewState
15 public:
16 explicit CGUIViewStateWindowVideo(const CFileItemList& items) : CGUIViewState(items) {}
18 protected:
19 std::vector<CMediaSource>& GetSources() override;
20 std::string GetLockType() override;
21 KODI::PLAYLIST::Id GetPlaylist() const override;
22 std::string GetExtensions() override;
23 bool AutoPlayNextItem() override;
26 class CGUIViewStateVideoPlaylist : public CGUIViewStateWindowVideo
28 public:
29 explicit CGUIViewStateVideoPlaylist(const CFileItemList& items);
31 protected:
32 void SaveViewState() override;
35 class CGUIViewStateWindowVideoNav : public CGUIViewStateWindowVideo
37 public:
38 explicit CGUIViewStateWindowVideoNav(const CFileItemList& items);
39 bool AutoPlayNextItem() override;
41 protected:
42 void SaveViewState() override;
43 std::vector<CMediaSource>& GetSources() override;
46 class CGUIViewStateWindowVideoPlaylist : public CGUIViewStateWindowVideo
48 public:
49 explicit CGUIViewStateWindowVideoPlaylist(const CFileItemList& items);
51 protected:
52 void SaveViewState() override;
53 bool HideExtensions() override;
54 bool HideParentDirItems() override;
55 std::vector<CMediaSource>& GetSources() override;
56 bool AutoPlayNextItem() override { return false; }
59 class CGUIViewStateVideoMovies : public CGUIViewStateWindowVideo
61 public:
62 explicit CGUIViewStateVideoMovies(const CFileItemList& items);
63 protected:
64 void SaveViewState() override;
67 class CGUIViewStateVideoMusicVideos : public CGUIViewStateWindowVideo
69 public:
70 explicit CGUIViewStateVideoMusicVideos(const CFileItemList& items);
71 protected:
72 void SaveViewState() override;
75 class CGUIViewStateVideoTVShows : public CGUIViewStateWindowVideo
77 public:
78 explicit CGUIViewStateVideoTVShows(const CFileItemList& items);
79 protected:
80 void SaveViewState() override;
83 class CGUIViewStateVideoEpisodes : public CGUIViewStateWindowVideo
85 public:
86 explicit CGUIViewStateVideoEpisodes(const CFileItemList& items);
87 protected:
88 void SaveViewState() override;