kodi
SkinVariable.h
1 /*
2  * Copyright (C) 2005-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 
12 #include "interfaces/info/InfoBool.h"
13 
14 #include <string>
15 #include <vector>
16 
17 class TiXmlElement;
18 
19 namespace INFO
20 {
21 class CSkinVariableString;
22 
24 {
25 public:
26  static const CSkinVariableString* CreateFromXML(const TiXmlElement& node, int context);
27 };
28 
30 {
31 public:
32  const std::string& GetName() const;
33  int GetContext() const;
34  std::string GetValue(int contextWindow,
35  bool preferImage = false,
36  const CGUIListItem* item = nullptr) const;
37 
38 private:
40 
41  std::string m_name;
42  int m_context;
43 
44  struct ConditionLabelPair
45  {
46  INFO::InfoPtr m_condition;
48  };
49 
50  typedef std::vector<ConditionLabelPair> VECCONDITIONLABELPAIR;
51  VECCONDITIONLABELPAIR m_conditionLabelPairs;
52 
53  friend class CSkinVariable;
54 };
55 
56 }
Definition: GUIListItem.h:29
Definition: GUIInfoLabel.h:31
Definition: ContextMenuItem.h:23
Definition: SkinVariable.h:29
Definition: SkinVariable.h:23