Lore archive · Warcraft Wiki, 2023 dump
API SecureHandlerWrapScript
Last wiki revision 2021-07-03
Wraps a widget script with code snippets that execute in the RestrictedEnvironment. SecureHandlerWrapScript(frame, script, header, preBody [, postBody]) SecureHandlerBaseTemplate:WrapScript(header, script, preBody [, postBody])
- frame : - A protected frame whose widget script will be wrapped.
- script : - Eligible widget script handlers defined in (see below).
- header : - A protected frame whose secure handle will be passed to the code snippet as 'self'.
- preBody : - A code snippet limited to the RestrictedEnvironment, to fire before the frame's normal widget script. Behaves like the body of a function, with predetermined arguments and return values.
- postBody : - A second code snippet to fire afterwards, but only if preBody returns arguments to trigger it.
- Each kind of preBody code snippet may also return values which change how execution proceeds, potentially halting or modifying the wrapped widget script.
- The 'message' return value also determines if postBody will fire, and is passed to postBody as an argument.
- Note the arguments are in a different order when using SecureHandlerWrapScript on any protected frame, or the WrapScript method on the SecureHandlers.
allow, message = preBody(self) postBody(self, message)
- ,, , , ,
- allow : - Halts subsequent execution unless
- message : any type - If non-nil, triggers postBody and passed as 'message' (unless execution was halted).
newbutton, message = preBody(self, button, down) postBody(self, message, button, down)
- ,, ,
- newbutton : - If non-nil, changes 'button' in subsequent execution.
- message : any type - If non-nil, triggers postBody and passed as 'message'.
... = preBody(self, button, down) postBody(self, message, button)
- ,
- retVal1 : - If non-nil, the first argument may either be "clear" (clears the cursor), "message" (triggers postBody) or any other string to replace 'kind' in subsequent execution.
- retVal2 : - If retVal1 was "clear" then retVal2 may be "message" or a replacement of 'kind' in subsequent execution. If retVal1 was "message" then retVal2 is passed as 'message' to postBody.
- ... : Other return values used in the override of subsequent execution, if applicable.
Source
https://warcraft.wiki.gg/wiki/API_SecureHandlerWrapScript · retrieved 2023-11-13 · CC BY-SA 4.0
Converted from wikitext with templates, tables and images removed, so some sentences may be missing values.
This archive predates WoW: Forever. For collected gameplay facts see the Forever database. Search the archive.