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