GDevelop Core
Core library for developing platforms and tools compatible with GDevelop.
EventsFunctionsExtensionBrowser.h
1 /*
2  * GDevelop Core
3  * Copyright 2008-present Florian Rival ([email protected]). All rights
4  * reserved. This project is released under the MIT License.
5  */
6 #pragma once
7 
8 #include "GDCore/IDE/ProjectBrowser.h"
9 
10 namespace gd {
11 class Project;
12 class String;
13 class EventsFunctionsExtension;
14 class EventsFunction;
15 class EventsBasedBehavior;
16 class EventsBasedObject;
17 class ArbitraryEventsWorker;
18 class ArbitraryEventsWorkerWithContext;
19 class ArbitraryEventsFunctionsWorker;
20 class ArbitraryObjectsWorker;
21 class ArbitraryEventBasedBehaviorsWorker;
22 class ArbitraryBehaviorSharedDataWorker;
23 } // namespace gd
24 
25 namespace gd {
26 
30 class GD_CORE_API EventsFunctionsExtensionBrowser : public ProjectBrowser {
31 public:
33  gd::EventsFunctionsExtension &eventsFunctionsExtension_)
34  : eventsFunctionsExtension(eventsFunctionsExtension_) {}
35 
43  void ExposeEvents(gd::Project &project,
44  gd::ArbitraryEventsWorker &worker) const override;
45 
53  void
54  ExposeEvents(gd::Project &project,
55  gd::ArbitraryEventsWorkerWithContext &worker) const override;
56 
64  void
65  ExposeFunctions(gd::Project &project,
66  gd::ArbitraryEventsFunctionsWorker &worker) const override;
67 
75  void ExposeObjects(gd::Project &project,
76  gd::ArbitraryObjectsWorker &worker) const override;
77 
82  void ExposeEventBasedBehaviors(
83  gd::Project &project,
84  gd::ArbitraryEventBasedBehaviorsWorker &worker) const override;
85 
90  gd::Project &project,
91  gd::ArbitraryBehaviorSharedDataWorker &worker) const override {};
92 
93 private:
94  gd::EventsFunctionsExtension &eventsFunctionsExtension;
95 };
96 
97 } // namespace gd
ArbitraryBehaviorSharedDataWorker is an abstract class used to browse shared data and do some work on...
Definition: ArbitraryBehaviorSharedDataWorker.h:29
ArbitraryEventsFunctionsWorker is an abstract class used to browse event-based behaviors and do some ...
Definition: ArbitraryEventBasedBehaviorsWorker.h:29
ArbitraryEventsFunctionsWorker is an abstract class used to browse functions signatures and do some w...
Definition: ArbitraryEventsFunctionsWorker.h:30
ArbitraryEventsWorker is an abstract class used to browse events (and instructions) and do some work ...
Definition: ArbitraryEventsWorker.h:118
An events worker that will know about the context (the objects container). Useful for workers working...
Definition: ArbitraryEventsWorker.h:143
ArbitraryObjectsWorker is an abstract class used to browse objects (and behaviors) and do some work o...
Definition: ArbitraryObjectsWorker.h:29
Expose events-functions extension contents to workers.
Definition: EventsFunctionsExtensionBrowser.h:30
void ExposeBehaviorSharedDatas(gd::Project &project, gd::ArbitraryBehaviorSharedDataWorker &worker) const override
Do nothing.
Definition: EventsFunctionsExtensionBrowser.h:89
Hold a list of Events Functions (gd::EventsFunction) and Events Based Behaviors.
Definition: EventsFunctionsExtension.h:42
Expose a subset of the project to workers.
Definition: ProjectBrowser.h:29
Base class representing a project (game), including all resources, scenes, objects,...
Definition: Project.h:52
Definition: CommonTools.h:24