GDevelop Core
Core library for developing platforms and tools compatible with GDevelop.
ProjectBrowserHelper.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 #pragma once
7 
8 namespace gd {
9 class Project;
10 class Layout;
11 class String;
12 class EventsFunctionsExtension;
13 class EventsFunction;
14 class EventsBasedBehavior;
15 class EventsBasedObject;
16 class EventsBasedObjectVariant;
17 class ArbitraryEventsWorker;
18 class ArbitraryEventsWorkerWithContext;
19 class ArbitraryEventsFunctionsWorker;
20 class ArbitraryObjectsWorker;
21 class ArbitraryEventBasedBehaviorsWorker;
22 class ArbitraryBehaviorSharedDataWorker;
23 class VariablesContainer;
24 } // namespace gd
25 
26 namespace gd {
27 
31 class GD_CORE_API ProjectBrowserHelper {
32 public:
39  static void ExposeProjectEvents(gd::Project &project,
41 
48  static void ExposeProjectEvents(gd::Project &project,
50 
57  static void
58  ExposeProjectEventsWithoutExtensions(gd::Project &project,
60 
67  static void ExposeProjectEventsWithoutExtensions(
69 
74  static void ExposeLayoutEventsAndExternalEvents(gd::Project &project, gd::Layout &layout,
76 
81  static void ExposeLayoutEventsAndExternalEvents(gd::Project &project, gd::Layout &layout,
83 
89  static void
90  ExposeLayoutEventsAndDependencies(gd::Project &project, gd::Layout &layout,
92 
100  static void ExposeEventsFunctionsExtensionEvents(
101  gd::Project &project,
102  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
103  gd::ArbitraryEventsWorker &worker);
104 
112  static void ExposeEventsFunctionsExtensionEvents(
113  gd::Project &project,
114  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
116 
124  static void ExposeEventsBasedBehaviorEvents(
125  gd::Project &project, const gd::EventsBasedBehavior &eventsBasedBehavior,
126  gd::ArbitraryEventsWorker &worker);
127 
135  static void ExposeEventsBasedBehaviorEvents(
136  gd::Project &project,
137  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
138  const gd::EventsBasedBehavior &eventsBasedBehavior,
140 
148  static void ExposeEventsBasedBehaviorEvents(
149  gd::Project &project,
150  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
151  const gd::EventsBasedBehavior &eventsBasedBehavior,
152  gd::VariablesContainer &propertyVariablesContainer,
154 
162  static void
163  ExposeEventsBasedObjectEvents(gd::Project &project,
164  const gd::EventsBasedObject &eventsBasedObject,
165  gd::ArbitraryEventsWorker &worker);
166 
174  static void ExposeEventsBasedObjectEvents(
175  gd::Project &project,
176  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
177  const gd::EventsBasedObject &eventsBasedObject,
179 
187  static void ExposeEventsBasedObjectEvents(
188  gd::Project &project,
189  const gd::EventsFunctionsExtension &eventsFunctionsExtension,
190  const gd::EventsBasedObject &eventsBasedObject,
191  gd::VariablesContainer &propertyVariablesContainer,
193 
200  static void ExposeProjectObjects(gd::Project &project,
202 
208  static void ExposeLayoutObjects(gd::Layout &layout,
210 
218  static void ExposeEventsBasedObjectVariantObjects(
219  gd::EventsBasedObjectVariant &eventsBasedObjectVariant,
221 
229  static void ExposeProjectFunctions(gd::Project &project,
231 
238  static void ExposeProjectEventBasedBehaviors(
240 
247  static void ExposeProjectSharedDatas(gd::Project &project,
249 };
250 
251 } // 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:111
An events worker that will know about the context (the objects container). Useful for workers working...
Definition: ArbitraryEventsWorker.h:136
ArbitraryObjectsWorker is an abstract class used to browse objects (and behaviors) and do some work o...
Definition: ArbitraryObjectsWorker.h:30
Represents a behavior that is implemented with events.
Definition: EventsBasedBehavior.h:31
Represents an object that is implemented with events.
Definition: EventsBasedObject.h:32
Represents a variation of style of an events-based object.
Definition: EventsBasedObjectVariant.h:26
Hold a list of Events Functions (gd::EventsFunction) and Events Based Behaviors.
Definition: EventsFunctionsExtension.h:41
Represent a layout ( also called a scene ) of a project.
Definition: Layout.h:40
Expose a subset of the project to workers.
Definition: ProjectBrowserHelper.h:31
Base class representing a project (game), including all resources, scenes, objects,...
Definition: Project.h:50
Class defining a container for gd::Variable.
Definition: VariablesContainer.h:28
Definition: CommonTools.h:24