xbmc
ContextMenuAddon.h
1 /*
2  * Copyright (C) 2013-2018 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 "addons/Addon.h"
12 
13 #include <memory>
14 #include <vector>
15 
16 class CContextMenuItem;
17 
18 namespace ADDON
19 {
20 class CAddonExtensions;
21 class CAddonInfo;
22 using AddonInfoPtr = std::shared_ptr<CAddonInfo>;
23 
24 class CContextMenuAddon : public CAddon
25 {
26 public:
27  explicit CContextMenuAddon(const AddonInfoPtr& addonInfo);
28  ~CContextMenuAddon() override;
29 
30  const std::vector<CContextMenuItem>& GetItems() const { return m_items; }
31 
32 private:
33  void ParseMenu(const CAddonExtensions* elem, const std::string& parent, int& anonGroupCount);
34  std::vector<CContextMenuItem> m_items;
35 };
36 }
Definition: AddonExtensions.h:54
Definition: ContextMenuAddon.h:24
Definition: ContextMenuItem.h:50
Definition: Addon.cpp:39
Definition: Addon.h:34