diff options
author | ksooo <3226626+ksooo@users.noreply.github.com> | 2023-12-13 12:31:50 +0100 |
---|---|---|
committer | ksooo <3226626+ksooo@users.noreply.github.com> | 2023-12-13 20:23:49 +0100 |
commit | e66da1201c32b2f32f7fe77b9f3e6c359c741738 (patch) | |
tree | ae8db0a7f04595bfa5cd8ae916bb63f69cf136b6 | |
parent | 87d2d6f84799224f5fe63a6bba3e973e84e18fef (diff) |
[video] Rename CVideoActionProcessorHelper to VideoVersionHelper, to reflect actual purpose.
-rw-r--r-- | xbmc/video/guilib/CMakeLists.txt | 4 | ||||
-rw-r--r-- | xbmc/video/guilib/VideoActionProcessorHelper.h | 39 | ||||
-rw-r--r-- | xbmc/video/guilib/VideoPlayActionProcessor.cpp | 9 | ||||
-rw-r--r-- | xbmc/video/guilib/VideoVersionHelper.cpp (renamed from xbmc/video/guilib/VideoActionProcessorHelper.cpp) | 39 | ||||
-rw-r--r-- | xbmc/video/guilib/VideoVersionHelper.h | 26 |
5 files changed, 53 insertions, 64 deletions
diff --git a/xbmc/video/guilib/CMakeLists.txt b/xbmc/video/guilib/CMakeLists.txt index a953270624..489bdb417c 100644 --- a/xbmc/video/guilib/CMakeLists.txt +++ b/xbmc/video/guilib/CMakeLists.txt @@ -1,10 +1,10 @@ set(SOURCES VideoPlayActionProcessor.cpp VideoSelectActionProcessor.cpp - VideoActionProcessorHelper.cpp) + VideoVersionHelper.cpp) set(HEADERS VideoAction.h VideoPlayActionProcessor.h VideoSelectActionProcessor.h - VideoActionProcessorHelper.h) + VideoVersionHelper.h) core_add_library(video_guilib) diff --git a/xbmc/video/guilib/VideoActionProcessorHelper.h b/xbmc/video/guilib/VideoActionProcessorHelper.h deleted file mode 100644 index a134c6ee01..0000000000 --- a/xbmc/video/guilib/VideoActionProcessorHelper.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (C) 2023 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 <memory> -#include <string> - -class CFileItem; - -namespace VIDEO -{ -namespace GUILIB -{ -class CVideoActionProcessorHelper -{ -public: - CVideoActionProcessorHelper(const std::shared_ptr<CFileItem>& item, - const std::shared_ptr<const CFileItem>& videoVersion) - : m_item{item}, m_videoVersion{videoVersion} - { - } - virtual ~CVideoActionProcessorHelper() = default; - - std::shared_ptr<CFileItem> ChooseVideoVersion(); - -private: - CVideoActionProcessorHelper() = delete; - - std::shared_ptr<CFileItem> m_item; - std::shared_ptr<const CFileItem> m_videoVersion; -}; -} // namespace GUILIB -} // namespace VIDEO diff --git a/xbmc/video/guilib/VideoPlayActionProcessor.cpp b/xbmc/video/guilib/VideoPlayActionProcessor.cpp index bea41524d8..617e435fd9 100644 --- a/xbmc/video/guilib/VideoPlayActionProcessor.cpp +++ b/xbmc/video/guilib/VideoPlayActionProcessor.cpp @@ -16,7 +16,7 @@ #include "settings/SettingsComponent.h" #include "utils/Variant.h" #include "video/VideoUtils.h" -#include "video/guilib/VideoActionProcessorHelper.h" +#include "video/guilib/VideoVersionHelper.h" using namespace VIDEO::GUILIB; @@ -35,10 +35,9 @@ bool CVideoPlayActionProcessorBase::ProcessAction(Action action) { m_userCancelled = false; - CVideoActionProcessorHelper procHelper{m_item, m_videoVersion}; - const auto videoVersion{procHelper.ChooseVideoVersion()}; - if (videoVersion) - m_item = videoVersion; + const auto movie{CVideoVersionHelper::ChooseMovieFromVideoVersions(m_item)}; + if (movie) + m_item = movie; else { m_userCancelled = true; diff --git a/xbmc/video/guilib/VideoActionProcessorHelper.cpp b/xbmc/video/guilib/VideoVersionHelper.cpp index 976d8b6fdc..78412afb07 100644 --- a/xbmc/video/guilib/VideoActionProcessorHelper.cpp +++ b/xbmc/video/guilib/VideoVersionHelper.cpp @@ -6,7 +6,7 @@ * See LICENSES/README.md for more information. */ -#include "VideoActionProcessorHelper.h" +#include "VideoVersionHelper.h" #include "FileItem.h" #include "ServiceBroker.h" @@ -19,17 +19,19 @@ using namespace VIDEO::GUILIB; -std::shared_ptr<CFileItem> CVideoActionProcessorHelper::ChooseVideoVersion() +std::shared_ptr<CFileItem> CVideoVersionHelper::ChooseMovieFromVideoVersions( + const std::shared_ptr<CFileItem>& item) { - if (!m_videoVersion && m_item->HasVideoVersions()) + std::shared_ptr<const CFileItem> videoVersion; + if (item->HasVideoVersions()) { - if (!m_item->GetProperty("force_choose_video_version").asBoolean(false)) + if (!item->GetProperty("force_choose_video_version").asBoolean(false)) { // select the specified video version - if (m_item->GetVideoInfoTag()->m_idVideoVersion > 0) - m_videoVersion = m_item; + if (item->GetVideoInfoTag()->m_idVideoVersion > 0) + videoVersion = item; - if (!m_videoVersion) + if (!videoVersion) { // select the default video version const auto settings{CServiceBroker::GetSettingsComponent()->GetSettings()}; @@ -43,33 +45,34 @@ std::shared_ptr<CFileItem> CVideoActionProcessorHelper::ChooseVideoVersion() else { CFileItem defaultVersion; - db.GetDefaultVideoVersion(m_item->GetVideoContentType(), - m_item->GetVideoInfoTag()->m_iDbId, defaultVersion); + db.GetDefaultVideoVersion(item->GetVideoContentType(), item->GetVideoInfoTag()->m_iDbId, + defaultVersion); if (!defaultVersion.HasVideoInfoTag() || defaultVersion.GetVideoInfoTag()->IsEmpty()) CLog::LogF(LOGERROR, "Unable to get default video version from video database!"); else - m_videoVersion = std::make_shared<const CFileItem>(defaultVersion); + videoVersion = std::make_shared<const CFileItem>(defaultVersion); } } } } - if (!m_videoVersion && (m_item->GetProperty("force_choose_video_version").asBoolean(false) || - !m_item->GetProperty("prohibit_choose_video_version").asBoolean(false))) + if (!videoVersion && (item->GetProperty("force_choose_video_version").asBoolean(false) || + !item->GetProperty("prohibit_choose_video_version").asBoolean(false))) { - const auto result{CGUIDialogVideoVersion::ChooseVideoVersion(m_item)}; + const auto result{CGUIDialogVideoVersion::ChooseVideoVersion(item)}; if (result.cancelled) return {}; else - m_videoVersion = result.selected; + videoVersion = result.selected; } } - if (m_videoVersion) + if (videoVersion) { - m_item = std::make_shared<CFileItem>(m_videoVersion->GetDynPath(), false); - m_item->LoadDetails(); + const auto movie{std::make_shared<CFileItem>(videoVersion->GetDynPath(), false)}; + movie->LoadDetails(); + return movie; } - return m_item; + return item; } diff --git a/xbmc/video/guilib/VideoVersionHelper.h b/xbmc/video/guilib/VideoVersionHelper.h new file mode 100644 index 0000000000..5ab9dfb0a7 --- /dev/null +++ b/xbmc/video/guilib/VideoVersionHelper.h @@ -0,0 +1,26 @@ +/* + * Copyright (C) 2023 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 <memory> + +class CFileItem; + +namespace VIDEO +{ +namespace GUILIB +{ +class CVideoVersionHelper +{ +public: + static std::shared_ptr<CFileItem> ChooseMovieFromVideoVersions( + const std::shared_ptr<CFileItem>& item); +}; +} // namespace GUILIB +} // namespace VIDEO |