Skip to content
This repository was archived by the owner on Apr 25, 2019. It is now read-only.

Commit 1645141

Browse files
committed
Expose more Events Functions related methods
1 parent 13e01d3 commit 1645141

File tree

6 files changed

+304
-48
lines changed

6 files changed

+304
-48
lines changed

Bindings/Bindings.idl

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,7 @@ interface ObjectGroupsContainer {
207207
[Ref] ObjectGroup Insert([Const, Ref] ObjectGroup objectGroup, unsigned long position);
208208
[Ref] ObjectGroup InsertNew([Const] DOMString name, unsigned long position);
209209
unsigned long Count();
210+
[Ref] ObjectGroup Get([Const] DOMString name);
210211
[Ref] ObjectGroup GetAt(unsigned long index);
211212
void Clear();
212213
void Remove([Const] DOMString name);
@@ -938,6 +939,7 @@ interface InstructionMetadata {
938939
boolean CanHaveSubInstructions();
939940
[Ref] ParameterMetadata GetParameter(unsigned long index);
940941
unsigned long GetParametersCount();
942+
[Const, Ref] VectorParameterMetadata GetParameters();
941943
long GetUsageComplexity();
942944
boolean IsHidden();
943945

@@ -967,6 +969,7 @@ interface ExpressionMetadata {
967969
boolean IsShown();
968970
[Ref] ParameterMetadata GetParameter(unsigned long id);
969971
unsigned long GetParametersCount();
972+
[Const, Ref] VectorParameterMetadata GetParameters();
970973

971974
[Ref] ExpressionMetadata SetHidden();
972975
[Ref] ExpressionMetadata SetGroup([Const] DOMString str); //TODO: check if useful
@@ -1000,6 +1003,7 @@ interface ParameterMetadata {
10001003
[Const, Ref] DOMString GetDefaultValue();
10011004
[Ref] ParameterMetadata SetDefaultValue([Const] DOMString defaultValue_);
10021005
boolean STATIC_IsObject([Const] DOMString param);
1006+
boolean STATIC_IsBehavior([Const] DOMString param);
10031007
};
10041008

10051009
interface VectorParameterMetadata {
@@ -1015,6 +1019,11 @@ interface VectorParameterMetadata {
10151019

10161020
interface ParameterMetadataTools {
10171021
void STATIC_ParametersToObjectsContainer([Ref] Project project, [Const, Ref] VectorParameterMetadata parameters, [Ref] ObjectsContainer outputObjectsContainer);
1022+
unsigned long STATIC_GetObjectParameterIndexFor([Const, Ref] VectorParameterMetadata parameters, unsigned long parameterIndex);
1023+
};
1024+
1025+
interface EventsFunctionTools {
1026+
void STATIC_EventsFunctionToObjectsContainer([Ref] Project project, [Const, Ref] EventsFunction eventsFunction, [Ref] ObjectsContainer outputObjectsContainer);
10181027
};
10191028

10201029
interface ObjectMetadata {
@@ -1619,6 +1628,7 @@ interface EventsFunction {
16191628

16201629
[Ref] EventsList GetEvents();
16211630
[Ref] VectorParameterMetadata GetParameters();
1631+
[Ref] ObjectGroupsContainer GetObjectGroups();
16221632

16231633
void SerializeTo([Ref] SerializerElement element);
16241634
void UnserializeFrom([Ref] Project project, [Const, Ref] SerializerElement element);
@@ -1720,8 +1730,9 @@ interface InstructionsTypeRenamer {
17201730
};
17211731

17221732
interface EventsContext {
1723-
[Const, Ref] SetString GetObjectOrGroupNames();
1733+
[Const, Ref] SetString GetReferencedObjectOrGroupNames();
17241734
[Const, Ref] SetString GetObjectNames();
1735+
[Const, Ref] SetString GetBehaviorNamesOfObjectOrGroup([Const] DOMString objectOrGroupName);
17251736
};
17261737

17271738
interface EventsContextAnalyzer {

Bindings/Wrapper.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include <GDCore/Project/EventsFunction.h>
2929
#include <GDCore/Project/EventsFunctionsExtension.h>
3030
#include <GDCore/IDE/AbstractFileSystem.h>
31+
#include <GDCore/IDE/EventsFunctionTools.h>
3132
#include <GDCore/IDE/Dialogs/LayoutEditorCanvas/LayoutEditorCanvasOptions.h>
3233
#include <GDCore/IDE/Dialogs/ObjectListDialogsHelper.h>
3334
#include <GDCore/IDE/Dialogs/PropertyDescriptor.h>
@@ -458,6 +459,7 @@ typedef ExtensionAndMetadata<ExpressionMetadata> ExtensionAndExpressionMetadata;
458459
#define STATIC_ToJSON ToJSON
459460
#define STATIC_FromJSON(x) FromJSON(gd::String(x))
460461
#define STATIC_IsObject IsObject
462+
#define STATIC_IsBehavior IsBehavior
461463
#define STATIC_Get Get
462464
#define STATIC_AddAllMissing AddAllMissing
463465
#define STATIC_GetAllUseless GetAllUseless
@@ -527,7 +529,9 @@ typedef ExtensionAndMetadata<ExpressionMetadata> ExtensionAndExpressionMetadata;
527529
#define STATIC_SearchInEvents SearchInEvents
528530
#define STATIC_UnfoldWhenContaining UnfoldWhenContaining
529531

532+
#define STATIC_EventsFunctionToObjectsContainer EventsFunctionToObjectsContainer
530533
#define STATIC_ParametersToObjectsContainer ParametersToObjectsContainer
534+
#define STATIC_GetObjectParameterIndexFor GetObjectParameterIndexFor
531535

532536
#define STATIC_GetNamespaceSeparator GetNamespaceSeparator
533537
#define STATIC_RenameEventsFunctionsExtension RenameEventsFunctionsExtension

Bindings/glue.cpp

Lines changed: 48 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55

66

7+
78
class InitialInstanceJSFunctor : public InitialInstanceJSFunctorWrapper {
89
public:
910
void invoke(InitialInstance* arg0) {
@@ -23,7 +24,6 @@ class InitialInstanceJSFunctor : public InitialInstanceJSFunctorWrapper {
2324
};
2425

2526

26-
2727
extern "C" {
2828

2929
// Not using size_t for array indices as the values used by the javascript code are signed.
@@ -703,6 +703,10 @@ VectorParameterMetadata* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsFunction_Get
703703
return &self->GetParameters();
704704
}
705705

706+
ObjectGroupsContainer* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsFunction_GetObjectGroups_0(EventsFunction* self) {
707+
return &self->GetObjectGroups();
708+
}
709+
706710
void EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsFunction_SerializeTo_1(EventsFunction* self, SerializerElement* arg0) {
707711
self->SerializeTo(*arg0);
708712
}
@@ -2384,6 +2388,19 @@ void EMSCRIPTEN_KEEPALIVE emscripten_bind_SpriteObject___destroy___0(SpriteObjec
23842388
delete self;
23852389
}
23862390

2391+
// ArbitraryResourceWorkerJS
2392+
2393+
ArbitraryResourceWorkerJS* EMSCRIPTEN_KEEPALIVE emscripten_bind_ArbitraryResourceWorkerJS_ArbitraryResourceWorkerJS_0() {
2394+
return new ArbitraryResourceWorkerJS();
2395+
}
2396+
2397+
2398+
2399+
2400+
void EMSCRIPTEN_KEEPALIVE emscripten_bind_ArbitraryResourceWorkerJS___destroy___0(ArbitraryResourceWorkerJS* self) {
2401+
delete self;
2402+
}
2403+
23872404
// HighestZOrderFinder
23882405

23892406
HighestZOrderFinder* EMSCRIPTEN_KEEPALIVE emscripten_bind_HighestZOrderFinder_HighestZOrderFinder_0() {
@@ -2428,6 +2445,10 @@ unsigned int EMSCRIPTEN_KEEPALIVE emscripten_bind_ObjectGroupsContainer_Count_0(
24282445
return self->Count();
24292446
}
24302447

2448+
ObjectGroup* EMSCRIPTEN_KEEPALIVE emscripten_bind_ObjectGroupsContainer_Get_1(ObjectGroupsContainer* self, const char* arg0) {
2449+
return &self->Get(arg0);
2450+
}
2451+
24312452
ObjectGroup* EMSCRIPTEN_KEEPALIVE emscripten_bind_ObjectGroupsContainer_GetAt_1(ObjectGroupsContainer* self, unsigned int arg0) {
24322453
return &self->GetAt(arg0);
24332454
}
@@ -2610,6 +2631,10 @@ unsigned int EMSCRIPTEN_KEEPALIVE emscripten_bind_ExpressionMetadata_GetParamete
26102631
return self->GetParametersCount();
26112632
}
26122633

2634+
const VectorParameterMetadata* EMSCRIPTEN_KEEPALIVE emscripten_bind_ExpressionMetadata_GetParameters_0(ExpressionMetadata* self) {
2635+
return &self->GetParameters();
2636+
}
2637+
26132638
ExpressionMetadata* EMSCRIPTEN_KEEPALIVE emscripten_bind_ExpressionMetadata_SetHidden_0(ExpressionMetadata* self) {
26142639
return &self->SetHidden();
26152640
}
@@ -2894,6 +2919,10 @@ unsigned int EMSCRIPTEN_KEEPALIVE emscripten_bind_InstructionMetadata_GetParamet
28942919
return self->GetParametersCount();
28952920
}
28962921

2922+
const VectorParameterMetadata* EMSCRIPTEN_KEEPALIVE emscripten_bind_InstructionMetadata_GetParameters_0(InstructionMetadata* self) {
2923+
return &self->GetParameters();
2924+
}
2925+
28972926
int EMSCRIPTEN_KEEPALIVE emscripten_bind_InstructionMetadata_GetUsageComplexity_0(InstructionMetadata* self) {
28982927
return self->GetUsageComplexity();
28992928
}
@@ -3545,6 +3574,10 @@ void EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadataTools_STATIC_Paramete
35453574
self->STATIC_ParametersToObjectsContainer(*arg0, *arg1, *arg2);
35463575
}
35473576

3577+
unsigned int EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadataTools_STATIC_GetObjectParameterIndexFor_2(ParameterMetadataTools* self, const VectorParameterMetadata* arg0, unsigned int arg1) {
3578+
return self->STATIC_GetObjectParameterIndexFor(*arg0, arg1);
3579+
}
3580+
35483581
void EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadataTools___destroy___0(ParameterMetadataTools* self) {
35493582
delete self;
35503583
}
@@ -5164,6 +5197,10 @@ bool EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadata_STATIC_IsObject_1(Pa
51645197
return self->STATIC_IsObject(arg0);
51655198
}
51665199

5200+
bool EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadata_STATIC_IsBehavior_1(ParameterMetadata* self, const char* arg0) {
5201+
return self->STATIC_IsBehavior(arg0);
5202+
}
5203+
51675204
void EMSCRIPTEN_KEEPALIVE emscripten_bind_ParameterMetadata___destroy___0(ParameterMetadata* self) {
51685205
delete self;
51695206
}
@@ -5717,14 +5754,18 @@ void EMSCRIPTEN_KEEPALIVE emscripten_bind_Animation___destroy___0(Animation* sel
57175754

57185755
// EventsContext
57195756

5720-
const SetString* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsContext_GetObjectOrGroupNames_0(EventsContext* self) {
5721-
return &self->GetObjectOrGroupNames();
5757+
const SetString* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsContext_GetReferencedObjectOrGroupNames_0(EventsContext* self) {
5758+
return &self->GetReferencedObjectOrGroupNames();
57225759
}
57235760

57245761
const SetString* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsContext_GetObjectNames_0(EventsContext* self) {
57255762
return &self->GetObjectNames();
57265763
}
57275764

5765+
const SetString* EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsContext_GetBehaviorNamesOfObjectOrGroup_1(EventsContext* self, const char* arg0) {
5766+
return &self->GetBehaviorNamesOfObjectOrGroup(arg0);
5767+
}
5768+
57285769
void EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsContext___destroy___0(EventsContext* self) {
57295770
delete self;
57305771
}
@@ -6716,16 +6757,13 @@ void EMSCRIPTEN_KEEPALIVE emscripten_bind_ParserCallbacks___destroy___0(ParserCa
67166757
delete self;
67176758
}
67186759

6719-
// ArbitraryResourceWorkerJS
6760+
// EventsFunctionTools
67206761

6721-
ArbitraryResourceWorkerJS* EMSCRIPTEN_KEEPALIVE emscripten_bind_ArbitraryResourceWorkerJS_ArbitraryResourceWorkerJS_0() {
6722-
return new ArbitraryResourceWorkerJS();
6762+
void EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsFunctionTools_STATIC_EventsFunctionToObjectsContainer_3(EventsFunctionTools* self, Project* arg0, const EventsFunction* arg1, ObjectsContainer* arg2) {
6763+
self->STATIC_EventsFunctionToObjectsContainer(*arg0, *arg1, *arg2);
67236764
}
67246765

6725-
6726-
6727-
6728-
void EMSCRIPTEN_KEEPALIVE emscripten_bind_ArbitraryResourceWorkerJS___destroy___0(ArbitraryResourceWorkerJS* self) {
6766+
void EMSCRIPTEN_KEEPALIVE emscripten_bind_EventsFunctionTools___destroy___0(EventsFunctionTools* self) {
67296767
delete self;
67306768
}
67316769

0 commit comments

Comments
 (0)