kodi
GUIDialogVideoManagerExtras.h
1 /*
2  * Copyright (C) 2023 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "video/dialogs/GUIDialogVideoManager.h"
12 
13 #include <memory>
14 #include <string>
15 
16 class CFileItem;
17 
18 enum class VideoAssetType;
19 
21 {
22 public:
24  ~CGUIDialogVideoManagerExtras() override = default;
25 
26  void SetVideoAsset(const std::shared_ptr<CFileItem>& item) override;
33  static bool ManageVideoExtras(const std::shared_ptr<CFileItem>& item);
34  static std::string GenerateVideoExtra(const std::string& extrasRoot,
35  const std::string& extrasPath);
36 
37 protected:
38  bool OnMessage(CGUIMessage& message) override;
39 
40  VideoAssetType GetVideoAssetType() override;
41  int GetHeadingId() override { return 40025; } // Extras:
42 
43  void UpdateButtons() override;
44 
45 private:
50  bool AddVideoExtra();
51  static std::string GenerateVideoExtra(const std::string& extrasPath);
52 };
Definition: GUIMessage.h:365
Definition: GUIDialogVideoManagerExtras.h:20
static bool ManageVideoExtras(const std::shared_ptr< CFileItem > &item)
Open the Manage Extras dialog for a video.
Definition: GUIDialogVideoManagerExtras.cpp:248
Definition: GUIDialogVideoManager.h:22
Represents a file on a share.
Definition: FileItem.h:102