ScummVM API documentation
messages.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef TITANIC_MESSAGES_H
23 #define TITANIC_MESSAGES_H
24 
25 #include "common/keyboard.h"
26 #include "titanic/core/saveable_object.h"
27 #include "titanic/core/tree_item.h"
28 #include "titanic/support/strings.h"
29 
30 #include "common/events.h"
31 
32 namespace Titanic {
33 
34 enum MessageFlag {
35  MSGFLAG_SCAN = 1,
36  MSGFLAG_BREAK_IF_HANDLED = 2,
37  MSGFLAG_CLASS_DEF = 4
38 };
39 
40 #define MESSAGE0(NAME) \
41  class NAME: public CMessage { \
42  public: NAME() : CMessage() {} \
43  CLASSDEF; \
44  static bool isSupportedBy(const CTreeItem *item) { \
45  return supports(item, _type); } \
46 }
47 #define MESSAGE1(NAME, F1, N1, V1) \
48  class NAME: public CMessage { \
49  public: F1 _##N1; \
50  NAME() : CMessage(), _##N1(V1) {} \
51  NAME(F1 N1) : CMessage(), _##N1(N1) {} \
52  CLASSDEF; \
53  static bool isSupportedBy(const CTreeItem *item) { \
54  return supports(item, _type); } \
55 }
56 #define MESSAGE2(NAME, F1, N1, V1, F2, N2, V2) \
57  class NAME: public CMessage { \
58  public: F1 _##N1; F2 _##N2; \
59  NAME() : CMessage(), _##N1(V1), _##N2(V2) {} \
60  NAME(F1 N1, F2 N2) : CMessage(), _##N1(N1), _##N2(N2) {} \
61  CLASSDEF; \
62  static bool isSupportedBy(const CTreeItem *item) { \
63  return supports(item, _type); } \
64 }
65 #define MESSAGE3(NAME, F1, N1, V1, F2, N2, V2, F3, N3, V3) \
66  class NAME: public CMessage { \
67  public: F1 _##N1; F2 _##N2; F3 _##N3; \
68  NAME() : CMessage(), _##N1(V1), _##N2(V2), _##N3(V3) {} \
69  NAME(F1 N1, F2 N2, F3 N3) : CMessage(), _##N1(N1), _##N2(N2), _##N3(N3) {} \
70  CLASSDEF; \
71  static bool isSupportedBy(const CTreeItem *item) { \
72  return supports(item, _type); } \
73 }
74 #define MESSAGE4(NAME, F1, N1, V1, F2, N2, V2, F3, N3, V3, F4, N4, V4) \
75  class NAME: public CMessage { \
76  public: F1 _##N1; F2 _##N2; F3 _##N3; F4 _##N4; \
77  NAME() : CMessage(), _##N1(V1), _##N2(V2), _##N3(V3), _##N4(V4) {} \
78  NAME(F1 N1, F2 N2, F3 N3, F4 N4) : CMessage(), _##N1(N1), _##N2(N2), _##N3(N3), _##N4(N4) {} \
79  CLASSDEF; \
80  static bool isSupportedBy(const CTreeItem *item) { \
81  return supports(item, _type); } \
82 }
83 
84 class CCarry;
85 class CCharacter;
86 class CGameObject;
87 class CRoomItem;
88 class CNodeItem;
89 class CViewItem;
90 class CMusicPlayer;
91 class CMovePlayerTo;
92 
93 class CMessage : public CSaveableObject {
94 private:
98  static const MSGMAP_ENTRY *findMapEntry(const CTreeItem *treeItem, const ClassDef *classDef);
99 public:
100  CLASSDEF;
101  CMessage();
102 
107  bool execute(CTreeItem *target, const ClassDef *classDef = nullptr,
108  int flags = MSGFLAG_SCAN | MSGFLAG_BREAK_IF_HANDLED);
109 
114  bool execute(const CString &target, const ClassDef *classDef = nullptr,
115  int flags = MSGFLAG_SCAN | MSGFLAG_BREAK_IF_HANDLED);
116 
120  virtual bool perform(CTreeItem *treeItem);
121 
125  static bool supports(const CTreeItem *treeItem, ClassDef *classDef);
126 
130  void save(SimpleFile *file, int indent) override;
131 
135  void load(SimpleFile *file) override;
136 
137  virtual bool isMouseMsg() const;
138  virtual bool isButtonDownMsg() const;
139  virtual bool isButtonUpMsg() const;
140  virtual bool isMouseMoveMsg() const;
141  virtual bool isDoubleClickMsg() const;
142  virtual bool isEnterRoomMsg() const;
143  virtual bool isPreEnterRoomMsg() const;
144  virtual bool isleaveRoomMsg() const;
145  virtual bool isEnterNodeMsg() const;
146  virtual bool isPreEnterNodeMsg() const;
147  virtual bool isLeaveNodeMsg() const;
148  virtual bool isEnterViewMsg() const;
149  virtual bool isPreEnterViewMsg() const;
150  virtual bool isLeaveViewMsg() const;
151 };
152 
153 enum EditControlAction {
154  EDIT_INIT = 0,
155  EDIT_CLEAR = 1,
156  EDIT_SET_TEXT = 2,
157  EDIT_GET_TEXT = 3,
158  EDIT_LENGTH = 4,
159  EDIT_MAX_LENGTH = 5,
160  EDIT_KEYPRESS = 6,
161  EDIT_SET_FONT = 7,
162  EDIT_SHOW_CURSOR = 8,
163  EDIT_HIDE_CURSOR = 9,
164  EDIT_BORDERS = 10,
165  EDIT_SET_COLOR = 11,
166  EDIT_SHOW = 12,
167  EDIT_HIDE = 13,
168  EDIT_RENDER = 14
169 };
170 
171 class CEditControlMsg : public CMessage {
172 public:
173  EditControlAction _mode;
174  int _param;
175  CString _text;
176  byte _textR;
177  byte _textG;
178  byte _textB;
179 public:
180  CLASSDEF;
181  CEditControlMsg() : _mode(EDIT_INIT), _param(0), _textR(0), _textG(0), _textB(0) {}
182 
183  static bool isSupportedBy(const CTreeItem *item) {
184  return CMessage::supports(item, _type);
185  }
186 };
187 
188 MESSAGE1(CTimeMsg, uint, _ticks, 0);
189 
190 class CTimerMsg : public CTimeMsg {
191 public:
192  uint _timerCtr;
193  int _actionVal;
194  CString _action;
195 public:
196  CLASSDEF;
197  CTimerMsg() : CTimeMsg(), _timerCtr(0), _actionVal(0) {}
198  CTimerMsg(uint ticks, uint timerCtr, int actionVal, const CString &action) :
199  CTimeMsg(ticks), _timerCtr(timerCtr), _actionVal(actionVal), _action(action) {}
200 
201  static bool isSupportedBy(const CTreeItem *item) {
202  return supports(item, _type);
203  }
204 };
205 
206 class CShowTextMsg : public CMessage {
207 public:
208  CString _message;
209 public:
210  CLASSDEF;
211  CShowTextMsg();
212  CShowTextMsg(const CString &msg);
213  CShowTextMsg(StringId stringId);
214 
215  static bool isSupportedBy(const CTreeItem *item) {
216  return supports(item, _type);
217  }
218 };
219 
220 enum MissiveOMatAction {
221  MESSAGE_NONE = 1, MESSAGE_SHOW = 2, NEXT_MESSAGE = 3, PRIOR_MESSAGE = 4,
222  MESSAGE_5 = 5, MESSAGE_DOWN = 6, MESSAGE_UP = 7, REDRAW_MESSAGE = 8,
223  MESSAGE_STARTUP = 9
224 };
225 
226 enum Movement {
227  MOVE_NONE = 0, MOVE_FORWARDS, MOVE_BACKWARDS, TURN_LEFT, TURN_RIGHT
228 };
229 
230 enum ChangeMusicAction {
231  MUSIC_NONE = 0, MUSIC_STOP = 1, MUSIC_START = 2
232 };
233 
234 class CMovementMsg : public CMessage {
235 public:
236  Movement _movement;
237  Point _posToUse;
238 public:
239  CLASSDEF;
240  CMovementMsg() : _movement(MOVE_NONE) {}
241  CMovementMsg(Movement move) : _movement(move) {}
243  _movement(getMovement(action)) {}
244 
245  static bool isSupportedBy(const CTreeItem *item) {
246  return supports(item, _type);
247  }
248 
252  static Movement getMovement(Common::CustomEventType action);
253 };
254 
255 
256 MESSAGE1(CActMsg, CString, action, "");
257 MESSAGE1(CActivationmsg, CString, value, "");
258 MESSAGE1(CAddHeadPieceMsg, CString, value, "NULL");
259 MESSAGE1(CAnimateMaitreDMsg, int, value, 0);
260 MESSAGE1(CArboretumGateMsg, int, value, 0);
263 MESSAGE1(CBowlStateChangeMsg, int, state, 0);
264 MESSAGE2(CCarryObjectArrivedMsg, CString, strValue, "", int, numValue, 0);
265 MESSAGE2(CChangeMusicMsg, CString, filename, "", ChangeMusicAction, action, MUSIC_NONE);
266 MESSAGE1(CChangeSeasonMsg, CString, season, "Summer");
268 MESSAGE2(CCheckChevCode, int, classNum, 0, uint, chevCode, 0);
269 MESSAGE1(CChildDragEndMsg, int, value, 0);
275 MESSAGE1(CDeliverCCarryMsg, CString, value, "");
277 MESSAGE0(CDismissBotMsg);
278 MESSAGE0(CDoffNavHelmet);
279 MESSAGE0(CDonNavHelmet);
280 MESSAGE1(CDoorbotNeededInElevatorMsg, int, value, 0);
282 MESSAGE1(CDropObjectMsg, CCarry *, item, nullptr);
283 MESSAGE1(CDropZoneGotObjectMsg, CGameObject *, object, nullptr);
284 MESSAGE1(CDropZoneLostObjectMsg, CGameObject *, object, nullptr);
285 MESSAGE1(CEjectCylinderMsg, int, value, 0);
286 MESSAGE2(CPreEnterNodeMsg, CNodeItem *, oldNode, nullptr, CNodeItem *, newNode, nullptr);
287 MESSAGE2(CPreEnterRoomMsg, CRoomItem *, oldRoom, nullptr, CRoomItem *, newRoom, nullptr);
288 MESSAGE2(CPreEnterViewMsg, CViewItem *, oldView, nullptr, CViewItem *, newView, nullptr);
289 MESSAGE2(CEnterNodeMsg, CNodeItem *, oldNode, nullptr, CNodeItem *, newNode, nullptr);
290 MESSAGE2(CEnterRoomMsg, CRoomItem *, oldRoom, nullptr, CRoomItem *, newRoom, nullptr);
291 MESSAGE2(CEnterViewMsg, CViewItem *, oldView, nullptr, CViewItem *, newView, nullptr);
293 MESSAGE1(CFrameMsg, uint, ticks, 0);
294 MESSAGE2(CFreshenCookieMsg, int, value1, 0, int, value2, 1);
295 MESSAGE1(CGetChevClassBits, int, classBits, 0);
296 MESSAGE1(CGetChevClassNum, int, classNum, 0);
297 MESSAGE2(CGetChevCodeFromRoomNameMsg, CString, roomName, "", uint, chevCode, 0);
298 MESSAGE1(CGetChevFloorBits, int, floorBits, 0);
299 MESSAGE1(CGetChevFloorNum, int, floorNum, 0);
300 MESSAGE1(CGetChevLiftBits, int, liftBits, 0);
301 MESSAGE1(CGetChevLiftNum, int, liftNum, 0);
302 MESSAGE1(CGetChevRoomBits, int, roomNum, 0);
303 MESSAGE1(CGetChevRoomNum, int, roomNum, 0);
304 MESSAGE2(CHoseConnectedMsg, bool, connected, true, CGameObject *, object, nullptr);
306 MESSAGE1(CIsEarBowlPuzzleDone, int, value, 0);
307 MESSAGE3(CIsHookedOnMsg, Rect, rect, Rect(), bool, isHooked, false, CString, armName, "");
308 MESSAGE1(CIsParrotPresentMsg, bool, isPresent, false);
309 MESSAGE1(CKeyCharMsg, int, key, 32);
310 MESSAGE2(CLeaveNodeMsg, CNodeItem *, oldNode, nullptr, CNodeItem *, newNode, nullptr);
311 MESSAGE2(CLeaveRoomMsg, CRoomItem *, oldRoom, nullptr, CRoomItem *, newRoom, nullptr);
312 MESSAGE2(CLeaveViewMsg, CViewItem *, oldView, nullptr, CViewItem *, newView, nullptr);
314 MESSAGE4(CLightsMsg, bool, topRight, false, bool, topLeft, false, bool, bottomLeft, false, bool, bottomRight, false);
315 MESSAGE1(CLoadSuccessMsg, int, ticks, 0);
316 MESSAGE1(CLockPhonographMsg, int, value, 0);
319 MESSAGE1(CMissiveOMatActionMsg, MissiveOMatAction, action, MESSAGE_NONE);
321 MESSAGE2(CMovieEndMsg, int, startFrame, 0, int, endFrame, 0);
322 MESSAGE2(CMovieFrameMsg, int, frameNumber, 0, int, value2, 0);
326 MESSAGE2(CNPCPlayAnimationMsg, const char *const *, names, nullptr, int, maxDuration, 0);
327 MESSAGE1(CNPCPlayIdleAnimationMsg, const char *const *, names, 0);
328 MESSAGE3(CNPCPlayTalkingAnimationMsg, uint, speechDuration, 0, int, value2, 0, const char *const *, names, nullptr);
330 MESSAGE1(CNutPuzzleMsg, CString, action, "");
331 MESSAGE1(COnSummonBotMsg, int, value, 0);
333 MESSAGE1(CPanningAwayFromParrotMsg, CMovePlayerTo *, target, nullptr);
334 MESSAGE2(CParrotSpeakMsg, CString, target, "", CString, action, "");
335 MESSAGE2(CParrotTriesChickenMsg, bool, isHot, false, int, condiment, 0);
336 MESSAGE1(CPhonographPlayMsg, int, value, 0);
338 MESSAGE1(CPhonographRecordMsg, bool, canRecord, false);
339 MESSAGE3(CPhonographStopMsg, bool, leavingRoom, false, bool, cylinderPresent, false, bool, dontStop, false);
340 MESSAGE2(CPlayRangeMsg, int, value1, 0, int, value2, 0);
341 MESSAGE2(CPlayerTriesRestaurantTableMsg, int, tableId, 0, bool, result, false);
342 MESSAGE1(CPreSaveMsg, int, value, 0);
343 MESSAGE1(CProdMaitreDMsg, int, value, 0);
344 MESSAGE2(CPumpingMsg, int, value, 0, CGameObject *, object, nullptr);
345 MESSAGE1(CPutBotBackInHisBoxMsg, int, value, 0);
346 MESSAGE1(CPutParrotBackMsg, int, value, 0);
348 MESSAGE3(CQueryCylinderHolderMsg, bool, isOpen, false, bool, isPresent, false, CTreeItem *, target, (CTreeItem *)nullptr);
349 MESSAGE1(CQueryCylinderMsg, CString, name, "");
350 MESSAGE1(CQueryCylinderNameMsg, CString, name, "");
351 MESSAGE3(CQueryCylinderTypeMsg, int, value1, 0, int, value2, 0, int, value3, 0);
352 MESSAGE1(CQueryMusicControlSettingMsg, int, value, 0);
353 MESSAGE1(CQueryPhonographState, int, value, 0);
357 MESSAGE1(CRestaurantMusicChanged, CString, value, "");
358 MESSAGE2(CSendCCarryMsg, CString, strValue, "", int, numValue, 0);
359 MESSAGE1(CSenseWorkingMsg, CString, value, "Not Working");
360 MESSAGE2(CServiceElevatorFloorChangeMsg, int, startFloor, 0, int, endFloor, 0);
362 MESSAGE1(CServiceElevatorMsg, int, value, 4);
363 MESSAGE2(CSetChevButtonImageMsg, int, value1, 0, int, value2, 0);
364 MESSAGE1(CSetChevClassBits, int, classNum, 0);
365 MESSAGE1(CSetChevFloorBits, int, floorNum, 0);
366 MESSAGE1(CSetChevLiftBits, int, liftNum, 0);
367 MESSAGE2(CSetChevPanelBitMsg, int, value1, 0, int, value2, 0);
368 MESSAGE1(CSetChevPanelButtonsMsg, int, chevCode, 0);
369 MESSAGE1(CSetChevRoomBits, int, roomFlags, 0);
370 MESSAGE1(CSetFrameMsg, int, frameNumber, 0);
372 MESSAGE2(CSetVarMsg, CString, varName, "", int, value, 0);
373 MESSAGE2(CSetVolumeMsg, int, volume, 70, int, secondsTransition, 0);
374 MESSAGE2(CShipSettingMsg, int, value, 0, CString, name, "");
375 MESSAGE2(CSignalObject, CString, strValue, "", int, numValue, 0);
377 MESSAGE1(CStartMusicMsg, CMusicPlayer *, musicPlayer, (CMusicPlayer *)nullptr);
378 MESSAGE3(CStatusChangeMsg, int, oldStatus, 0, int, newStatus, 0, bool, success, false);
379 MESSAGE1(CStopMusicMsg, CMusicPlayer *, musicPlayer, (CMusicPlayer *)nullptr);
380 MESSAGE4(CSubAcceptCCarryMsg, CString, string1, "", int, value1, 0, int, value2, 0, CCarry *, item, nullptr);
383 MESSAGE0(CSUBTransition);
384 MESSAGE0(CSubTurnOffMsg);
385 MESSAGE0(CSubTurnOnMsg);
386 MESSAGE2(CSummonBotMsg, CString, npcName, "", int, value, 0);
387 MESSAGE1(CSummonBotQueryMsg, CString, npcName, "");
388 MESSAGE1(CTakeHeadPieceMsg, CString, value, "NULL");
389 MESSAGE2(CTextInputMsg, CString, input, "", CString, response, "");
390 MESSAGE1(CTimeDilationMsg, int, value, 0);
392 MESSAGE0(CTransitMsg);
393 MESSAGE1(CTranslateObjectMsg, Point, delta, Point());
394 MESSAGE3(CTransportMsg, CString, roomName, "", int, value1, 0, int, value2, 0);
395 MESSAGE1(CTriggerAutoMusicPlayerMsg, int, value, 0);
396 MESSAGE1(CTriggerNPCEvent, int, value, 0);
397 MESSAGE4(CTrueTalkGetAnimSetMsg, int, value1, 0, uint, index, 0, uint, startFrame, 0, uint, endFrame, 0);
398 MESSAGE2(CTrueTalkGetAssetDetailsMsg, CString, filename, "", int, numValue, 0);
399 MESSAGE2(CTrueTalkGetStateValueMsg, int, stateNum, 0, int, stateVal, -1000);
400 MESSAGE2(CTrueTalkNotifySpeechEndedMsg, int, endState, 0, int, dialogueId, 0);
401 MESSAGE3(CTrueTalkNotifySpeechStartedMsg, uint, speechDuration, 0, uint, dialogueId, 0, int, value, 0);
402 MESSAGE1(CTrueTalkQueueUpAnimSetMsg, int, value, 0);
404 MESSAGE3(CTrueTalkTriggerActionMsg, int, action, 0, int, param1, 0, int, param2, 0);
405 MESSAGE0(CTurnOff);
406 MESSAGE0(CTurnOn);
407 MESSAGE1(CUse, CGameObject *, item, nullptr);
408 MESSAGE1(CUseWithCharMsg, CCharacter *, character, nullptr);
409 MESSAGE1(CUseWithOtherMsg, CGameObject *, other, 0);
410 MESSAGE1(CActionMsg, Common::CustomEventType, action, 0);
411 MESSAGE1(CVisibleMsg, bool, visible, true);
412 MESSAGE1(CCheckCodeWheelsMsg, bool, isCorrect, true);
413 
414 } // End of namespace Titanic
415 
416 #endif /* TITANIC_MESSAGE_H */
Definition: messages.h:351
Definition: messages.h:335
Definition: messages.h:406
Definition: messages.h:283
Definition: messages.h:338
Definition: messages.h:304
Definition: messages.h:333
Definition: messages.h:299
Definition: messages.h:281
Definition: move_player_to.h:29
Definition: messages.h:290
Definition: messages.h:330
Definition: messages.h:379
Definition: messages.h:367
Definition: messages.h:319
Definition: messages.h:325
Definition: messages.h:352
Definition: messages.h:390
Definition: messages.h:349
Definition: messages.h:382
static bool supports(const CTreeItem *treeItem, ClassDef *classDef)
Definition: messages.h:259
Definition: messages.h:300
Definition: messages.h:371
Definition: messages.h:276
Definition: messages.h:318
Definition: messages.h:301
Definition: messages.h:399
void save(SimpleFile *file, int indent) override
Definition: carry.h:31
Definition: messages.h:396
Definition: messages.h:296
Definition: messages.h:285
Definition: messages.h:373
Definition: messages.h:328
Definition: messages.h:263
Definition: messages.h:268
Definition: messages.h:387
Definition: messages.h:383
Definition: messages.h:291
Definition: messages.h:334
Definition: messages.h:410
Definition: messages.h:311
Definition: messages.h:344
uint32 CustomEventType
Definition: events.h:204
Definition: messages.h:342
Definition: messages.h:340
Definition: character.h:29
Definition: messages.h:392
Definition: messages.h:346
Definition: simple_file.h:49
Definition: saveable_object.h:35
Definition: messages.h:292
Definition: messages.h:282
Definition: messages.h:279
Definition: messages.h:365
Definition: messages.h:384
Definition: messages.h:258
Definition: messages.h:376
Definition: messages.h:389
Definition: room_item.h:33
Definition: messages.h:409
Definition: messages.h:323
Definition: messages.h:260
Definition: node_item.h:29
Definition: messages.h:369
Definition: messages.h:313
Definition: messages.h:359
Definition: messages.h:347
Definition: messages.h:190
Definition: messages.h:274
Definition: messages.h:332
Definition: messages.h:265
Definition: messages.h:348
Definition: messages.h:329
Definition: messages.h:363
Definition: messages.h:271
Definition: messages.h:385
Definition: messages.h:257
Definition: messages.h:356
Definition: messages.h:288
Definition: messages.h:403
Definition: messages.h:273
Definition: messages.h:345
Definition: messages.h:295
Definition: messages.h:394
Definition: messages.h:275
Definition: game_object.h:79
Definition: messages.h:321
Definition: messages.h:306
Definition: messages.h:400
Definition: messages.h:372
Definition: messages.h:266
Definition: messages.h:284
bool execute(CTreeItem *target, const ClassDef *classDef=nullptr, int flags=MSGFLAG_SCAN|MSGFLAG_BREAK_IF_HANDLED)
Definition: messages.h:278
Definition: message_target.h:34
Definition: messages.h:388
Definition: tree_item.h:37
Definition: messages.h:358
Definition: messages.h:320
Definition: messages.h:287
Definition: messages.h:256
Definition: messages.h:398
Definition: messages.h:362
Definition: messages.h:397
Definition: messages.h:393
Definition: rect.h:35
Definition: messages.h:336
Definition: messages.h:316
Definition: messages.h:366
Definition: messages.h:378
Definition: messages.h:339
Definition: messages.h:289
Definition: messages.h:326
Definition: rect.h:144
Definition: messages.h:317
Definition: messages.h:380
Definition: arm.h:30
void load(SimpleFile *file) override
Definition: string.h:40
Definition: messages.h:310
Definition: messages.h:314
Definition: messages.h:206
Definition: messages.h:171
Definition: messages.h:286
Definition: messages.h:341
Definition: messages.h:267
Definition: messages.h:297
Definition: messages.h:404
Definition: messages.h:298
Definition: messages.h:375
Definition: messages.h:411
Out move(In first, In last, Out dst)
Definition: algorithm.h:109
Definition: messages.h:312
Definition: messages.h:353
Definition: messages.h:322
Definition: messages.h:402
Definition: messages.h:381
Definition: messages.h:331
Definition: messages.h:407
Definition: messages.h:308
Definition: messages.h:368
Definition: messages.h:309
Definition: messages.h:343
Definition: messages.h:305
Definition: messages.h:277
Definition: messages.h:307
Definition: messages.h:269
Definition: messages.h:357
Definition: messages.h:303
Definition: messages.h:374
Definition: messages.h:370
Definition: messages.h:355
Definition: messages.h:386
Definition: saveable_object.h:58
Definition: messages.h:261
Definition: messages.h:395
Definition: messages.h:324
Definition: messages.h:391
Definition: messages.h:270
Definition: messages.h:412
Definition: messages.h:337
Definition: messages.h:293
Definition: messages.h:360
virtual bool perform(CTreeItem *treeItem)
Definition: messages.h:272
Definition: messages.h:354
Definition: messages.h:408
Definition: messages.h:315
Definition: messages.h:377
Definition: messages.h:405
Definition: messages.h:264
Definition: messages.h:93
Definition: messages.h:280
Definition: messages.h:188
Definition: messages.h:262
Definition: music_player.h:30
Definition: messages.h:364
Definition: messages.h:327
Definition: messages.h:234
Definition: messages.h:302
Definition: messages.h:350
Definition: view_item.h:32