version 1.3, 2017/07/05 13:53:40
|
version 1.9, 2017/08/22 11:37:31
|
Line 5
|
Line 5
|
libraryName(motif); |
libraryName(motif); |
|
|
exportExternalFunctions( |
exportExternalFunctions( |
|
XSynchronize, |
|
XStoreName, |
|
XtAddCallback, |
XtAppExitMainLoop, |
XtAppExitMainLoop, |
XtAppInitialize, |
XtAppInitialize, |
XtAppMainLoop, |
XtAppMainLoop, |
XtCreateWidget); |
XtCreatePopupShell, |
|
XtCreateManagedWidget, |
|
XtCreateWidget, |
|
XtDestroyWidget, |
|
XtPopdown, |
|
XtPopup, |
|
XtRealizeWidget, |
|
XtRemoveCallback); |
|
|
declareSubroutine(onLoading) |
declareSubroutine(onLoading) |
notice(stdout, "\nMotif library V2R1 for RPL/2 (C) 2017 BERTRAND Joel\n"); |
notice(stdout, "\nMotif library V2R1 for RPL/2 (C) 2017 BERTRAND Joel\n"); |
Line 56 declareSubroutine(onLoading)
|
Line 66 declareSubroutine(onLoading)
|
createVariable(XtGrabExclusive); |
createVariable(XtGrabExclusive); |
|
|
createVariable(XmSTRING); |
createVariable(XmSTRING); |
|
|
|
setFalse(initializationDone); |
|
nullify(lCallbacks); |
endSubroutine |
endSubroutine |
|
|
declareSubroutine(onClosing) |
declareSubroutine(onClosing) |
// Destruction des variables spécifiques |
// Destruction des variables spécifiques et des callbacks |
declareObject(variable); |
declareObject(variable); |
|
declareDaisyChain(current); |
|
declareDaisyChain(next); |
|
|
|
current = lCallbacks; |
|
|
|
repeatWhile(not nullified(current)) |
|
next = nextElementOfDaisyChain(current); |
|
variable = fetchElementFromDaisyChain(current); |
|
freeObject(variable); |
|
free(current); |
|
current = next; |
|
endWhile |
|
|
|
nullify(lCallbacks); |
|
|
#define purgeVariable(var) \ |
#define purgeVariable(var) \ |
do { \ |
do { \ |