GDevelop Core
Core library for developing platforms and tools compatible with GDevelop.
EventsLeaderboardsLister.h
1 /*
2  * GDevelop Core
3  * Copyright 2008-2016 Florian Rival ([email protected]). All rights
4  * reserved. This project is released under the MIT License.
5  */
6 #ifndef EventsLeaderboardsLister_H
7 #define EventsLeaderboardsLister_H
8 #include <map>
9 #include <memory>
10 #include <set>
11 #include <vector>
12 
13 #include "GDCore/IDE/Events/ArbitraryEventsWorker.h"
14 #include "GDCore/String.h"
15 namespace gd {
16 class BaseEvent;
17 class Project;
18 class EventsList;
19 }
20 
21 namespace gd {
22 
28 class GD_CORE_API EventsLeaderboardsLister : public ArbitraryEventsWorker {
29  public:
30  EventsLeaderboardsLister(gd::Project& project_) : project(project_){};
31  virtual ~EventsLeaderboardsLister();
32 
36  const std::set<gd::String>& GetLeaderboardIds() { return leaderboardIds; }
37 
38  private:
39  virtual bool DoVisitInstruction(gd::Instruction& instruction,
40  bool isCondition);
41 
42  std::set<gd::String> leaderboardIds;
43  gd::Project& project;
44 };
45 
46 } // namespace gd
47 
48 #endif // EventsLeaderboardsLister_H
ArbitraryEventsWorker is an abstract class used to browse events (and instructions) and do some work ...
Definition: ArbitraryEventsWorker.h:36
List the leaderboard ids in the instructions.
Definition: EventsLeaderboardsLister.h:28
const std::set< gd::String > & GetLeaderboardIds()
Definition: EventsLeaderboardsLister.h:36
An instruction is a member of an event: It can be a condition or an action.
Definition: Instruction.h:30
Base class representing a project (game), including all resources, scenes, objects,...
Definition: Project.h:50
Definition: CommonTools.h:24