[PVR][Estuary] Timer settings dialog: Show client name in timer type selection dialog...
[xbmc.git] / xbmc / music / ContextMenus.h
blob73275923fcc99aeb46fcd6c1c9b32fe684eab7f9
1 /*
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.
7 */
9 #pragma once
11 #include "ContextMenuItem.h"
12 #include "media/MediaType.h"
14 #include <memory>
16 class CFileItem;
18 namespace CONTEXTMENU
21 struct CMusicInfo : CStaticContextMenuAction
23 explicit CMusicInfo(MediaType mediaType);
24 bool IsVisible(const CFileItem& item) const override;
25 bool Execute(const std::shared_ptr<CFileItem>& item) const override;
27 private:
28 const MediaType m_mediaType;
31 struct CAlbumInfo : CMusicInfo
33 CAlbumInfo() : CMusicInfo(MediaTypeAlbum) {}
36 struct CArtistInfo : CMusicInfo
38 CArtistInfo() : CMusicInfo(MediaTypeArtist) {}
41 struct CSongInfo : CMusicInfo
43 CSongInfo() : CMusicInfo(MediaTypeSong) {}
46 struct CMusicBrowse : CStaticContextMenuAction
48 CMusicBrowse() : CStaticContextMenuAction(37015) {} // Browse into
49 bool IsVisible(const CFileItem& item) const override;
50 bool Execute(const std::shared_ptr<CFileItem>& item) const override;
53 struct CMusicPlay : CStaticContextMenuAction
55 CMusicPlay() : CStaticContextMenuAction(208) {} // Play
56 bool IsVisible(const CFileItem& item) const override;
57 bool Execute(const std::shared_ptr<CFileItem>& item) const override;
60 struct CMusicPlayNext : CStaticContextMenuAction
62 CMusicPlayNext() : CStaticContextMenuAction(10008) {} // Play next
63 bool IsVisible(const CFileItem& item) const override;
64 bool Execute(const std::shared_ptr<CFileItem>& item) const override;
67 struct CMusicQueue : CStaticContextMenuAction
69 CMusicQueue() : CStaticContextMenuAction(13347) {} // Queue item
70 bool IsVisible(const CFileItem& item) const override;
71 bool Execute(const std::shared_ptr<CFileItem>& item) const override;
74 } // namespace CONTEXTMENU