summaryrefslogtreecommitdiffstats
path: root/xbmc/pvr/guilib/PVRGUIActionsEPG.h
blob: e0a3edcf8c827308a9efccd3db3665a93a49b436 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
/*
 *  Copyright (C) 2016-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 "pvr/IPVRComponent.h"

class CFileItem;

namespace PVR
{
class CPVRGUIActionsEPG : public IPVRComponent
{
public:
  CPVRGUIActionsEPG() = default;
  ~CPVRGUIActionsEPG() override = default;

  /*!
   * @brief Open a dialog with epg information for a given item.
   * @param item containing epg data to show. item must be an epg tag, a channel or a timer.
   * @return true on success, false otherwise.
   */
  bool ShowEPGInfo(const CFileItem& item) const;

  /*!
   * @brief Open a dialog with the epg list for a given item.
   * @param item containing channel info. item must be an epg tag, a channel or a timer.
   * @return true on success, false otherwise.
   */
  bool ShowChannelEPG(const CFileItem& item) const;

  /*!
   * @brief Open a window containing a list of epg tags 'similar' to a given item.
   * @param item containing epg data for matching. item must be an epg tag, a channel or a
   * recording.
   * @return true on success, false otherwise.
   */
  bool FindSimilar(const CFileItem& item) const;

  /*!
   * @brief Execute a saved search. Displays result in search window if it is open.
   * @param item The item containing a search filter.
   * @return True on success, false otherwise.
   */
  bool ExecuteSavedSearch(const CFileItem& item);

  /*!
   * @brief Edit a saved search. Opens the search dialog.
   * @param item The item containing a search filter.
   * @return True on success, false otherwise.
   */
  bool EditSavedSearch(const CFileItem& item);

  /*!
   * @brief Rename a saved search. Opens a title input dialog.
   * @param item The item containing a search filter.
   * @return True on success, false otherwise.
   */
  bool RenameSavedSearch(const CFileItem& item);

  /*!
   * @brief Delete a saved search. Opens confirmation dialog before deleting.
   * @param item The item containing a search filter.
   * @return True on success, false otherwise.
   */
  bool DeleteSavedSearch(const CFileItem& item);

private:
  CPVRGUIActionsEPG(const CPVRGUIActionsEPG&) = delete;
  CPVRGUIActionsEPG const& operator=(CPVRGUIActionsEPG const&) = delete;
};

namespace GUI
{
// pretty scope and name
using EPG = CPVRGUIActionsEPG;
} // namespace GUI

} // namespace PVR