ui.Interface.frontCall() allows calling non-4gl applications on the client side.
ui.Interface.frontCall("module", "function", [arguments], [result])
module |
a STRING value identifying the name of the shared library which specifies the function to-be-executed |
function |
a STRING value identifying the name of the function to be called |
arguments |
a list of the necessary input parameters |
result |
a list of the output parameters |
ui.Interface.frontCall() allows executing procedures such as managing clipboard content or opening files by means of front-end software.
Input and output arguments for this class method are entered as a list within square brackets:
CALL ui.Interface.frontCall("module","function", [arg1, arg2,arg3, ...], [result])
Input parameters can be represented by expressions, but output parameters must be variables only, so that they could get the returned values. Output parameters is optional, as the operating system will ignore values returned by the front-end. Empty parameter lists must be identified by empty square brackets:
CALL ui.Interface.frontCall("standard", "cbadd", [],res_variable)
Usually, front-call arguments involve variables. However, some front calls need a file path as arguments.
Here are several examples of how to pass front-call arguments:
MAIN
CALL
ui.Interface.frontCall("standard","opendir",["C:\\Program
Files\\Querix\\Lycia\\images\\","Choose the directory"],
[])
CALL
fgl_getkey()
END
MAIN
Specified file paths must follow the syntax of the front-end file system. You may need to escape backslash characters in such parameters.
MAIN
CALL
ui.Interface.frontCall("standard","opendir",["{CONTEXT}/images/","Choose the directory"],
[])
CALL
fgl_getkey()
END
MAIN
MAIN
CALL
ui.Interface.frontCall("standard","opendir",["qx://application/images/","Choose the directory"],
[])
CALL
fgl_getkey()
END
MAIN
MAIN
DEFINE start_path,caption,destination
STRING
CALL fgl_getkey()
LET start_path
="C:\\Program Files\\Querix\\Lycia\\images\\"
LET caption
="Choose the directory"
CALL ui.Interface.frontCall("standard",
"opendir", [start_path,caption], [destination]
)
DISPLAY "destination
= ",destination
END MAIN
ui.Interface.frontCall() standard module includes the default built-in front-end functions. The list of the standard front-end functions is provided here. Additional modules and functions are available for front ends, including .dll and .so libraries. 4gl developers can also create their own modules so as to customize front-end calls.
ui.Interface.frontCall() arguments (both input and output parameters) are controlled by the front end. If any issues occur with their specification, certain errors can arise.