New build of AfterGRASP is up for download:
agsetup_20131104.exe
----------------------------------------------------------------------------
Mon, 04 Nov 2013
New internal compiler generated command _IDLEIFLESS takes a value,
variable name, and label. Does not take stack tail, so MUST have
all 3 parameters which are removed from stack upon return. Is generated
by FOREVER COUNT and WAIT COUNT commands by compiler.
For example WAIT 33 generates this low level code:
(_ftimer1
timerinit) (0 var_mousekey) _wait1 _label (var_mousekey) _waitquit1 _if
330 _ftimer1 _wait1 _idleifless _waitquit1 _label (_ftimer1 free)
FOREVER 2 generated this low level code:
(_ftimer1 timerinit) _forever1 _label 20 _ftimer1 _forever1 _idleifless (_ftimer1 free)
The purpose of these changes is when a FOREVER/WAIT is active, and a WHEN event does
multiple POPs that wipe out the timing variables, it can no longer produce a variable
undefined error.
----------------------------------------------------------------------------
Thu, 31 Oct 2013
*** EARLY ALPHA - NOT WORKING ***
New compile time commands under development, SCRIPTREPLACE and SCRIPTIONS:
SCRIPTREPLACE SEARCH REPLACE
Like the #DEFINE feature in C/C++, except the search is a regular expression.
Same syntax as the strregexreplace. Parameters can be in quotes, or not.
SCRIPTOPTIONS OPTION1 OPTION2 OPTION3
Option currently supported are BRACES, NOBRACES, ATVAR, and NOATVAR
BRACES allows use of curly braces instead of ENDIF/NEXT/ENDWHILE/ENDLOOP
terminators.
NOBRACES:
if (@fred==charles)
messagebox ok
endif
BRACES:
if (@fred==@charles)
{
messagebox ok
}
or
if (@fred==charles) {
messagebox ok
}
ATVAR:
if (@fred==charles)
messagebox ok
endif
NOATVAR:
if (fred=="charles")
messagebox("ok")
endif
----------------------------------------------------------------------------
Thu, 03 Oct 2013
New function CLIPBOARDGETLIST() gives the list of filenames from CF_HDROP.
Returns multiple items, so you need to use something like ARRAY or
STRLIST to capture the results.
Example:
for fn inarray array(clipboardgetlist())
messagebox @fn
next
----------------------------------------------------------------------------