summaryrefslogtreecommitdiffstats
path: root/xbmc/video/windows/GUIWindowVideoNav.h
diff options
context:
space:
mode:
Diffstat (limited to 'xbmc/video/windows/GUIWindowVideoNav.h')
-rw-r--r--xbmc/video/windows/GUIWindowVideoNav.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/xbmc/video/windows/GUIWindowVideoNav.h b/xbmc/video/windows/GUIWindowVideoNav.h
new file mode 100644
index 0000000..bdf4987
--- /dev/null
+++ b/xbmc/video/windows/GUIWindowVideoNav.h
@@ -0,0 +1,68 @@
+/*
+ * Copyright (C) 2005-2018 Team Kodi
+ * This file is part of Kodi - https://kodi.tv
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * See LICENSES/README.md for more information.
+ */
+
+#pragma once
+
+#include "GUIWindowVideoBase.h"
+
+class CFileItemList;
+
+enum SelectFirstUnwatchedItem
+{
+ NEVER = 0,
+ ON_FIRST_ENTRY = 1,
+ ALWAYS = 2
+};
+
+enum IncludeAllSeasonsAndSpecials
+{
+ NEITHER = 0,
+ BOTH = 1,
+ ALL_SEASONS = 2,
+ SPECIALS = 3
+};
+
+class CGUIWindowVideoNav : public CGUIWindowVideoBase
+{
+public:
+
+ CGUIWindowVideoNav(void);
+ ~CGUIWindowVideoNav(void) override;
+
+ bool OnAction(const CAction &action) override;
+ bool OnMessage(CGUIMessage& message) override;
+
+ bool OnItemInfo(const CFileItem& fileItem, ADDON::ScraperPtr& info) override;
+
+protected:
+ bool ApplyWatchedFilter(CFileItemList &items);
+ bool GetFilteredItems(const std::string &filter, CFileItemList &items) override;
+
+ void OnItemLoaded(CFileItem* pItem) override {};
+
+ // override base class methods
+ bool Update(const std::string &strDirectory, bool updateFilterPath = true) override;
+ bool GetDirectory(const std::string &strDirectory, CFileItemList &items) override;
+ void UpdateButtons() override;
+ void DoSearch(const std::string& strSearch, CFileItemList& items) override;
+ virtual void PlayItem(int iItem);
+ void OnDeleteItem(const CFileItemPtr& pItem) override;
+ void GetContextButtons(int itemNumber, CContextButtons &buttons) override;
+ bool OnContextButton(int itemNumber, CONTEXT_BUTTON button) override;
+ bool OnAddMediaSource() override;
+ bool OnClick(int iItem, const std::string &player = "") override;
+ std::string GetStartFolder(const std::string &dir) override;
+
+ VECSOURCES m_shares;
+
+private:
+ virtual SelectFirstUnwatchedItem GetSettingSelectFirstUnwatchedItem();
+ virtual IncludeAllSeasonsAndSpecials GetSettingIncludeAllSeasonsAndSpecials();
+ virtual int GetFirstUnwatchedItemIndex(bool includeAllSeasons, bool includeSpecials);
+ void SelectFirstUnwatched();
+};