1################################################
2#! @BeginChunk Example_Create_Callback_1
3#! @BeginExample
4
5MyFunction := function() return "Hello World!"; end;
6callback := Callback(MyFunction);
7Id(callback);
8
9#! @EndExample
10#! @EndChunk
11
12#################################################
13#! @BeginChunk Example_Create_Callback_2
14#! @BeginExample
15
16MyFunction := function(str) return Concatenation("Hello", " ", str); end;
17callback := Callback(MyFunction);
18arg := RequiredArg(ArgType.STRING, "Your Name");
19Add(callback, arg);
20
21#! @EndExample
22#! @EndChunk
23
24#################################################
25#! @BeginChunk Example_Create_Callback_3
26#! @BeginExample
27
28MyFunction := function(args) return args; end;
29callback := Callback(MyFunction, ["Hello World"]);
30
31#! @EndExample
32#! @EndChunk
33
34#################################################
35#! @BeginChunk Example_Create_Callback_4
36#! @BeginExample
37
38MyFunction := function(a,b) return Concatenation(a, b); end;
39callback := Callback(MyFunction, ["Hello "]);
40arg := RequiredArg(ArgType.STRING, "Your Name");
41Add(callback, arg);
42
43#! @EndExample
44#! @EndChunk
45
46#################################################
47#! @BeginChunk Example_Create_Callback_5
48#! @BeginExample
49
50MyFunction := function(a,b) return Concatenation(a, b); end;
51
52callback := Callback(TriggerType.DOUBLE_CLICK, MyFunction, ["Hello "]);
53arg := RequiredArg(ArgType.STRING, "Your Name");
54Add(callback, arg);
55
56#! @EndExample
57#! @EndChunk
58
59#################################################
60#! @BeginChunk Example_Create_Callback_6
61#! @BeginExample
62
63MyFunction := function(a,b) return Concatenation(a, b); end;
64
65callback := Callback(TriggerType.DOUBLE_CLICK, MyFunction, ["Hello "]);
66arg := RequiredArg(ArgType.STRING, "Your Name");
67SetTitle(arg, "Enter your name");
68Title(arg);
69Add(callback, arg);
70SetValue(arg, "Manuel"); # simulate the user input
71Value(arg);
72Trigger(GapToJsonString(Sanitize(callback))); # simulate the external trigger
73
74#! @EndExample
75#! @EndChunk
76
77#################################################
78#! @BeginChunk Example_Create_Callback_7
79#! @BeginExample
80
81callback := NoopCallback();
82
83#! @EndExample
84#! @EndChunk
85
86#################################################
87#! @BeginChunk Example_Create_Callback_8
88#! @BeginExample
89
90MyFunction := function(str) return Concatenation("Hello", " ", str); end;
91callback := Callback(MyFunction);
92arg1 := RequiredArg(ArgType.STRING, "Your Name");
93arg2 := RequiredArg(ArgType.STRING, "Your Age");
94Add(callback, [arg1, arg2]);
95Remove(callback, arg1);
96Add(callback, arg1);
97Remove(callback, [arg2]);
98
99#! @EndExample
100#! @EndChunk