MythTV  master
TokenGroup.h
Go to the documentation of this file.
1 /* TokenGroup.h
2 
3  Copyright (C) David C. J. Matthews 2004 dm at prolingua.co.uk
4 
5  This program is free software; you can redistribute it and/or
6  modify it under the terms of the GNU General Public License
7  as published by the Free Software Foundation; either version 2
8  of the License, or (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program; if not, write to the Free Software
17  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
18  Or, point your browser to http://www.gnu.org/copyleft/gpl.html
19 
20 */
21 
22 
23 #if !defined(TOKENGROUP_H)
24 #define TOKENGROUP_H
25 
26 #include "Presentable.h"
27 // Dependencies
28 #include "Ingredients.h"
29 #include "Root.h"
30 #include "BaseClasses.h"
31 #include "BaseActions.h"
32 #include "Actions.h"
33 
34 #include <QPoint>
35 #include <QList>
36 
37 class MHEngine;
38 
40 {
41  public:
42  MHTokenGroupItem() = default;
43  void Initialise(MHParseNode *p, MHEngine *engine);
44  void PrintMe(FILE *fd, int nTabs) const;
47 };
48 
50 {
51  public:
52  void Initialise(MHParseNode *p, MHEngine *engine);
53  void PrintMe(FILE *fd, int nTabs) const;
55 };
56 
57 // TokenGroup. The standard defines a TokenManager class but that is incorporated in
58 // this class.
59 class MHTokenGroup : public MHPresentable
60 {
61  public:
62  MHTokenGroup() = default;
63  const char *ClassName() override // MHRoot
64  { return "TokenGroup"; }
65  void Initialise(MHParseNode *p, MHEngine *engine) override; // MHIngredient
66  void PrintMe(FILE *fd, int nTabs) const override; // MHIngredient
67 
68  void Activation(MHEngine *engine) override; // MHRoot
69  void Deactivation(MHEngine *engine) override; // MHRoot
70 
71  // Actions
72  void CallActionSlot(int n, MHEngine *engine) override; // MHRoot
73  void Move(int n, MHEngine *engine) override; // MHRoot
74  void MoveTo(int n, MHEngine *engine) override // MHRoot
75  { TransferToken(n, engine); }
76  void GetTokenPosition(MHRoot *pResult, MHEngine */*engine*/) override // MHRoot
77  { pResult->SetVariableValue(m_nTokenPosition); }
78 
79  protected:
80  void PrintContents(FILE *fd, int nTabs) const;
81  void TransferToken(int newPos, MHEngine *engine);
82 
86 
87  // Internal attributes
88  int m_nTokenPosition {1}; // Initial value
89 };
90 
91 // Items in the list group consist of a Visible and a "selected" flag.
92 // For simplicity we don't check that we have a Visible and instead use virtual functions
93 // which only work on visibles.
94 class MHListItem {
95  public:
96  explicit MHListItem(MHRoot *pVis): m_pVisible(pVis) {}
97  MHRoot *m_pVisible { nullptr };
98  bool m_fSelected { false };
99 };
100 
101 class MHListGroup : public MHTokenGroup
102 {
103  public:
104  MHListGroup() = default;
105  ~MHListGroup() override;
106  const char *ClassName() override // MHTokenGroup
107  { return "ListGroup"; }
108  void Initialise(MHParseNode *p, MHEngine *engine) override; // MHTokenGroup
109  void PrintMe(FILE *fd, int nTabs) const override; // MHTokenGroup
110  void Preparation(MHEngine *engine) override; // MHIngredient
111  void Destruction(MHEngine *engine) override; // MHIngredient
112  void Activation(MHEngine *engine) override; // MHTokenGroup
113  void Deactivation(MHEngine *engine) override; // MHTokenGroup
114 
115  // Actions
116  void AddItem(int nIndex, MHRoot *pItem, MHEngine *engine) override; // MHRoot
117  void DelItem(MHRoot *pItem, MHEngine *engine) override; // MHRoot
118  void GetCellItem(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override; // MHRoot
119  void GetListItem(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override; // MHRoot
120  void GetItemStatus(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override; // MHRoot
121  void SelectItem(int nCell, MHEngine *engine) override; // MHRoot
122  void DeselectItem(int nCell, MHEngine *engine) override; // MHRoot
123  void ToggleItem(int nCell, MHEngine *engine) override; // MHRoot
124  void ScrollItems(int nCell, MHEngine *engine) override; // MHRoot
125  void SetFirstItem(int nCell, MHEngine *engine) override; // MHRoot
126  void GetFirstItem(MHRoot *pResult, MHEngine */*engine*/) override // MHRoot
127  { pResult->SetVariableValue(m_nFirstItem); }
128  void GetListSize(MHRoot *pResult, MHEngine */*engine*/) override // MHRoot
129  { pResult->SetVariableValue(static_cast<int>(m_itemList.size())); }
130 
131  protected:
132  // MHEG Internal attributes.
133  void Update(MHEngine *engine);
134  void Select(int nIndex, MHEngine *engine);
135  void Deselect(int nIndex, MHEngine *engine);
136  int AdjustIndex(int nIndex); // Added in the MHEG corrigendum
137 
138  // Exchanged attributes
140  bool m_fWrapAround {false};
141  bool m_fMultipleSelection {false};
142  //Internal attributes
143  QList<MHListItem*> m_itemList; // Items found by looking up the object refs
144  int m_nFirstItem {1}; // First item displayed - N.B. MHEG indexes from 1.
145  bool m_fFirstItemDisplayed {false};
146  bool m_fLastItemDisplayed {false};
147  int m_nLastCount {0};
149 };
150 
151 // Call action slot.
153 {
154  public:
155  MHCallActionSlot(): MHActionInt(":CallActionSlot") {}
156  void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override // MHActionInt
157  { pTarget->CallActionSlot(nArg, engine); }
158 };
159 
160 // Move - move the token in a token group according to the movement table.
161 class MHMove: public MHActionInt
162 {
163  public:
164  MHMove(): MHActionInt(":Move") {}
165  void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override // MHActionInt
166  { pTarget->Move(nArg, engine); }
167 };
168 
169 // MoveTo - move the token to a particular slot.
170 class MHMoveTo: public MHActionInt
171 {
172  public:
173  MHMoveTo(): MHActionInt(":MoveTo") {}
174  void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override // MHActionInt
175  { pTarget->MoveTo(nArg, engine); }
176 };
177 
179  public:
180  MHGetTokenPosition(): MHActionObjectRef(":GetTokenPosition") {}
181  void CallAction(MHEngine *engine, MHRoot *pTarget, MHRoot *pArg) override // MHActionObjectRef
182  { pTarget->GetTokenPosition(pArg, engine); }
183 };
184 
185 class MHAddItem: public MHElemAction {
186  public:
187  MHAddItem(): MHElemAction(":AddItem") {}
188  void Initialise(MHParseNode *p, MHEngine *engine) override; // MHElemAction
189  void PrintArgs(FILE *fd, int /*nTabs*/) const override; // MHElemAction
190  void Perform(MHEngine *engine) override; // MHElemAction
191  protected:
194 
195 };
196 
198  public:
200  void CallAction(MHEngine *engine, MHRoot *pTarget, MHRoot *pObj) override // MHActionGenericObjectRef
201  { pTarget->DelItem(pObj, engine); }
202 };
203 
204 // Base class for a few actions.
206  public:
207  explicit MHGetListActionData(const char *name): MHElemAction(name) {}
208  void Initialise(MHParseNode *p, MHEngine *engine) override; // MHElemAction
209  void PrintArgs(FILE *fd, int /*nTabs*/) const override; // MHElemAction
210  protected:
213 };
214 
216  public:
217  MHGetCellItem(): MHGetListActionData(":GetCellItem") {}
218  void Perform(MHEngine *engine) override // MHElemAction
219  { Target(engine)->GetCellItem(m_index.GetValue(engine), m_result, engine); }
220 };
221 
223  public:
224  MHGetListItem(): MHGetListActionData(":GetListItem") {}
225  void Perform(MHEngine *engine) override // MHElemAction
226  { Target(engine)->GetListItem(m_index.GetValue(engine), m_result, engine); }
227 };
228 
230  public:
231  MHGetItemStatus(): MHGetListActionData(":GetItemStatus") {}
232  void Perform(MHEngine *engine) override // MHElemAction
233  { Target(engine)->GetItemStatus(m_index.GetValue(engine), m_result, engine); }
234 };
235 
236 class MHSelectItem: public MHActionInt {
237  public:
238  MHSelectItem(): MHActionInt(":SelectItem") {}
239  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, int nArg) override // MHActionInt
240  { Target(engine)->SelectItem(nArg, engine); }
241 };
242 
244  public:
245  MHDeselectItem(): MHActionInt(":DeselectItem") {}
246  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, int nArg) override // MHActionInt
247  { Target(engine)->DeselectItem(nArg, engine); }
248 };
249 
250 class MHToggleItem: public MHActionInt {
251  public:
252  MHToggleItem(): MHActionInt(":ToggleItem") {}
253  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, int nArg) override // MHActionInt
254  { Target(engine)->ToggleItem(nArg, engine); }
255 };
256 
257 class MHScrollItems: public MHActionInt {
258  public:
259  MHScrollItems(): MHActionInt(":ScrollItems") {}
260  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, int nArg) override // MHActionInt
261  { Target(engine)->ScrollItems(nArg, engine); }
262 };
263 
265  public:
266  MHSetFirstItem(): MHActionInt(":SetFirstItem") {}
267  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, int nArg) override // MHActionInt
268  { Target(engine)->SetFirstItem(nArg, engine); }
269 };
270 
272  public:
273  MHGetFirstItem(): MHActionObjectRef(":GetFirstItem") {}
274  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, MHRoot *pArg) override // MHActionObjectRef
275  { Target(engine)->GetFirstItem(pArg, engine); }
276 };
277 
279  public:
280  MHGetListSize(): MHActionObjectRef(":GetListSize") {}
281  void CallAction(MHEngine *engine, MHRoot * /*pTarget*/, MHRoot *pArg) override // MHActionObjectRef
282  { Target(engine)->GetListSize(pArg, engine); }
283 };
284 
285 #endif
MHCallActionSlot::CallAction
void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override
Definition: TokenGroup.h:156
MHObjectRef
Definition: BaseClasses.h:153
MHActionObjectRef
Definition: BaseActions.h:119
MHActionGenericObjectRef
Definition: BaseActions.h:146
MHSetFirstItem::CallAction
void CallAction(MHEngine *engine, MHRoot *, int nArg) override
Definition: TokenGroup.h:267
MHListGroup::GetListSize
void GetListSize(MHRoot *pResult, MHEngine *) override
Definition: TokenGroup.h:128
MHListGroup::m_positions
MHSequence< QPoint > m_positions
Definition: TokenGroup.h:139
MHListGroup::Select
void Select(int nIndex, MHEngine *engine)
Definition: TokenGroup.cpp:596
MHTokenGroup::Deactivation
void Deactivation(MHEngine *engine) override
Definition: TokenGroup.cpp:266
Presentable.h
MHTokenGroup::PrintMe
void PrintMe(FILE *fd, int nTabs) const override
Definition: TokenGroup.cpp:222
MHSelectItem::CallAction
void CallAction(MHEngine *engine, MHRoot *, int nArg) override
Definition: TokenGroup.h:239
MHMovement::Initialise
void Initialise(MHParseNode *p, MHEngine *engine)
Definition: TokenGroup.cpp:96
MHPresentable
Definition: Presentable.h:34
MHListGroup::GetFirstItem
void GetFirstItem(MHRoot *pResult, MHEngine *) override
Definition: TokenGroup.h:126
MHRoot::GetListSize
virtual void GetListSize(MHRoot *, MHEngine *)
Definition: Root.h:154
MHRoot::GetFirstItem
virtual void GetFirstItem(MHRoot *, MHEngine *)
Definition: Root.h:153
MHTokenGroup::m_noTokenActionSlots
MHOwnPtrSequence< MHActionSequence > m_noTokenActionSlots
Definition: TokenGroup.h:85
MHRoot::GetItemStatus
virtual void GetItemStatus(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:146
MHSetFirstItem
Definition: TokenGroup.h:264
MHEngine
Definition: Engine.h:72
MHListGroup::m_fFirstItemDisplayed
bool m_fFirstItemDisplayed
Definition: TokenGroup.h:145
MHGetFirstItem::CallAction
void CallAction(MHEngine *engine, MHRoot *, MHRoot *pArg) override
Definition: TokenGroup.h:274
MHTokenGroup::Activation
void Activation(MHEngine *engine) override
Definition: TokenGroup.cpp:232
MHListItem::m_fSelected
bool m_fSelected
Definition: TokenGroup.h:98
MHGetListItem
Definition: TokenGroup.h:222
MHListGroup::m_fMultipleSelection
bool m_fMultipleSelection
Definition: TokenGroup.h:141
MHDelItem::CallAction
void CallAction(MHEngine *engine, MHRoot *pTarget, MHRoot *pObj) override
Definition: TokenGroup.h:200
MHGetListActionData::MHGetListActionData
MHGetListActionData(const char *name)
Definition: TokenGroup.h:207
MHGetListActionData
Definition: TokenGroup.h:205
MHTokenGroup::TransferToken
void TransferToken(int newPos, MHEngine *engine)
Definition: TokenGroup.cpp:278
MHAddItem::PrintArgs
void PrintArgs(FILE *fd, int) const override
Definition: TokenGroup.cpp:807
MHTokenGroup::Move
void Move(int n, MHEngine *engine) override
Definition: TokenGroup.cpp:312
MHToggleItem
Definition: TokenGroup.h:250
MHSelectItem
Definition: TokenGroup.h:236
MHRoot::ScrollItems
virtual void ScrollItems(int, MHEngine *)
Definition: Root.h:151
MHGenericInteger
Definition: BaseClasses.h:213
MHListGroup::Activation
void Activation(MHEngine *engine) override
Definition: TokenGroup.cpp:438
MHGetTokenPosition::CallAction
void CallAction(MHEngine *engine, MHRoot *pTarget, MHRoot *pArg) override
Definition: TokenGroup.h:181
MHMovement
Definition: TokenGroup.h:49
MHListGroup::ScrollItems
void ScrollItems(int nCell, MHEngine *engine) override
Definition: TokenGroup.cpp:763
MHGetCellItem::Perform
void Perform(MHEngine *engine) override
Definition: TokenGroup.h:218
MHListGroup::MHListGroup
MHListGroup()=default
MHRoot::GetListItem
virtual void GetListItem(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:144
MHTokenGroup::CallActionSlot
void CallActionSlot(int n, MHEngine *engine) override
Definition: TokenGroup.cpp:289
MHAddItem::Initialise
void Initialise(MHParseNode *p, MHEngine *engine) override
Definition: TokenGroup.cpp:800
MHTokenGroup::m_movementTable
MHOwnPtrSequence< MHMovement > m_movementTable
Definition: TokenGroup.h:83
MHGetItemStatus::Perform
void Perform(MHEngine *engine) override
Definition: TokenGroup.h:232
MHListGroup::DeselectItem
void DeselectItem(int nCell, MHEngine *engine) override
Definition: TokenGroup.cpp:726
MHSequence< int >
MHListGroup::Destruction
void Destruction(MHEngine *engine) override
Definition: TokenGroup.cpp:429
MHListGroup::~MHListGroup
~MHListGroup() override
Definition: TokenGroup.cpp:327
MHListGroup::SelectItem
void SelectItem(int nCell, MHEngine *engine) override
Definition: TokenGroup.cpp:711
MHListGroup::Deselect
void Deselect(int nIndex, MHEngine *engine)
Definition: TokenGroup.cpp:622
Actions.h
MHTokenGroup::ClassName
const char * ClassName() override
Definition: TokenGroup.h:63
MHListGroup::GetCellItem
void GetCellItem(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override
Definition: TokenGroup.cpp:636
mythburn.FILE
int FILE
Definition: mythburn.py:139
MHMoveTo::CallAction
void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override
Definition: TokenGroup.h:174
MHGetItemStatus
Definition: TokenGroup.h:229
MHMove::CallAction
void CallAction(MHEngine *engine, MHRoot *pTarget, int nArg) override
Definition: TokenGroup.h:165
MHRoot::SelectItem
virtual void SelectItem(int, MHEngine *)
Definition: Root.h:148
MHTokenGroup::GetTokenPosition
void GetTokenPosition(MHRoot *pResult, MHEngine *) override
Definition: TokenGroup.h:76
MHMoveTo::MHMoveTo
MHMoveTo()
Definition: TokenGroup.h:173
MHTokenGroupItem::Initialise
void Initialise(MHParseNode *p, MHEngine *engine)
Definition: TokenGroup.cpp:32
MHListGroup::Initialise
void Initialise(MHParseNode *p, MHEngine *engine) override
Definition: TokenGroup.cpp:335
MHRoot::ToggleItem
virtual void ToggleItem(int, MHEngine *)
Definition: Root.h:150
MHListItem
Definition: TokenGroup.h:94
MHTokenGroupItem::m_ActionSlots
MHOwnPtrSequence< MHActionSequence > m_ActionSlots
Definition: TokenGroup.h:46
MHListGroup::ToggleItem
void ToggleItem(int nCell, MHEngine *engine) override
Definition: TokenGroup.cpp:741
MHRoot::SetFirstItem
virtual void SetFirstItem(int, MHEngine *)
Definition: Root.h:152
MHTokenGroup::MoveTo
void MoveTo(int n, MHEngine *engine) override
Definition: TokenGroup.h:74
MHGetFirstItem::MHGetFirstItem
MHGetFirstItem()
Definition: TokenGroup.h:273
MHGetListItem::MHGetListItem
MHGetListItem()
Definition: TokenGroup.h:224
MHGetListActionData::Initialise
void Initialise(MHParseNode *p, MHEngine *engine) override
Definition: TokenGroup.cpp:820
MHScrollItems
Definition: TokenGroup.h:257
hardwareprofile.config.p
p
Definition: config.py:33
MHAddItem::Perform
void Perform(MHEngine *engine) override
Definition: TokenGroup.cpp:813
MHSetFirstItem::MHSetFirstItem
MHSetFirstItem()
Definition: TokenGroup.h:266
MHAddItem::MHAddItem
MHAddItem()
Definition: TokenGroup.h:187
MHListItem::MHListItem
MHListItem(MHRoot *pVis)
Definition: TokenGroup.h:96
MHScrollItems::MHScrollItems
MHScrollItems()
Definition: TokenGroup.h:259
MHListGroup::m_fWrapAround
bool m_fWrapAround
Definition: TokenGroup.h:140
MHDeselectItem
Definition: TokenGroup.h:243
MHMovement::m_movement
MHSequence< int > m_movement
Definition: TokenGroup.h:54
MHGenericObjectRef
Definition: BaseClasses.h:235
MHGetListSize
Definition: TokenGroup.h:278
MHListGroup::GetListItem
void GetListItem(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override
Definition: TokenGroup.cpp:681
MHListGroup::m_fLastItemDisplayed
bool m_fLastItemDisplayed
Definition: TokenGroup.h:146
MHMove
Definition: TokenGroup.h:161
MHListGroup::AdjustIndex
int AdjustIndex(int nIndex)
Definition: TokenGroup.cpp:661
MHRoot::GetCellItem
virtual void GetCellItem(int, const MHObjectRef &, MHEngine *)
Definition: Root.h:142
MHGetListSize::CallAction
void CallAction(MHEngine *engine, MHRoot *, MHRoot *pArg) override
Definition: TokenGroup.h:281
MHGetListActionData::m_result
MHObjectRef m_result
Definition: TokenGroup.h:212
MHTokenGroup::Initialise
void Initialise(MHParseNode *p, MHEngine *engine) override
Definition: TokenGroup.cpp:117
MHListGroup::m_itemList
QList< MHListItem * > m_itemList
Definition: TokenGroup.h:143
MHGetItemStatus::MHGetItemStatus
MHGetItemStatus()
Definition: TokenGroup.h:231
MHTokenGroup::MHTokenGroup
MHTokenGroup()=default
MHListGroup::Update
void Update(MHEngine *engine)
Definition: TokenGroup.cpp:457
MHCallActionSlot::MHCallActionSlot
MHCallActionSlot()
Definition: TokenGroup.h:155
MHTokenGroupItem
Definition: TokenGroup.h:39
MHGetListActionData::m_index
MHGenericInteger m_index
Definition: TokenGroup.h:211
MHListGroup::m_nLastFirstItem
int m_nLastFirstItem
Definition: TokenGroup.h:148
Ingredients.h
MHRoot::DeselectItem
virtual void DeselectItem(int, MHEngine *)
Definition: Root.h:149
MHActionInt
Definition: BaseActions.h:51
MHListGroup::SetFirstItem
void SetFirstItem(int nCell, MHEngine *engine) override
Definition: TokenGroup.cpp:781
MHCallActionSlot
Definition: TokenGroup.h:152
MHTokenGroup
Definition: TokenGroup.h:59
MHElemAction::Target
MHRoot * Target(MHEngine *engine)
Definition: BaseActions.cpp:46
MHTokenGroup::m_tokenGrpItems
MHOwnPtrSequence< MHTokenGroupItem > m_tokenGrpItems
Definition: TokenGroup.h:84
MHGetCellItem::MHGetCellItem
MHGetCellItem()
Definition: TokenGroup.h:217
MHListGroup::Preparation
void Preparation(MHEngine *engine) override
Definition: TokenGroup.cpp:396
Root.h
MHTokenGroup::PrintContents
void PrintContents(FILE *fd, int nTabs) const
Definition: TokenGroup.cpp:164
MHMovement::PrintMe
void PrintMe(FILE *fd, int nTabs) const
Definition: TokenGroup.cpp:104
MHGetListActionData::PrintArgs
void PrintArgs(FILE *fd, int) const override
Definition: TokenGroup.cpp:827
MHGetFirstItem
Definition: TokenGroup.h:271
MHAddItem::m_item
MHGenericObjectRef m_item
Definition: TokenGroup.h:193
MHAddItem::m_index
MHGenericInteger m_index
Definition: TokenGroup.h:192
MHGetTokenPosition::MHGetTokenPosition
MHGetTokenPosition()
Definition: TokenGroup.h:180
MHDelItem
Definition: TokenGroup.h:197
MHTokenGroupItem::MHTokenGroupItem
MHTokenGroupItem()=default
MHListItem::m_pVisible
MHRoot * m_pVisible
Definition: TokenGroup.h:97
BaseClasses.h
MHToggleItem::CallAction
void CallAction(MHEngine *engine, MHRoot *, int nArg) override
Definition: TokenGroup.h:253
MHListGroup::m_nLastCount
int m_nLastCount
Definition: TokenGroup.h:147
MHDeselectItem::CallAction
void CallAction(MHEngine *engine, MHRoot *, int nArg) override
Definition: TokenGroup.h:246
MHListGroup::PrintMe
void PrintMe(FILE *fd, int nTabs) const override
Definition: TokenGroup.cpp:365
MHParseNode
Definition: ParseNode.h:38
MHGenericInteger::GetValue
int GetValue(MHEngine *engine) const
Definition: BaseClasses.cpp:426
MHToggleItem::MHToggleItem
MHToggleItem()
Definition: TokenGroup.h:252
MHListGroup::Deactivation
void Deactivation(MHEngine *engine) override
Definition: TokenGroup.cpp:446
MHListGroup::ClassName
const char * ClassName() override
Definition: TokenGroup.h:106
MHGetListSize::MHGetListSize
MHGetListSize()
Definition: TokenGroup.h:280
MHMoveTo
Definition: TokenGroup.h:170
MHGetTokenPosition
Definition: TokenGroup.h:178
MHGetListItem::Perform
void Perform(MHEngine *engine) override
Definition: TokenGroup.h:225
MHDelItem::MHDelItem
MHDelItem()
Definition: TokenGroup.h:199
MHListGroup
Definition: TokenGroup.h:101
MHElemAction
Definition: BaseActions.h:34
MHTokenGroup::m_nTokenPosition
int m_nTokenPosition
Definition: TokenGroup.h:88
MHTokenGroupItem::PrintMe
void PrintMe(FILE *fd, int nTabs) const
Definition: TokenGroup.cpp:56
MHListGroup::AddItem
void AddItem(int nIndex, MHRoot *pItem, MHEngine *engine) override
Definition: TokenGroup.cpp:546
MHListGroup::m_nFirstItem
int m_nFirstItem
Definition: TokenGroup.h:144
MHListGroup::DelItem
void DelItem(MHRoot *pItem, MHEngine *engine) override
Definition: TokenGroup.cpp:575
MHDeselectItem::MHDeselectItem
MHDeselectItem()
Definition: TokenGroup.h:245
MHGetCellItem
Definition: TokenGroup.h:215
MHMove::MHMove
MHMove()
Definition: TokenGroup.h:164
MHTokenGroupItem::m_Object
MHObjectRef m_Object
Definition: TokenGroup.h:45
BaseActions.h
MHOwnPtrSequence< MHActionSequence >
MHListGroup::GetItemStatus
void GetItemStatus(int nCell, const MHObjectRef &itemDest, MHEngine *engine) override
Definition: TokenGroup.cpp:696
MHAddItem
Definition: TokenGroup.h:185
MHRoot
Definition: Root.h:43
MHScrollItems::CallAction
void CallAction(MHEngine *engine, MHRoot *, int nArg) override
Definition: TokenGroup.h:260
MHSelectItem::MHSelectItem
MHSelectItem()
Definition: TokenGroup.h:238