2 * Copyright (C) 2016-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.
11 #include "ContextMenuItem.h"
20 class CFavouriteContextMenuAction
: public CStaticContextMenuAction
23 explicit CFavouriteContextMenuAction(uint32_t label
) : CStaticContextMenuAction(label
) {}
24 bool IsVisible(const CFileItem
& item
) const override
;
25 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
28 ~CFavouriteContextMenuAction() override
= default;
29 virtual bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const = 0;
32 class CMoveUpFavourite
: public CFavouriteContextMenuAction
35 CMoveUpFavourite() : CFavouriteContextMenuAction(13332) {} // Move up
36 bool IsVisible(const CFileItem
& item
) const override
;
39 bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const override
;
42 class CMoveDownFavourite
: public CFavouriteContextMenuAction
45 CMoveDownFavourite() : CFavouriteContextMenuAction(13333) {} // Move down
46 bool IsVisible(const CFileItem
& item
) const override
;
49 bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const override
;
52 class CRemoveFavourite
: public CFavouriteContextMenuAction
55 CRemoveFavourite() : CFavouriteContextMenuAction(15015) {} // Remove
57 bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const override
;
60 class CRenameFavourite
: public CFavouriteContextMenuAction
63 CRenameFavourite() : CFavouriteContextMenuAction(118) {} // Rename
65 bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const override
;
68 class CChooseThumbnailForFavourite
: public CFavouriteContextMenuAction
71 CChooseThumbnailForFavourite() : CFavouriteContextMenuAction(20019) {} // Choose thumbnail
73 bool DoExecute(CFileItemList
& items
, const std::shared_ptr
<CFileItem
>& item
) const override
;
76 class CFavouritesTargetBrowse
: public CStaticContextMenuAction
79 explicit CFavouritesTargetBrowse() : CStaticContextMenuAction(37015) {} // Browse into
80 bool IsVisible(const CFileItem
& item
) const override
;
81 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
84 class CFavouritesTargetResume
: public IContextMenuItem
87 std::string
GetLabel(const CFileItem
& item
) const override
;
88 bool IsVisible(const CFileItem
& item
) const override
;
89 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
92 class CFavouritesTargetPlay
: public IContextMenuItem
95 std::string
GetLabel(const CFileItem
& item
) const override
;
96 bool IsVisible(const CFileItem
& item
) const override
;
97 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
100 class CFavouritesTargetInfo
: public CStaticContextMenuAction
103 explicit CFavouritesTargetInfo() : CStaticContextMenuAction(19033) {} // Information
104 bool IsVisible(const CFileItem
& item
) const override
;
105 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
108 class CFavouritesTargetContextMenu
: public CStaticContextMenuAction
111 explicit CFavouritesTargetContextMenu() : CStaticContextMenuAction(22082) {} // More...
112 bool IsVisible(const CFileItem
& item
) const override
;
113 bool Execute(const std::shared_ptr
<CFileItem
>& item
) const override
;
116 } // namespace CONTEXTMENU