From e325d5c09a0fd82f2c582953e9e77fe81dd802ca Mon Sep 17 00:00:00 2001 From: Przemyslaw Czerpak Date: Wed, 10 Sep 2003 19:40:57 +0000 Subject: [PATCH] 2003-09-10 21:37 UTC+0200 Przemyslaw Czerpak * harbour/harbour.spec + new spec file. It creates four binary RPMs with shared and static libs core harbour compiler and tools and with Ron's PP which allow to run xBase files as scripts on *nix platform and new tool hbcmp, hbcc, hblnk, hbmk. For details see README.RPM Please remember that PP has poor GPL license. It is noticed in RPM headers. + harbour/hbgtmk.sh + simple script which connect to SourceForge CVS takes sources and build RPMs from them. + harbour/make_rpm.sh + script for checking dependences and making RPMs + harbour/make_tgz.sh + script for making binary package for this Linux distro which don't support RPM + harbour/bin/hb-mkslib.sh + script for building shared libs from static ones and/or object files + harbour/bin/pack_src.sh + script for packing harbour sources * harbour/Makefile * harbour/source/compiler/harbour.c * harbour/source/common/hbver.c * harbour/source/vm/cmdarg.c * harbour/source/vm/fm.c * harbour/source/vm/hvm.c * changes for some new futures in hb{cmp,lnk,mk} tools * harbour/contrib/libct/datetime.prg - redundant STOD removed (this function is part of RTL) * harbour/contrib/dot/pp.prg * harbour/contrib/dot/pp.txt * harbour/contrib/dot/pp_harb.ch * harbour/contrib/dot/rp_dot.ch * harbour/contrib/dot/rp_run.ch * upadting for runing xBase files as scripts. All this changes (except Ron's PP) are my work borrowed from xHarbour. --- harbour/Makefile | 2 +- harbour/bin/hb-mkslib.sh | 80 + harbour/bin/pack_src.sh | 225 ++ harbour/contrib/dot/pp.prg | 1731 +++++++--- harbour/contrib/dot/pp.txt | 30 +- harbour/contrib/dot/pp_harb.ch | 4719 +++++++++++++--------------- harbour/contrib/dot/rp_dot.ch | 13 +- harbour/contrib/dot/rp_run.ch | 64 +- harbour/contrib/libct/datetime.prg | 3 + harbour/hbgtmk.sh | 60 + harbour/make_gnu.sh | 3 + harbour/make_rpm.sh | 60 + harbour/make_tgz.sh | 406 +++ harbour/source/common/hbver.c | 4 + harbour/source/compiler/harbour.c | 6 + harbour/source/vm/cmdarg.c | 3 +- harbour/source/vm/fm.c | 5 + harbour/source/vm/hvm.c | 19 +- 18 files changed, 4409 insertions(+), 3024 deletions(-) create mode 100644 harbour/bin/hb-mkslib.sh create mode 100644 harbour/bin/pack_src.sh create mode 100644 harbour/hbgtmk.sh create mode 100644 harbour/make_rpm.sh create mode 100644 harbour/make_tgz.sh diff --git a/harbour/Makefile b/harbour/Makefile index ad1a23e125..40672b7003 100644 --- a/harbour/Makefile +++ b/harbour/Makefile @@ -9,7 +9,7 @@ DIRS=\ include \ source \ utils \ - tests \ +# tests \ # samples \ include $(ROOT)config/dir.cf diff --git a/harbour/bin/hb-mkslib.sh b/harbour/bin/hb-mkslib.sh new file mode 100644 index 0000000000..2d8b6d884b --- /dev/null +++ b/harbour/bin/hb-mkslib.sh @@ -0,0 +1,80 @@ +#!/bin/sh +# +# $Id$ +# + +# --------------------------------------------------------------- +# Copyright 2003 Przemyslaw Czerpak +# simple script to build shared libraries from static ones and +# object files +# +# See doc/license.txt for licensing terms. +# --------------------------------------------------------------- + +if [ $# -lt 2 ] +then + echo "usage: `basename $0` src1.a .. srcN.a [obj1.o .. objN.o]" + exit 1 +fi + +OTMPDIR="/tmp/hb-mkslib-$$" +HB_SO_LIB="$1" +shift +case "${HB_SO_LIB}" in + *.so) + ;; + *) + HB_SO_LIB="${HB_SO_LIB}.so" + ;; +esac +dir=`pwd` + +cleanup() +{ + rm -fR "${OTMPDIR}" +} + +trap cleanup EXIT &>/dev/null + +rm -fR "${OTMPDIR}" +mkdir -p "${OTMPDIR}" +cd "${OTMPDIR}" + +for f in $* +do + if [ ! -r "${dir}/${f}" ] + then + echo "cannot read file: ${f}" + exit 1 + fi + case "${f}" in + *.o) + cp "${dir}/${f}" "${OTMPDIR}" || exit 1 + ;; + *.a) + d="${f%.a}" + d="${f##*/}" + mkdir $d + cd $d + ar -x "${dir}/${f}" || exit 1 + cd .. + ;; + *) + echo "unrecognized file: ${f}" + exit 1 + ;; + esac +done +OBJLST=`find . -name \*.o` +cd "${dir}" +rm -f "${HB_SO_LIB}" +cd "${OTMPDIR}" + +base=`basename "${HB_SO_LIB}"` +gcc -shared -o "${base}" $OBJLST && \ + cd "${dir}" && \ + mv -f "${OTMPDIR}/${base}" "${HB_SO_LIB}" + +stat="$?" +cleanup +exit "${stat}" diff --git a/harbour/bin/pack_src.sh b/harbour/bin/pack_src.sh new file mode 100644 index 0000000000..50e5da67c4 --- /dev/null +++ b/harbour/bin/pack_src.sh @@ -0,0 +1,225 @@ +#!/bin/sh +# +# $Id$ +# +# This script requires "TAR" utilities for compression. + +hb_ver="0.42.0" + +hb_archbin="tar" +hb_archopt="-cz --ignore-failed-read -f" +hb_ext=".tar.gz" +hb_filename="harbour-${hb_ver}.src${hb_ext}" +[ -f $hb_filename ] && rm -f $hb_filename + +if [ ! -f bin/pack_src.sh ]; then + hb_rootdir=`dirname $0` + hb_rootdir="${hb_rootdir}/../" + hb_archopt="-C $hb_rootdir $hb_archopt" +else + hb_rootdir="." +fi + +#[ -z "$TZ" ] && export TZ=PST8PDT + +hb_collect_all() +{ + +hb_collect="echo" + +# README.TXT + +# ROOT +$hb_collect *.bat +$hb_collect *.sh +$hb_collect *.cmd +$hb_collect *.spec +$hb_collect [Mm]akefile* +$hb_collect Change[Ll]og* +$hb_collect COPYING TODO ERRATA + +# BIN +$hb_collect bin/*.bat +$hb_collect bin/*.sh + +# CONFIG +$hb_collect config/*.cf +$hb_collect config/bsd/*.cf +$hb_collect config/dos/*.cf +$hb_collect config/linux/*.cf +$hb_collect config/os2/*.cf +$hb_collect config/w32/*.cf + +# DOC +$hb_collect doc/*.txt +$hb_collect doc/en/*.txt +$hb_collect doc/es/*.txt + +# INCLUDE +$hb_collect include/Makefile +$hb_collect include/*.[ch] +$hb_collect include/*.api +$hb_collect include/*.ch + +# SOURCE\COMMON +$hb_collect source/common/Makefile +$hb_collect source/common/*.[ch] + +# SOURCE +$hb_collect source/Makefile + +# SOURCE\COMPILER +$hb_collect source/compiler/Makefile +$hb_collect source/compiler/*.[cyl] +$hb_collect source/compiler/*.simple +$hb_collect source/compiler/*.sl[xy] + +# SOURCE\DEBUG +$hb_collect source/debug/Makefile +$hb_collect source/debug/*.prg + +# SOURCE\LANG +$hb_collect source/lang/Makefile +$hb_collect source/lang/*.[ch] + +# SOURCE\CODEPAGE +$hb_collect source/codepage/Makefile +$hb_collect source/codepage/*.[ch] + +# SOURCE\MACRO +$hb_collect source/macro/Makefile +$hb_collect source/macro/*.[cyl] +$hb_collect source/macro/*.slx + +# SOURCE\PP +$hb_collect source/pp/Makefile +$hb_collect source/pp/*.[ch] + +# SOURCE\RDD +$hb_collect source/rdd/Makefile +$hb_collect source/rdd/*.[ch] +$hb_collect source/rdd/*.prg + +# SOURCE\RDD\DBFCDX +$hb_collect source/rdd/dbfcdx/Makefile +$hb_collect source/rdd/dbfcdx/*.[ch] +$hb_collect source/rdd/dbfcdx/*.prg + +# SOURCE\RDD\DBFNTX +$hb_collect source/rdd/dbfntx/Makefile +$hb_collect source/rdd/dbfntx/*.[ch] +$hb_collect source/rdd/dbfntx/*.prg + +# SOURCE\RDD\NULSYS +$hb_collect source/rdd/nulsys/Makefile +$hb_collect source/rdd/nulsys/*.prg + +# SOURCE\RTL +$hb_collect source/rtl/Makefile +$hb_collect source/rtl/*.[ch] +$hb_collect source/rtl/*.prg + +# SOURCE\RTL\GT_TPL +$hb_collect source/rtl/gt_tpl/Makefile +$hb_collect source/rtl/gt_tpl/*.[ch] + +# SOURCE\RTL\GTNUL +$hb_collect source/rtl/gtnul/Makefile* +$hb_collect source/rtl/gtnul/*.[ch] + +# SOURCE\RTL\GTCGI +$hb_collect source/rtl/gtcgi/Makefile +$hb_collect source/rtl/gtcgi/*.[ch] + +# SOURCE\RTL\GTCRS +$hb_collect source/rtl/gtcrs/Makefile +$hb_collect source/rtl/gtcrs/*.[ch] +$hb_collect source/rtl/gtcrs/*.def + +# SOURCE\RTL\GTDOS +$hb_collect source/rtl/gtdos/Makefile +$hb_collect source/rtl/gtdos/*.[ch] + +# SOURCE\RTL\GTOS2 +$hb_collect source/rtl/gtos2/Makefile +$hb_collect source/rtl/gtos2/*.[ch] +$hb_collect source/rtl/gtos2/*.gcc + +# SOURCE\RTL\GTPCA +$hb_collect source/rtl/gtpca/Makefile +$hb_collect source/rtl/gtpca/*.[ch] + +# SOURCE\RTL\GTSLN +$hb_collect source/rtl/gtsln/Makefile +$hb_collect source/rtl/gtsln/*.[ch] + +# SOURCE\RTL\GTSTD +$hb_collect source/rtl/gtstd/Makefile +$hb_collect source/rtl/gtstd/*.[ch] + +# SOURCE\RTL\GTWIN +$hb_collect source/rtl/gtwin/Makefile +$hb_collect source/rtl/gtwin/*.[ch] + +# SOURCE\VM +$hb_collect source/vm/Makefile +$hb_collect source/vm/*.[ch] +$hb_collect source/vm/*.prg + +# TESTS +$hb_collect tests/*.bat +$hb_collect tests/*.ch +$hb_collect tests/*.dbf +$hb_collect tests/*.fpt +$hb_collect tests/*.prg +$hb_collect tests/*.txt + +# UTILS +$hb_collect utils/Makefile* + +# UTILS\HBDOC +$hb_collect utils/hbdoc/Makefile +$hb_collect utils/hbdoc/*.ch +$hb_collect utils/hbdoc/*.prg + +# UTILS\HBEXTERN +$hb_collect utils/hbextern/Makefile +$hb_collect utils/hbextern/*.bat +$hb_collect utils/hbextern/*.prg + +# UTILS\HBMAKE +$hb_collect utils/hbmake/Makefile +$hb_collect utils/hbmake/*.ch +$hb_collect utils/hbmake/*.prg +$hb_collect utils/hbmake/*.[ch] + +# UTILS\HBPP +$hb_collect utils/hbpp/Makefile +$hb_collect utils/hbpp/*.[ch] + +# UTILS\HBRUN +$hb_collect utils/hbrun/Makefile +$hb_collect utils/hbrun/*.prg + +# UTILS\HBTEST +$hb_collect utils/hbtest/Makefile +$hb_collect utils/hbtest/*.ch +$hb_collect utils/hbtest/*.cmd +$hb_collect utils/hbtest/*.prg + +# CONTRIB\LIBCT +$hb_collect contrib/libct/Makefile +$hb_collect contrib/libct/*.[ch] +$hb_collect contrib/libct/*.prg +$hb_collect contrib/libct/*.ch + +# CONTRIB\DOT +$hb_collect contrib/dot/*.prg +$hb_collect contrib/dot/*.ch +$hb_collect contrib/dot/*.txt + +} + +hb_flst=`cd "$hb_rootdir";hb_collect_all|grep -v "[*?[]"` + +$hb_archbin $hb_archopt $hb_filename $hb_flst diff --git a/harbour/contrib/dot/pp.prg b/harbour/contrib/dot/pp.prg index 5442176b60..9800fa8c6d 100644 --- a/harbour/contrib/dot/pp.prg +++ b/harbour/contrib/dot/pp.prg @@ -2,7 +2,7 @@ * xBaseScript Project source code: * Pre-Processor / Dot prompt environment / Script Interpreter * - * Copyright 2000-2001 Ron Pinkas + * Copyright 2000-2001 Ron Pinkas * www - http://www.xBaseScript.com * * This program is free software; you can redistribute it and/or modify @@ -25,10 +25,49 @@ #COMMAND @ Row(), 0 SAY => #endif -#DEFINE MAX_CICLES 64 +#DEFINE MAX_CICLES 256 #DEFINE PP_BUFFER_SIZE 8192 //16384 +#ifdef __CLIP__ + #ifdef __LINUX__ + #define __PLATFORM__Linux + #endif +#endif + +#ifdef __PLATFORM__Linux + #ifndef OS_PATH_DELIMITER + #define OS_PATH_DELIMITER '/' + #endif + #ifndef OS_PATH_LIST_SEPARATOR + #define OS_PATH_LIST_SEPARATOR ':' + #endif + #ifndef OS_PATH_DELIMITER_LIST + #define OS_PATH_DELIMITER_LIST "/" + #endif +#else + #ifndef OS_PATH_DELIMITER + #define OS_PATH_DELIMITER '\' + #endif + #ifndef OS_PATH_LIST_SEPARATOR + #define OS_PATH_LIST_SEPARATOR ';' + #endif + #ifndef OS_PATH_DELIMITER_LIST + #define OS_PATH_DELIMITER_LIST "\/:" + #endif +#endif + #ifdef __HARBOUR__ + + // Enable extended syntax. + #ifdef __XHARBOUR__ + #define __FOR_EACH__ + #define __WITH_ + #define __STRING_INDEX__ + + EXTERN CreateObject + EXTERN GetActiveObject + #endif + #ifndef NO_BOOST #define USE_C_BOOST #endif @@ -38,14 +77,141 @@ #ifdef FW #INCLUDE "fwextern.ch" #else + #ifdef MINIGUI + #define WIN + + EXTERN PLAYBEEP + EXTERN PLAYASTERISK + EXTERN PLAYEXCLAMATION + EXTERN PLAYHAND + EXTERN PLAYQUESTION + EXTERN PLAYOK + EXTERN ACTIVATEFORM + EXTERN GETFONT + EXTERN GETFILE + EXTERN PUTFILE + EXTERN GETMENU + EXTERN GETSUBMENU + EXTERN CCHECKMENUITEM + EXTERN CUNCHECKMENUITEM + EXTERN GETMENUCHECKSTATE + EXTERN CENABLEMENUITEM + EXTERN CDISABLEMENUITEM + EXTERN GETMENUENABLEDSTATE + EXTERN INITTIMER + EXTERN KILLTIMER + EXTERN INITTOOLTIP + EXTERN SETTOOLTIP + EXTERN INITPANEL + EXTERN C_MSGRETRYCANCEL + EXTERN C_MSGOKCANCEL + EXTERN C_MSGYESNO + EXTERN INITPROGRESSBAR + EXTERN INITSLIDER + EXTERN REPAINTSTATUS + EXTERN INITDATEPICK + EXTERN SETDATEPICK + EXTERN GETDATEPICKYEAR + EXTERN GETDATEPICKMONTH + EXTERN GETDATEPICKDAY + EXTERN EXITPROCESS + EXTERN LISTVIEW_GETFIRSTITEM + EXTERN INITGUI + EXTERN INITTOPMOSTFORM + EXTERN TRACKPOPUPMENU + EXTERN INITSTATUS + EXTERN SETSTATUS + EXTERN INITFORM + EXTERN INITMODALWINDOW + EXTERN ACTIVATEFORMGENERIC + EXTERN ACTIVATEFORMNOWAIT + EXTERN CSHOWCONTROL + EXTERN MAXIMIZE + EXTERN MINIMIZE + EXTERN RESTORE + EXTERN CHIDECONTROL + EXTERN INITBUTTON + EXTERN INITIMAGEBUTTON + EXTERN INITLABEL + EXTERN INITCHECKBOX + EXTERN INITGROUPBOX + EXTERN INITRADIOGROUP + EXTERN INITRADIOBUTTON + EXTERN INITCOMBOBOX + EXTERN INITLISTBOX + EXTERN INITSPINNER + EXTERN INITTEXTBOX + EXTERN INITNUMERICTEXTBOX + EXTERN INITPASSWORDTEXTBOX + EXTERN INITEDITBOX + EXTERN INITREADONLYEDITBOX + EXTERN GETACTIVEWINDOW + EXTERN SETACTIVEWINDOW + EXTERN INITLISTVIEW + EXTERN MSGBOX + EXTERN POSTQUITMESSAGE + EXTERN INITLISTVIEWCOLUMNS + EXTERN ADDLISTVIEWITEMS + EXTERN INITTABCONTROL + EXTERN TABCTRL_SETCURSEL + EXTERN TABCTRL_GETCURSEL + EXTERN INITIMAGE + EXTERN HIWORD + EXTERN LOWORD + EXTERN DESTROYWINDOW + EXTERN MSGINFO + EXTERN MSGSTOP + EXTERN MSGEXCLAMATION + EXTERN INITMENU + EXTERN INITCONTEXTMENU + EXTERN ISWINDOWENABLED + EXTERN ENABLEWINDOW + EXTERN DISABLEWINDOW + EXTERN SETFOREGROUNDWINDOW + EXTERN GETFOREGROUNDWINDOW + EXTERN GETNEXTWINDOW + EXTERN GETPREVWINDOW + EXTERN CHECKDLGBUTTON + EXTERN UNCHECKDLGBUTTON + EXTERN COMBOADDSTRING + EXTERN COMBOSETCURSEL + EXTERN LISTBOXADDSTRING + EXTERN LISTBOXSETCURSEL + EXTERN SETDLGITEMTEXT + EXTERN SETWINDOWTEXT + EXTERN CENTER + EXTERN LISTVIEW_SETCURSEL + EXTERN C_SETFOCUS + EXTERN GETDLGITEMTEXT + EXTERN GETWINDOWTEXT + EXTERN ISDLGBUTTONCHECKED + EXTERN COMBOGETCURSEL + EXTERN LISTBOXGETCURSEL + EXTERN COMBOBOXDELETESTRING + EXTERN LISTBOXDELETESTRING + EXTERN LISTVIEWDELETESTRING + EXTERN LISTBOXRESET + EXTERN LISTVIEWRESET + EXTERN COMBOBOXRESET + EXTERN SENDMESSAGE + EXTERN C_GETFOLDER + EXTERN C_BROWSEFORFOLDER + EXTERN C_GETSPECIALFOLDER + #endif + #ifdef WIN #COMMAND Alert( ) => MessageBox( 0, CStr( ), "PP for Windows", 0 ) EXTERN MessageBox #endif + #endif + #else + #DEFINE __CLIPPER__ + #translate At( , , ) => IIF( ( M->__AT__ := At( , SubStr( , ) ) ) == 0, 0, + M->__AT__ - 1 ) + #ifndef CRLF #DEFINE CRLF Chr(13) + Chr(10) #endif @@ -176,7 +342,7 @@ STATIC aTransRules := {}, aTransResults := {} STATIC aCommRules := {}, aCommResults := {} STATIC bDbgMatch := .F., bDbgExp := .F., bDbgPPO := .F., bLoadRules := .T., ; - bCount := .T., bCCH := .F., bCompile := .F., bStrict := .F. + bCount := .T., bCCH := .F., bCompile := .T., bStrict := .T. STATIC nIfDef := 0, abIfDef := {}, nIf := 0, abIf := {} @@ -188,7 +354,7 @@ STATIC s_bArrayPrefix := .F. STATIC s_sFile := "", s_sIncludeFile -STATIC nRow, nCol +STATIC s_nRow, s_nCol STATIC s_nProcId := 0, s_aProcedures := {}, s_xRet, s_nIfLevel := 0, ; s_aProcStack := {}, s_nProcStack := 0 @@ -205,7 +371,8 @@ STATIC s_acFlowType := {}, s_nFlowId := 0 STATIC s_bRecursive := .F. #endif -static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. +STATIC s_lRunLoaded := .F., s_lDotLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F., s_lMiniGUILoaded := .F. +STATIC s_aSwitchDefs := {} //--------------------------------------------------------------// #ifdef __HARBOUR__ @@ -215,7 +382,7 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. #endif LOCAL sIncludePath, nNext, sPath, sSwitch := "" - LOCAL nAt, sParams, sPPOExt, aParams + LOCAL nAt, sParams, sPPOExt, aParams := {} LOCAL sDefine, sCH IF p1 != NIL @@ -248,17 +415,17 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. IF sSource != NIL .AND. ( Upper( sSource ) == "-H" .OR. Upper( sSource ) == "--HELP" ) sSwitch := " PP filename[.ext] [-CCH] [-D] [-D:E] [-D:M] [-D:P] [-I] [-P] [-R]" + CRLF - sSwitch += " [-STRICT] [-U[ch-file]]" + CRLF + CRLF + sSwitch += " [-FIX] [-U[ch-file]]" + CRLF + CRLF sSwitch += [ -CCH = Generate a .cch file (compiled command header).] + CRLF sSwitch += [ -D = #define .] + CRLF sSwitch += [ -D:E = Show tracing information into the Expression Scanner.] + CRLF sSwitch += [ -D:M = Show tracing information into the Match Engine.] + CRLF sSwitch += [ -D:P = Show tracing information into the Output Generator.] + CRLF - sSwitch += [ -I = #include file search path(s) (';' seperated).] + CRLF + sSwitch += [ -I = #include file search path(s) ('] + OS_PATH_LIST_SEPARATOR + [' seperated).] + CRLF sSwitch += [ -P = Generate .pp$ pre-processed output file.] + CRLF sSwitch += [ -R = Run filename as a script.] + CRLF - sSwitch += [ -STRICT = Strict Clipper compatability (clone Clipper PreProcessor bugs).] + CRLF + sSwitch += [ -FIX = Do not clone Clipper PreProcessor bugs.] + CRLF sSwitch += [ -U = Use command definitions set in (or none).] + CRLF ? sSwitch @@ -266,19 +433,37 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. QUIT endif + #ifdef __PLATFORM__Linux + if right( hb_argv( 0 ), 6 ) == "/pprun" + bCount := .F. + bCompile := .T. + sSwitch := "" + aParams := { p1, p2, p3, p4, p5, p6, p7, p8, p9 } + aSize( aParams, PCount() ) + endif + #endif + + #ifdef _DEFAULT_INC_DIR + sPath := _DEFAULT_INC_DIR + IF ! ( Right( sPath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sPath += OS_PATH_DELIMITER + ENDIF + aAdd( s_asPaths, sPath ) + #endif + sIncludePath := GetE( "INCLUDE" ) - WHILE ( nNext := At( ';', sIncludePath ) ) > 0 + WHILE ( nNext := At( OS_PATH_LIST_SEPARATOR, sIncludePath ) ) > 0 sPath := Left( sIncludePath, nNext - 1 ) - IF ! ( Right( sPath, 1 ) $ '\/' ) - sPath += '\' + IF ! ( Right( sPath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sPath += OS_PATH_DELIMITER ENDIF aAdd( s_asPaths, sPath ) sIncludePath := SubStr( sIncludePath, nNext + 1 ) ENDDO IF ! ( sIncludePath == '' ) - IF ! ( Right( sIncludePath, 1 ) $ '\/' ) - sIncludePath += '\' + IF ! ( Right( sIncludePath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sIncludePath += OS_PATH_DELIMITER ENDIF aAdd( s_asPaths, sIncludePath ) ENDIF @@ -286,6 +471,7 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. #ifdef __CLIP__ sIncludePath := StartPath() nAt := AtR( '/', sIncludePath ) + IF nAt <= 0 nAt := AtR( "\", sIncludePath ) ENDIF @@ -293,17 +479,19 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. IF nAt != 0 sIncludePath := Left( sIncludePath, nAt - 1 ) - IF ! ( Right( sIncludePath, 1 ) $ "\/" ) - sIncludePath += '\' + + IF ! ( Right( sIncludePath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sIncludePath += OS_PATH_DELIMITER ENDIF + aAdd( s_asPaths, sIncludePath ) ENDIF - IF Empty(getenv("CLIPROOT")) - aAdd( s_asPaths, cliproot()+"\include\" ) - else - aAdd( s_asPaths, getenv("CLIPROOT")+"\include\" ) - endif + IF Empty( GetEnv( "CLIPROOT" ) ) + aAdd( s_asPaths, ClipRoot() + OS_PATH_DELIMITER + "include" + OS_PATH_DELIMITER ) + ELSE + aAdd( s_asPaths, GetEnv( "CLIPROOT" ) + OS_PATH_DELIMITER + "include" + OS_PATH_DELIMITER ) + ENDIF #endif IF ! Empty( sSwitch ) @@ -312,20 +500,9 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. /* Generate compiled header. */ IF "-CCH" $ sSwitch bCCH := .T. + bCompile := .F. ENDIF - /* Process command line defines. */ - WHILE ( nAt := At( "-D", sSwitch ) ) > 0 - nNext := At( "-", SubStr( sSwitch, nAt + 2 ) ) - IF nNext == 0 - nNext := 256 - ENDIF - - sDefine := SubStr( sSwitch, nAt + 2, nNext - 1 ) - sSwitch := Left( sSwitch, nAt - 1 ) + SubStr( sSwitch, nAt + 1 + nNext ) - CompileDefine( sDefine ) - ENDDO - /* Debug tracing options. */ IF "-D:E" $ sSwitch bDbgExp := .T. @@ -340,25 +517,38 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. sSwitch := StrTran( sSwitch, "-D:P", "" ) ENDIF + /* Process command line defines. */ + WHILE ( nAt := At( "-D", sSwitch ) ) > 0 + nNext := At( "-", SubStr( sSwitch, nAt + 2 ) ) + IF nNext == 0 + nNext := 256 + ENDIF + + sDefine := SubStr( sSwitch, nAt + 2, nNext - 1 ) + sSwitch := Left( sSwitch, nAt - 1 ) + SubStr( sSwitch, nAt + 1 + nNext ) + //CompileDefine( sDefine ) + aAdd( s_aSwitchDefs, sDefine ) + ENDDO + /* Process command line include paths. */ IF ( nAt := At( "-I", sSwitch ) ) > 0 nNext := At( "-", SubStr( sSwitch, nAt + 2 ) ) IF nNext == 0 nNext := 256 ENDIF - sIncludePath := SubStr( sSwitch, nAt + 2, nNext ) + sIncludePath := SubStr( sSwitch, nAt + 2, nNext - 1 ) - WHILE ( nNext := At( ';', sIncludePath ) ) > 0 + WHILE ( nNext := At( OS_PATH_LIST_SEPARATOR, sIncludePath ) ) > 0 sPath := Left( sIncludePath, nNext - 1 ) - IF ! ( Right( sPath, 1 ) $ '\/' ) - sPath += '\' + IF ! ( Right( sPath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sPath += OS_PATH_DELIMITER ENDIF aAdd( s_asPaths, sPath ) sIncludePath := SubStr( sIncludePath, nNext + 1 ) ENDDO IF ! ( sIncludePath == '' ) - IF ! ( Right( sIncludePath, 1 ) $ '\/' ) - sIncludePath += '\' + IF ! ( Right( sIncludePath, 1 ) $ OS_PATH_DELIMITER_LIST ) + sIncludePath += OS_PATH_DELIMITER ENDIF aAdd( s_asPaths, sIncludePath ) ENDIF @@ -367,6 +557,7 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. /* Generate .pp$ pre-processed output file. */ IF "-P" $ sSwitch sPPOExt := ".pp$" + bCompile := .F. ENDIF /* Run file as a script. */ @@ -375,8 +566,8 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. ENDIF /* Clone Clipper PreProcessor bugs. */ - IF "-STRICT" $ sSwitch - bStrict := .T. + IF "-FIX" $ sSwitch + bStrict := .F. ENDIF /* Use alternate command defintions file, or none. */ @@ -392,6 +583,7 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. IF( ! sCH == "" ) ? [Loading standard definitions from: '] + sCH + "'" ? + CompileDefine( "__PP__" ) #ifdef __HARBOUR__ CompileDefine( "__HARBOUR__" ) @@ -413,12 +605,15 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. IF bLoadRules InitRules() InitResults() + IF Len( aDefRules ) != Len( aDefResults ) Alert( [#DEFINE Rules size mismatch] ) ENDIF + IF Len( aTransRules ) != Len( aTransResults ) Alert( [#TRANSLATE Rules size mismatch] ) ENDIF + IF Len( aCommRules ) != Len( aCommResults ) Alert( [#DEFINE Rules size mismatch] ) ENDIF @@ -433,9 +628,25 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. ENDIF ENDIF - IF sSource != NIL - nRow := Row() - nCol := Col() + // Command line defines. + #ifdef __XHARBOUR__ + FOR EACH sDefine IN s_aSwitchDefs + CompileDefine( sDefine ) + NEXT + #else + FOR nAt := 1 TO Len( s_aSwitchDefs ) + CompileDefine( s_aSwitchDefs[ nAt ] ) + NEXT + #endif + + IF sSource == NIL + s_nRow := 2 + s_nCol := 0 + + RP_Dot() + ELSE + s_nRow := Row() + s_nCol := Col() IF bCompile // Populate possible Command-line Parameters @@ -456,13 +667,9 @@ static s_lRunLoaded := .F., s_lClsLoaded := .F., s_lFWLoaded := .F. ELSE PP_PreProFile( sSource, sPPOExt ) ENDIF - ELSE - nRow := 1 - nCol := 0 - RP_Dot() ENDIF - DevPos( nRow, nCol ) + DevPos( s_nRow, s_nCol ) RETURN @@ -584,13 +791,8 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) aAdd( s_aProcStack[s_nProcStack], Array( nVars, 2 ) ) FOR nVar := 1 TO nVars s_aProcStack[s_nProcStack][4][nVar][1] := s_asLocals[nVar] - #ifdef __HARBOUR__ - s_aProcStack[s_nProcStack][4][nVar][2] := __MVGET( s_asLocals[nVar] ) - __MVPUT( s_asLocals[nVar], NIL ) // *** Harbour __MXRelease() not working !!! - #else - s_aProcStack[s_nProcStack][4][nVar][2] := &( s_asLocals[nVar] ) - __MXRelease( s_asLocals[nVar] ) - #endif + s_aProcStack[s_nProcStack][4][nVar][2] := &( s_asLocals[nVar] ) + __MXRelease( s_asLocals[nVar] ) //Alert( [Released upper local: ] + s_asLocals[nVar] + [ in ] + s_aProcStack[s_nProcStack][1] ) NEXT aSize( s_asLocals, 0 ) @@ -609,19 +811,24 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) BEGIN SEQUENCE + //TraceLog( "Line: " + Str( aProc[2][nBlock][3], 3 ) ) + IF aProc[2][nBlock][1] == 0 //? aProc[2][nBlock][3] Eval( aProc[2][nBlock][2] ) ELSE IF ! Eval( aProc[2][nBlock][2] ) // Jump if FALSE. nBlock := aProc[2][nBlock][1] + //TraceLog( "Jump: " + Str( aProc[2][nBlock][3], 3 ) ) ENDIF ENDIF RECOVER USING xErr - //IF ValType( xErr ) == 'N' - // PP_ExecProcedure( s_aProcedures[xErr] ) - //ENDIF + IF ValType( xErr ) == 'L' + //TraceLog( "Return" ) + // Return from this procedure requested by PP_SetReturn() + EXIT + ENDIF END SEQUENCE ENDIF NEXT @@ -629,11 +836,7 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) /* Releasing Privates created by the Procedure */ nVars := Len( s_asPrivates ) FOR nVar := 1 TO nVars - #ifdef __HARBOUR__ - __MVPUT( s_asPrivates[nVar], NIL ) - #else - __MXRelease( s_asPrivates[nVar] ) - #endif + __MXRelease( s_asPrivates[nVar] ) //Alert( [Released private: ] + s_asPrivates[nVar] + [ in ] + s_aProcStack[s_nProcStack][1] ) NEXT aSize( s_asPrivates, 0 ) @@ -641,11 +844,7 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) /* Releasing Locals created by the Procedure */ nVars := Len( s_asLocals ) FOR nVar := 1 TO nVars - #ifdef __HARBOUR__ - __MVPUT( s_asLocals[nVar], NIL ) - #else - __MXRelease( s_asLocals[nVar] ) - #endif + __MXRelease( s_asLocals[nVar] ) //Alert( [Released local: ] + s_asLocals[nVar] + [ in ] + s_aProcStack[s_nProcStack][1] ) NEXT aSize( s_asLocals, 0 ) @@ -659,7 +858,7 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) FOR nVar := 1 TO nVars aAdd( s_asPrivates, s_aProcStack[s_nProcStack][3][nVar][1] ) #ifdef __HARBOUR__ - //__QQPub( s_aProcStack[s_nProcStack][3][nVar][1] ) // *** Harbour Var was never released because of bug in __MXRelease() !!! + __QQPub( s_aProcStack[s_nProcStack][3][nVar][1] ) __MVPUT( s_aProcStack[s_nProcStack][3][nVar][1], s_aProcStack[s_nProcStack][3][nVar][2] ) #else __QQPub( s_aProcStack[s_nProcStack][3][nVar][1] ) @@ -672,7 +871,7 @@ FUNCTION PP_ExecProcedure( aProc, sProcName ) FOR nVar := 1 TO nVars aAdd( s_asLocals, s_aProcStack[s_nProcStack][4][nVar][1] ) #ifdef __HARBOUR__ - //__QQPub( s_aProcStack[s_nProcStack][4][nVar][1] ) // *** Harbour Var was never released because of bug in __MXRelease() !!! + __QQPub( s_aProcStack[s_nProcStack][4][nVar][1] ) __MVPUT( s_aProcStack[s_nProcStack][4][nVar][1], s_aProcStack[s_nProcStack][4][nVar][2] ) #else __QQPub( s_aProcStack[s_nProcStack][4][nVar][1] ) @@ -692,30 +891,37 @@ PROCEDURE RP_Dot() LOCAL GetList := {}, sLine := Space(256) LOCAL nDefines, nCommands, nTranslates - LOCAL aCopyDefRules, aCopyDefResults - LOCAL aCopyCommRules, aCopyCommResults - LOCAL aCopyTransRules, aCopyTransResults + LOCAL aCpyDefRules, aCpyDefResults + LOCAL aCpyCommRules, aCpyCommResults + LOCAL aCpyTranRules, aCpyTranResults + + LOCAL aKBCommands := Array( 16 ), nKBCommand := 1, nTemp, bKey5, bKey24 #ifdef FW - Alert( [DOT mode (no filename parameter) is Not ready for GUI yet.] + CRLF + CRLF + [Please try Interpreter mode, using the -R switch...] ) + Alert( [DOT mode (no filename parameter) is Not ready for GUI yet.] + [;;Please try Interpreter mode, using the -R switch...] ) RETURN #endif bCount := .F. - PP_PreProFile( "rp_dot.ch" ) + IF File( "ro_dot.ch" ) + PP_PreProFile( "rp_dot.ch" ) + ELSE + PP_LoadDot() + ENDIF + #ifdef WIN PP_PreProLine( '#COMMAND Alert( ) => MessageBox( 0, CStr( ), "TInterpreter for Windows", 0 )' ) #endif - aCopyDefRules := aClone( aDefRules ) - aCopyDefResults := aClone( aDefResults ) + aCpyDefRules := aClone( aDefRules ) + aCpyDefResults := aClone( aDefResults ) - aCopyCommRules := aClone( aCommRules ) - aCopyCommResults := aClone( aCommResults ) + aCpyCommRules := aClone( aCommRules ) + aCpyCommResults := aClone( aCommResults ) - aCopyTransRules := aClone( aTransRules ) - aCopyTransResults := aClone( aTransResults ) + aCpyTranRules := aClone( aTransRules ) + aCpyTranResults := aClone( aTransResults ) ErrorBlock( {|oErr| RP_Dot_Err( oErr ) } ) @@ -724,28 +930,69 @@ PROCEDURE RP_Dot() @ 0,0 SAY "PP: " @ 0,4 SAY Space( 76 ) COLOR "N/R" + @ 1,0 SAY PadR( "RDD: " + Space( 6 ) + " | Area: " + Space( 2 ) + " | Dbf: " + Space( 10 ) + ; + " | Index: " + Space( 8 ) + " | # " + Space( 7 ) + "/" + Space( 7 ), MaxCol() + 1 ) ; + COLOR "N/BG" + + DevPos( 02, 00 ) + + aFill( aKBCommands, sLine ) DO WHILE .T. + sLine := aKBCommands[ nKBCommand ] + @ MaxRow(), 00 SAY '.' @ MaxRow(), 01 GET sLine PICTURE '@KS79' SET CURSOR ON + + bKey5 := SetKey( 5, { || IIF( nKBCommand > 1, sLine := aKBCommands[ --nKBCommand ], ) } ) + bKey24 := SetKey( 24, { || IIF( nKBCommand < 16, sLine := aKBCommands[ ++nKBCommand ], ) } ) + READ - sLine := StrTran( sLine, Chr(9), " " ) + SetKey( 5, bKey5 ) + SetKey( 24, bKey24 ) + + IF ! sLine == aKBCommands[ nKBCommand ] + IF ( nTemp := aScan( aKBCommands, sLine ) ) == 0 + aKBCommands[ nKBCommand ] := sLine + ENDIF + ENDIF + + IF LastKey() == 27 + aKBCommands[ nKBCommand ] := Space( 256 ) + LOOP + ELSEIF LastKey() == 13 .OR. LastKey() == 24 .OR. LastKey() == 9 + nKBCommand++ + IF nKBCommand > 16 + aDel( aKBCommands, 1 ) + aKBCommands[16] := Space( 256 ) + nKBCommand := 16 + ENDIF + ELSEIF LastKey() == 5 .OR. LastKey() == 271 + nKBCommand-- + ENDIF + + sLine := StrTran( sLine, Chr(9), " " ) ExecuteLine( PP_PreProLine( RTrim( sLine ), 1, '' ) ) //TraceLog( Len( aDefRules ), Len( aCommRules ), Len( aTransRules ) ) + IF s_nRow >= MaxRow() - 1 + Scroll( 2, 0, MaxRow() - 1, MaxCol(), 1 ) + s_nRow := MaxRow() - 2 + ENDIF + IF s_lRunLoaded - aDefRules := aClone( aCopyDefRules ) - aDefResults := aClone( aCopyDefResults ) + aDefRules := aClone( aCpyDefRules ) + aDefResults := aClone( aCpyDefResults ) - aCommRules := aClone( aCopyCommRules ) - aCommResults := aClone( aCopyCommResults ) + aCommRules := aClone( aCpyCommRules ) + aCommResults := aClone( aCpyCommResults ) - aTransRules := aClone( aCopyTransRules ) - aTransResults := aClone( aCopyTransResults ) + aTransRules := aClone( aCpyTranRules ) + aTransResults := aClone( aCpyTranResults ) s_lRunLoaded := .F. s_lClsLoaded := .F. @@ -754,6 +1001,8 @@ PROCEDURE RP_Dot() ENDDO + CLEAR SCREEN + RETURN //--------------------------------------------------------------// @@ -769,7 +1018,7 @@ STATIC PROCEDURE ExecuteLine( sPPed ) @ 0,0 SAY "PP: " @ 0,4 SAY Pad( sPPed, 76 ) COLOR "N/R" - DevPos( nRow, nCol ) + DevPos( s_nRow, s_nCol ) BEGIN SEQUENCE @@ -811,18 +1060,20 @@ STATIC PROCEDURE ExecuteLine( sPPed ) sSymbol = "SETDOCASE" .OR. sSymbol = "SETCASE" .OR. sSymbol = "SETOTHERWISE" .OR. sSymbol = "SETENDCASE" .OR. ; abIf[ nIf ] + @ 0,0 SAY "PP: " + @ 0,4 SAY Pad( sBlock, 76 ) COLOR "N/R" + DevPos( s_nRow, s_nCol ) + + sBlock := "{|| " + sBlock + " }" #ifdef __CLIPPER__ /* Clipper Macro Compiler can't compile nested blocks! */ CompileNestedBlocks( sBlock, @sBlock ) #endif - @ 0,0 SAY "PP: " - @ 0,4 SAY Pad( sBlock, 76 ) COLOR "N/R" - DevPos( nRow, nCol ) + Eval( &sBlock ) - Eval( &( "{|| " + sBlock + " }" ) ) - nRow := Row() - nCol := Col() + s_nRow := Row() + s_nCol := Col() #ifdef __CLIPPER__ nBlockID := 0 @@ -871,32 +1122,45 @@ STATIC PROCEDURE ExecuteLine( sPPed ) sSymbol = "SETDOCASE" .OR. sSymbol = "SETCASE" .OR. sSymbol = "SETOTHERWISE" .OR. sSymbol = "SETENDCASE" .OR. ; abIf[ nIf ] - #ifdef __CLIPPER__ - /* Clipper Macro Compiler can't compile nested blocks! */ - CompileNestedBlocks( sBlock, @sBlock ) - #endif - @ 0,0 SAY "PP: " @ 0,4 SAY Pad( sBlock, 76 ) COLOR "N/R" - DevPos( nRow, nCol ) - - Eval( &( "{|| " + sBlock + " }" ) ) + DevPos( s_nRow, s_nCol ) + sBlock := "{|| " + sBlock + " }" #ifdef __CLIPPER__ - nBlockID := 0 - aSize( s_abBlocks, 0 ) + /* Clipper Macro Compiler can't compile nested blocks! */ + CompileNestedBlocks( sBlock, @sBlock ) + //TraceLog( sBlock ) #endif + + Eval( &sBlock ) ENDIF ENDIF - nRow := Row() - nCol := Col() + s_nRow := Row() + s_nCol := Col() @ 0,0 SAY "PP: " @ 0,4 SAY Pad( sPPed, 76 ) COLOR "N/R" + IF Empty( Alias() ) + @ 1,0 SAY PadR( "RDD: " + Space( 6 ) + " | Area: " + Space( 2 ) + " | Dbf: " + Space( 10 ) + ; + " | Index: " + Space( 8 ) + " | # " + Space( 7 ) + "/" + Space( 7 ), MaxCol() + 1 ) ; + COLOR "N/BG" + ELSE + //@ 1,0 CLEAR TO 1, MaxCol() + @ 1,0 SAY PadR( "RDD: " + RddName() + " | Area: " + Str( Select(), 2 ) + " | Dbf: " + PadR( Alias(), 10 ) + ; + " | Index: " + PadR( OrdName( IndexOrd() ), 8 ) + " | # " + Str( RecNo(), 7 ) + ; + "/" + Str( RecCount(), 7 ), MaxCol() + 1 ); + COLOR "N/BG" + ENDIF END SEQUENCE + #ifdef __CLIPPER__ + nBlockID := 0 + aSize( s_abBlocks, 0 ) + #endif + RETURN //--------------------------------------------------------------// @@ -913,6 +1177,8 @@ FUNCTION PP_CompileLine( sPPed, nLine, aProcedures, aInitExit, nProcId ) ExtractLeadingWS( @sPPed ) DropTrailingWS( @sPPed ) + //TraceLog( sPPed, nLine ) + BEGIN SEQUENCE IF sPPed = "_HB_CLASS" @@ -929,7 +1195,7 @@ FUNCTION PP_CompileLine( sPPed, nLine, aProcedures, aInitExit, nProcId ) ExtractLeadingWS( @sBlock ) DropTrailingWS( @sBlock ) - IF ! ( sBlock == '' ) + IF ! Empty( sBlock ) IF sBlock = "#line" LOOP ENDIF @@ -1582,7 +1848,7 @@ FUNCTION PP_CompileLine( sPPed, nLine, aProcedures, aInitExit, nProcId ) aAdd( aProcedures[ nProcId ][2], { 0, NIL, nLine } ) ELSE //? nLine, nProcId, sBlock - //TraceLog( sBlock ) + //TraceLog( nLine, nProcId, sBlock ) aAdd( aProcedures[ nProcId ][2], { 0, &( "{||" + sBlock + "}" ), nLine } ) ENDIF ENDIF @@ -1686,7 +1952,11 @@ PROCEDURE PP_Privates( aVars ) cInit := "NIL" ENDIF - IF aScan( s_asPrivates, aVars[nVar] ) == 0 + #ifdef __XHARBOUR__ + IF aScan( s_asPrivates, aVars[nVar], , , .T. ) == 0 + #else + IF aScan( s_asPrivates, {|sPrivate| sPrivate == aVars[nVar] } ) == 0 + #endif __QQPUB( aVars[nVar] ) &( aVars[nVar] ) := &( cInit ) aAdd( s_asPrivates, aVars[nVar] ) @@ -1735,7 +2005,11 @@ PROCEDURE PP_Publics( aVars ) cInit := ".F." ENDIF + #ifdef __XHARBOUR__ IF aScan( s_asPublics, aVars[nVar] ) == 0 + #else + IF aScan( s_asPublics, {|sPublic| sPublic == aVars[nVar] } ) == 0 + #endif __QQPUB( aVars[nVar] ) &( aVars[nVar] ) := &( cInit ) aAdd( s_asPublics, aVars[nVar] ) @@ -1765,7 +2039,11 @@ PROCEDURE PP_Statics( aVars ) &( aVars[nVar] ) := &( cInit ) aAdd( s_asStatics, aVars[nVar] ) ELSE - IF aScan( aVars, aVars[nVar], 1, nVar - 1 ) > 0 + #ifdef __XHARBOUR__ + IF aScan( aVars, aVars[nVar], 1, nVar - 1, .T. ) > 0 + #else + IF aScan( aVars, {|sVar| sVar == aVars[nVar] }, 1, nVar - 1 ) > 0 + #endif Alert( [Type: ] + Type( aVars[nVar] ) + [ Static redeclaration: '] + aVars[nVar] ) ENDIF ENDIF @@ -1786,14 +2064,18 @@ PROCEDURE PP_Run( cFile, aParams, sPPOExt, bBlanks ) IF ! s_lRunLoaded s_lRunLoaded := .T. + InitRunRules() InitRunResults() + IF Len( aDefRules ) != Len( aDefResults ) Alert( [Run #DEFINE Rules size mismatch] ) ENDIF + IF Len( aTransRules ) != Len( aTransResults ) Alert( [Run #TRANSLATE Rules size mismatch] ) ENDIF + IF Len( aCommRules ) != Len( aCommResults ) Alert( [Run #DEFINE Rules size mismatch] ) ENDIF @@ -1804,8 +2086,8 @@ PROCEDURE PP_Run( cFile, aParams, sPPOExt, bBlanks ) IF s_sModule == cFile TraceLog( s_aProcedures, s_aInitExit, s_nProcId, aParams ) ELSE - //s_nProcId := 0; s_aProcedures := {}; s_aInitExit := { {}, {} } - //s_asPrivates := {}; s_asPublics := {}; s_asLocals := {}; s_asStatics := {}; s_aParams := {} + s_nProcId := 0; s_aProcedures := {}; s_aInitExit := { {}, {} } + s_asPrivates := {}; s_asPublics := {}; s_asLocals := {}; s_asStatics := {}; s_aParams := {} s_sModule := cFile bCompile := .T. @@ -1831,16 +2113,20 @@ PROCEDURE PP_SetReturn( xRet ) s_xRet := xRet + //TraceLog( xRet ) + + BREAK .T. + RETURN //--------------------------------------------------------------// PROCEDURE RP_Dot_Err( oErr ) - LOCAL Counter, xArg, sArgs := "" + LOCAL Counter, xArg, sArgs := ";" - IF ValType( oErr:Args ) == 'A' - sArgs := " - Arguments: " + IF ValType( oErr:Args ) == 'A' .AND. Len( oErr:Args ) > 0 + sArgs := ";Arguments: " FOR Counter := 1 TO Len( oErr:Args ) xArg := oErr:Args[Counter] @@ -1874,10 +2160,9 @@ PROCEDURE RP_Dot_Err( oErr ) sArgs += '[' + ValType( xArg ) + "]; " ENDCASE NEXT - - sArgs := Left( sArgs, Len( sArgs ) -2 ) ENDIF + TraceLog( [Sorry, could not execute: ] + oErr:Description + sArgs + " " + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') Alert( [Sorry, could not execute: ] + oErr:Description + sArgs + " " + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') BREAK @@ -1888,10 +2173,10 @@ PROCEDURE RP_Dot_Err( oErr ) PROCEDURE RP_PPText_Err( oErr, sLine, nLine ) - LOCAL Counter, xArg, sArgs := "" + LOCAL Counter, xArg, sArgs := ";" - IF ValType( oErr:Args ) == 'A' - sArgs := " - Arguments: " + IF ValType( oErr:Args ) == 'A' .AND. Len( oErr:Args ) > 0 + sArgs := ";Arguments: " FOR Counter := 1 TO Len( oErr:Args ) xArg := oErr:Args[Counter] @@ -1925,12 +2210,10 @@ PROCEDURE RP_PPText_Err( oErr, sLine, nLine ) sArgs += '[' + ValType( xArg ) + "]; " ENDCASE NEXT - - sArgs := Left( sArgs, Len( sArgs ) -2 ) ENDIF - TraceLog( "Line: " + Str( nLine, 4 ) + " could not pre-process text: '" + sLine + "'; " + oErr:Description + sArgs + " " + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') - Alert( [Line: ] + Str( nLine, 4 ) + [ could not compile: ]+"'" + sLine + "'; " + oErr:Description + sArgs + " " + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') + TraceLog( [Line: ] + Str( nLine, 4 ) + [ could not compile: ] + "'" + sLine + "';" + oErr:Description + sArgs + ProcName(2) + '[' + Str( ProcLine(2) ) + ']' ) + Alert( [Line: ] + Str( nLine, 4 ) + [ could not compile: ] + "'" + sLine + "';" + oErr:Description + sArgs + ProcName(2) + '[' + Str( ProcLine(2) ) + ']' ) BREAK @@ -1940,10 +2223,12 @@ PROCEDURE RP_PPText_Err( oErr, sLine, nLine ) PROCEDURE RP_Comp_Err( oErr, sLine, nLine ) - LOCAL Counter, xArg, sArgs := "" + LOCAL Counter, xArg, sArgs := ";" - IF ValType( oErr:Args ) == 'A' - sArgs := "Arguments: " + ErrorBlock( {|e| TraceLog( e:Description, e:SubSystem, e:SubCode, e:Args ), __Quit() } ) + + IF ValType( oErr:Args ) == 'A' .AND. Len( oErr:Args ) > 0 + sArgs := ";Arguments: " FOR Counter := 1 TO Len( oErr:Args ) xArg := oErr:Args[Counter] @@ -1977,12 +2262,10 @@ PROCEDURE RP_Comp_Err( oErr, sLine, nLine ) sArgs += '[' + ValType( xArg ) + "]; " ENDCASE NEXT - - sArgs := Left( sArgs, Len( sArgs ) -2 ) ENDIF - TraceLog( "Line: " + Str( nLine, 4 ) + " could not compile: '" + sLine + "'; '" + oErr:Description + "'; " + sArgs + "; " + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') - Alert( [Line: ] + Str( nLine, 4 ) + [ could not compile: ] + CRLF + "'" + sLine + "'" + CRLF + oErr:Description + CRLF + sArgs + CRLF + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') + TraceLog( [Line: ] + Str( nLine, 4 ) + [ could not compile:] + ";'" + sLine + "';" + oErr:Description + sArgs + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') + Alert( [Line: ] + Str( nLine, 4 ) + [ could not compile:] + ";'" + sLine + "';" + oErr:Description + sArgs + ProcName(2) + '[' + Str( ProcLine(2) ) + ']') BREAK @@ -1990,12 +2273,16 @@ PROCEDURE RP_Comp_Err( oErr, sLine, nLine ) //--------------------------------------------------------------// -FUNCTION RP_Run_Err( oErr, aProcedures ) +FUNCTION RP_Run_Err( oErr, aProcedures, nLine ) - LOCAL Counter, xArg, sArgs := "", nProc, sProc + LOCAL Counter, xArg, sArgs := ";", nProc, sProc - IF ValType( oErr:Args ) == 'A' - sArgs := "Arguments: " + IF nLine == NIL + nLine := 0 + ENDIF + + IF ValType( oErr:Args ) == 'A' .AND. Len( oErr:Args ) > 0 + sArgs := ";Arguments: " FOR Counter := 1 TO Len( oErr:Args ) xArg := oErr:Args[Counter] @@ -2029,8 +2316,6 @@ FUNCTION RP_Run_Err( oErr, aProcedures ) sArgs += '[' + ValType( xArg ) + "]; " ENDCASE NEXT - - sArgs := Left( sArgs, Len( sArgs ) -2 ) ENDIF IF oErr:SubCode == 1001 @@ -2054,32 +2339,37 @@ FUNCTION RP_Run_Err( oErr, aProcedures ) ENDIF PP_ExecProcedure( aProcedures[nProc] ) + IF oErr:CanSubstitute RETURN ( s_xRet ) ELSEIF oErr:CanDefault - Alert( [Must Default: ] + "'" + oErr:Operation + "' '" + oErr:Description + CRLF + ; - sArgs + CRLF + ; - PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ") " + CRLF + ; + Alert( [Must Default: ] + "'" + oErr:Operation + "' '" + oErr:Description + ; + sArgs + ";" + ; + PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ");" + ; ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) + RETURN ( .F. ) ELSE - Alert( [No Recovery for: ] + "'" + oErr:Operation + "' " + oErr:Description + CRLF + ; - sArgs + " " + CRLF + ; - PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ") " + CRLF + ; - ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) - BREAK nProc + Alert( [No Recovery for: ] + "'" + oErr:Operation + "' " + oErr:Description + ; + sArgs + ; + PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ");" + ; + ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) + + oErr:Cargo := nProc + BREAK oErr ENDIF ENDIF ENDIF - TraceLog( s_sModule, "Sorry, R/T Error: [" + oErr:SubSystem + "/" + LTrim( Str( oErr:SubCode ) ) + "] '" + oErr:Operation + "' '" + oErr:Description + "' " + sArgs + " " + PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ") " + ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) - Alert( [R/T Error: ] + "[" + oErr:SubSystem + "/" + LTrim( Str( oErr:SubCode ) ) + "] '" + oErr:Operation + "' " + CRLF + ; - oErr:Description + CRLF + ; - sArgs + CRLF + ; - PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ") " + CRLF + ; + TraceLog( s_sModule, nLine, "Sorry, R/T Error: [" + oErr:SubSystem + "/" + LTrim( Str( oErr:SubCode ) ) + "] '" + oErr:Operation + "' '" + oErr:Description + "' " + sArgs + " " + PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ") " + ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) + //TraceLog( s_sModule, nLine, oErr:Description, oErr:SubSystem, oErr:Operation, sArgs, PP_ProcName() ) + Alert( [Line: ] + Str( nLine ) + [ R/T Error: ] + "[" + oErr:SubSystem + "/" + LTrim( Str( oErr:SubCode ) ) + "] '" + oErr:Operation + "';" + ; + oErr:Description + ; + sArgs + ; + PP_ProcName() + '(' + LTrim( Str( PP_ProcLine() ) ) + ");" + ; ProcName(2) + "(" + LTrim( Str( ProcLine(2) ) ) + ")" ) - - BREAK oErr + //BREAK oErr + __Quit() RETURN NIL // Unreacable code @@ -2226,54 +2516,61 @@ RETURN nIf FUNCTION asBlocks( sBlock, asBlocks ) - LOCAL nStart, nEnd, nPosition, sNested, nOpen, lBlock := .F. + LOCAL nStart := 1, nEnd := Len( sBlock ), nPosition, sNested, nOpen, ; + lBlock := .F., cChar IF asBlocks == NIL asBlocks := {} ENDIF - nStart := At( '{', sBlock ) - IF nStart > 0 - nEnd := Len( sBlock ) + WHILE ( nStart := nAtSkipStr( '{', sBlock, nStart ) ) > 0 FOR nPosition := nStart + 1 TO nEnd IF SubStr( sBlock, nPosition, 1 ) != ' ' EXIT ENDIF NEXT - IF SubStr( sBlock, nPosition, 1 ) == '|' - lBlock := .T. + IF SubStr( sBlock, nPosition, 1 ) != '|' + nStart++ + LOOP ENDIF + nPosition++ nOpen := 1 + DO WHILE nOpen > 0 .AND. nPosition <= nEnd - IF SubStr( sBlock, nPosition, 1 ) == '"' + cChar := SubStr( sBlock, nPosition, 1 ) + + IF cChar == '"' DO WHILE nPosition <= nEnd nPosition++ IF SubStr( sBlock, nPosition, 1 ) == '"' EXIT ENDIF ENDDO - ELSEIF SubStr( sBlock, nPosition, 1 ) == "'" + ELSEIF cChar == "'" DO WHILE nPosition <= nEnd nPosition++ IF SubStr( sBlock, nPosition, 1 ) == "'" EXIT ENDIF ENDDO - ELSEIF SubStr( sBlock, nPosition, 1 ) == '{' + ELSEIF cChar == '{' nOpen++ - ELSEIF SubStr( sBlock, nPosition, 1 ) == '}' + ELSEIF cChar == '}' nOpen-- ENDIF + nPosition++ ENDDO - ENDIF - IF lBlock sNested := SubStr( sBlock, nStart, ( nPosition - nStart ) ) + //TraceLog( asBlocks, sNested ) + aAdd( asBlocks, sNested ) asBlocks( SubStr( sBlock, nPosition + 1 ), asBlocks ) - ENDIF + + nStart := nPosition + ENDDO RETURN asBlocks @@ -2294,7 +2591,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) LOCAL nLen, nMaxPos, cChar := '', nClose, nBase, nNext, nLine := 0 LOCAL sRight, nPath := 0, nPaths := Len( s_asPaths ), nNewLine LOCAL sPath := "", cError, sPrevFile := s_sFile - LOCAL sTmp + LOCAL sTmp, nLastPosition := 0 IF At( '.', sSource ) == 0 sSource += ".prg" @@ -2302,11 +2599,11 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) s_sFile := sSource - hSource := FOpen( sSource, 0 ) + hSource := FOpen( sSource, 64 ) IF hSource == -1 nPath := 1 WHILE hSource == -1 .AND. nPath <= nPaths - hSource := FOpen( s_asPaths[nPath] + sSource, 0 ) + hSource := FOpen( s_asPaths[nPath] + sSource, 64 ) nPath++ ENDDO ENDIF @@ -2327,7 +2624,8 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) ENDIF IF sPPOExt == NIL - hPP := 0 + // *** Intentionally invalid handle - saves us from performing an IF on each of the FWrite( hPP, ... ) + hPP := -1 ELSE sExt := SubStr( sSource, RAt( '.', sSource ) ) IF ! ( sExt == '' ) @@ -2363,8 +2661,6 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) nPosition := 1 nMaxPos := nLen - 1 - //TraceLog( sLine, sBuffer ) - WHILE nPosition < nMaxPos cPrev := cChar @@ -2373,13 +2669,13 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) DO CASE CASE ( cChar == '/' .AND. SubStr( sBuffer, nPosition + 1, 1 ) == '*' ) nPosition++ + WHILE .T. - nClose := At( "*/", SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( "*/", sBuffer, nPosition + 1 ) IF nClose == 0 - nBase := nPosition + 2 - WHILE ( nNext := At( Chr(10), SubStr( sBuffer, nBase ) ) ) > 0 - + nNext := nPosition + 2 + WHILE ( nNext := At( Chr(10), sBuffer, nNext ) ) > 0 nLine++ IF bCount @ Row(), 0 SAY nLine @@ -2388,7 +2684,8 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) IF bBlanks FWrite( hPP, CRLF ) ENDIF - nBase += ( nNext + 1 ) + + nNext++ ENDDO //FSeek( hSource, -1, 1 ) @@ -2397,11 +2694,14 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) Alert( [ERROR! Unterminated '/**/' ] + "[" + Str( ProcLine() ) + "]" ) ENDIF nMaxPos := nLen - 1 + TraceLog( "***" ) nPosition := 0 LOOP ELSE - nBase := nPosition + 1 - WHILE ( nNext := At( Chr(10), SubStr( sBuffer, nBase ) ) ) > 0 .AND. ( nBase + nNext - nPosition ) <= nClose + 1 + nNext := nPosition + 1 + nClose -= nPosition + + WHILE ( nNext := At( Chr(10), sBuffer, nNext ) ) > 0 .AND. ( nNext - nPosition ) <= nClose + 1 nLine++ IF bCount @ Row(), 0 SAY nLine @@ -2409,7 +2709,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) IF bBlanks FWrite( hPP, CRLF ) ENDIF - nBase += ( nNext + 1 ) + nNext++ ENDDO nPosition += ( nClose + 1 ) @@ -2421,7 +2721,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) CASE ( cChar == '/' .AND. SubStr( sBuffer, nPosition + 1, 1 ) == '/' ) nPosition++ WHILE .T. - nClose := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( Chr(10), sBuffer, nPosition + 1 ) IF nClose == 0 //FSeek( hSource, -1, 1 ) @@ -2430,10 +2730,13 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) BREAK "//" ENDIF nMaxPos := nLen - 1 + TraceLog( "***" ) nPosition := 0 LOOP ELSE + nClose -= nPosition nLine++ + IF bCount @ Row(), 0 SAY nLine ENDIF @@ -2483,7 +2786,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) CASE ( cChar == '&' .AND. SubStr( sBuffer, nPosition + 1, 1 ) == '&' ) nPosition++ WHILE .T. - nClose := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( Chr(10), sBuffer, nPosition + 1 ) IF nClose == 0 //FSeek( hSource, -1, 1 ) @@ -2492,9 +2795,11 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) BREAK "&&" ENDIF nMaxPos := nLen - 1 + TraceLog( "***" ) nPosition := 0 LOOP ELSE + nClose -= nPosition nLine++ IF bCount @ Row(), 0 SAY nLine @@ -2521,7 +2826,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) CASE ( cChar == '*' ) IF LTrim( sLine ) == '' WHILE .T. - nClose := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( Chr(10), sBuffer, nPosition + 1 ) IF nClose == 0 //FSeek( hSource, -1, 1 ) @@ -2533,6 +2838,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) nPosition := 1 LOOP ELSE + nClose -= nPosition nLine++ IF bCount @ Row(), 0 SAY nLine @@ -2548,10 +2854,41 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) ENDDO ENDIF + #ifdef __PLATFORM__Linux + CASE ( nLine == 0 .AND. nPosition == 1 .AND. cChar == '#' .AND. SubStr( sBuffer, nPosition + 1, 1 ) == '!' ) + WHILE .T. + nClose := At( Chr(10), sBuffer, nPosition + 1 ) + + IF nClose == 0 + //FSeek( hSource, -1, 1 ) + nLen := FRead( hSource, @sBuffer, PP_BUFFER_SIZE ) + IF nLen < 2 + BREAK "*" + ENDIF + nMaxPos := nLen - 1 + nPosition := 1 + LOOP + ELSE + nClose -= nPosition + nLine++ + IF bCount + @ Row(), 0 SAY nLine + ENDIF + IF bBlanks + FWrite( hPP, CRLF ) + ENDIF + nPosition += ( nClose ) + sLine := '' + cChar := '' + EXIT + ENDIF + ENDDO + #endif + CASE ( cChar == '"' ) WHILE .T. - nClose := At( '"', SubStr( sBuffer, nPosition + 1 ) ) - nNewLine := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( '"', sBuffer, nPosition + 1 ) + nNewLine := At( Chr(10), sBuffer, nPosition + 1 ) IF nNewLine > 0 .AND. ( nClose == 0 .OR. nClose > nNewLine ) EXIT @@ -2565,6 +2902,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) nPosition := 1 LOOP ELSE + nClose -= nPosition sLine += SubStr( sBuffer, nPosition, nClose ) nPosition += ( nClose ) EXIT @@ -2573,8 +2911,8 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) CASE ( cChar == "'" ) WHILE .T. - nClose := At( "'", SubStr( sBuffer, nPosition + 1 ) ) - nNewLine := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( "'", sBuffer, nPosition + 1 ) + nNewLine := At( Chr(10), sBuffer, nPosition + 1 ) IF nNewLine > 0 .AND. ( nClose == 0 .OR. nClose > nNewLine ) EXIT @@ -2588,6 +2926,7 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) nPosition := 1 LOOP ELSE + nClose -= nPosition sLine += SubStr( sBuffer, nPosition, nClose ) nPosition += ( nClose ) EXIT @@ -2602,8 +2941,8 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) ENDIF WHILE .T. - nClose := At( ']', SubStr( sBuffer, nPosition + 1 ) ) - nNewLine := At( Chr(10), SubStr( sBuffer, nPosition + 1 ) ) + nClose := At( ']', sBuffer, nPosition + 1 ) + nNewLine := At( Chr(10), sBuffer, nPosition + 1 ) IF nNewLine > 0 .AND. ( nClose == 0 .OR. nClose > nNewLine ) EXIT @@ -2617,11 +2956,13 @@ FUNCTION PP_PreProFile( sSource, sPPOExt, bBlanks, bDirectivesOnly ) nPosition := 1 LOOP ELSE + nClose -= nPosition sLine += SubStr( sBuffer, nPosition, nClose ) nPosition += ( nClose ) EXIT ENDIF ENDDO + IF nClose > 0 .AND. nClose < nNewLine cChar := ']' ENDIF @@ -2787,6 +3128,9 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) LOCAL sError LOCAL sBackupLine LOCAL sSkipped + LOCAL bArrayPrefix + + //TraceLog( sLine ) IF Left( LTrim( sLine ), 1 ) != '#' nPosition := 0 @@ -2827,6 +3171,7 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) IF nCycles < MAX_CICLES nCycles++ ELSE + TraceLog( "Circularity!", sLine ) Alert( [ERROR! Circularity detected ]+"[" + sSource + "(" + LTrim( Str( nLine ) ) + ")]" ) ? sLine BREAK @@ -2952,14 +3297,13 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) ELSEIF sDirective == Left( "INCLUDE", nLen ) - ExtractLeadingWS( @sLine ) DropTrailingWS( @sLine ) // Strip the "" sLine := SubStr( sLine, 2, Len( sLine ) - 2 ) - IF Upper( sLine ) = "HBCLASS" + IF Upper( sLine ) == "HBCLASS.CH" IF ! s_lClsLoaded s_lClsLoaded := .T. InitClsRules() @@ -2974,7 +3318,9 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) Alert( [Class #DEFINE Rules size mismatch] ) ENDIF ENDIF - ELSEIF Upper( sLine ) = "FIVEWIN" + + #ifdef FW + ELSEIF Upper( sLine ) == "FIVEWIN.CH" IF ! s_lFWLoaded s_lFWLoaded := .T. IF ! s_lClsLoaded @@ -3003,6 +3349,40 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) Alert( [FW #DEFINE Rules size mismatch] ) ENDIF ENDIF + #endif + + #ifdef MINIGUI + ELSEIF Upper( sLine ) == "MINIGUI.CH" + IF ! s_lMiniGUILoaded + s_lMiniGUILoaded := .T. + IF ! s_lClsLoaded + s_lClsLoaded := .T. + InitClsRules() + InitClsResults() + IF Len( aDefRules ) != Len( aDefResults ) + Alert( [Class #DEFINE Rules size mismatch] ) + ENDIF + IF Len( aTransRules ) != Len( aTransResults ) + Alert( [Class #TRANSLATE Rules size mismatch] ) + ENDIF + IF Len( aCommRules ) != Len( aCommResults ) + Alert( [Class #DEFINE Rules size mismatch] ) + ENDIF + ENDIF + InitMiniGUIRules() + InitMiniGUIResults() + IF Len( aDefRules ) != Len( aDefResults ) + Alert( [MiniGUI #DEFINE Rules size mismatch] ) + ENDIF + IF Len( aTransRules ) != Len( aTransResults ) + Alert( [MiniGUI #TRANSLATE Rules size mismatch] ) + ENDIF + IF Len( aCommRules ) != Len( aCommResults ) + Alert( [MiniGUI #DEFINE Rules size mismatch] ) + ENDIF + ENDIF + #endif + ELSE PP_PreProFile( sLine ) // Intentionally not using s_sIncludeFile @@ -3069,6 +3449,13 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) sPassed += sSkipped + // Save incase MatchRule fails. + #ifdef USE_C_BOOST + bArrayPrefix := GetArrayPrefix() + #else + bArrayPrefix := s_bArrayPrefix + #endif + IF ( nRule := MatchRule( sToken, @sLine, aDefRules, aDefResults, .F., .F. ) ) > 0 //? "DEFINED: " + sLine //WAIT @@ -3086,11 +3473,19 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) aIns( aPendingLines, nPosition ) aPendingLines[ nPosition ] := Left( sLine, nNewLineAt - 1 ) + IF Left( sLine, 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, aPendingLines[ nPosition ] ) + ENDIF + //? "Pending #", nPendingLines, Left( sLine, nNewLineAt - 1 ), aPendingLines[nPendingLines] sLine := LTrim( SubStr( sLine, nNewLineAt + 1 ) ) ENDDO IF nPosition == 0 + IF Left( sLine, 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, sLine ) + ENDIF + sLine := sLeft + sPassed + sLine ELSE IF ! Empty( sLine ) @@ -3112,6 +3507,13 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) // Re-Reprocess the line ... BREAK + ELSE + // Restore since MatchRule() faild. + #ifdef USE_C_BOOST + SetArrayPrefix( bArrayPrefix ) + #else + s_bArrayPrefix := bArrayPrefix + #endif ENDIF sPassed += sToken @@ -3126,6 +3528,14 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) DO WHILE ( sToken := NextToken( @sLine ) ) != NIL //? "Token = '" + sToken + "'" //WAIT + + // Save incase MatchRule fails. + #ifdef USE_C_BOOST + bArrayPrefix := GetArrayPrefix() + #else + bArrayPrefix := s_bArrayPrefix + #endif + IF ( nRule := MatchRule( sToken, @sLine, aTransRules, aTransResults, .F., .T. ) ) > 0 //? "TRANSLATED: " + sLine //WAIT @@ -3136,7 +3546,6 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) aAdd( aTranslated, nRule ) ENDIF - nPosition := 0 WHILE ( nNewLineAt := nAtSkipStr( ';', sLine ) ) > 0 nPendingLines++ @@ -3148,11 +3557,19 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) aIns( aPendingLines, nPosition ) aPendingLines[ nPosition ] := Left( sLine, nNewLineAt - 1 ) + IF Left( aPendingLines[ nPosition ], 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, aPendingLines[ nPosition ] ) + ENDIF + //? "Pending #", nPendingLines, Left( sLine, nNewLineAt - 1 ), aPendingLines[nPendingLines] sLine := SubStr( sLine, nNewLineAt + 1 ) ENDDO IF nPosition == 0 + IF Left( sLine, 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, sLine ) + ENDIF + sLine := sLeft + sPassed + sLine ELSE IF ! Empty( sLine ) @@ -3172,6 +3589,13 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) ENDIF BREAK + ELSE + // Restore since MatchRule() faild. + #ifdef USE_C_BOOST + SetArrayPrefix( bArrayPrefix ) + #else + s_bArrayPrefix := bArrayPrefix + #endif ENDIF sPassed += sToken @@ -3206,11 +3630,19 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) aIns( aPendingLines, nPosition ) aPendingLines[ nPosition ] := Left( sLine, nNewLineAt - 1 ) + IF Left( aPendingLines[ nPosition ], 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, aPendingLines[ nPosition ] ) + ENDIF + //? "Pending #", nPendingLines, Left( sLine, nNewLineAt - 1 ), aPendingLines[nPosition] sLine := LTrim( SubStr( sLine, nNewLineAt + 1 ) ) ENDDO IF nPosition == 0 + IF Left( sLine, 1 ) == '#' .AND. ! bCompile + aAdd( asOutLines, sLine ) + ENDIF + sLine := sLeft + sLine ELSE IF ! Empty( sLine ) @@ -3272,6 +3704,7 @@ FUNCTION PP_PreProLine( sLine, nLine, sSource ) IF ! Empty( sOut ) //? "Returning: " + sOut //WAIT + //TraceLog( sOut ) ENDIF IF bCompile @@ -3292,6 +3725,7 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) LOCAL nSpaceAt, sStopLine, sNextStopper, nTemp LOCAL bRepeatableMatched LOCAL aaRevertMarkers := {} + LOCAL nBackup, nLevel, bTestDependant nRules := Len( aRules ) @@ -3421,11 +3855,11 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) IF aMP[2] > 0 .AND. nMatch < nMatches /* Skip all same level optionals to next group. */ - nOptional := aMP[2] + nOptional := Abs( aMP[2] ) nMatch++ WHILE nMatch <= nMatches aMP := aRules[nRule][2][nMatch] - IF ( aMP[2] >= 0 ) .AND. ( aMP[2] <= Abs( nOptional ) ) + IF ( aMP[2] >= 0 ) .AND. ( aMP[2] <= nOptional ) EXIT ENDIF nMatch++ @@ -3520,21 +3954,21 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) sWorkLine := sStopLine /* Current level */ - nOptional := aMP[2] - IF nOptional < 0 - nOptional := Abs( nOptional ) - ENDIF + nOptional := Abs( aMP[2] ) /* Commented out 07-21-2001 Seems unneeded. */ #ifdef WHY_REWIND /* Rewind to beging of same level and then search for the stopper match */ WHILE nMatch > 1 nMatch-- - IF aRules[nRule][2][nMatch][2] >= 0 .AND. aRules[nRule][2][nMatch][2] < nOPtional + IF Abs( aRules[nRule][2][nMatch][2] ) < nOPtional + nMatch++ EXIT ENDIF ENDDO - IF aRules[nRule][2][nMatch][2] >= 0 .AND. aRules[nRule][2][nMatch][2] < nOPtional + + // Added June-1-2003 (yes I know it's a commented section.) + IF nMatch == 1 .AND. aRules[nRule][2][nMatch][2] == 0 nMatch++ ENDIF #endif @@ -3545,7 +3979,11 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) aMP := aRules[nRule][2][nMatch] IF aMP[3] == NIL .AND. aMP[4] == ':' + #ifdef __XHARBOUR__ + IF aScan( aMP[5], sMultiStopper, , , .T. ) > 0 + #else IF aScan( aMP[5], {|sWord| sWord == sMultiStopper } ) > 0 + #endif EXIT ENDIF ELSE @@ -3694,6 +4132,102 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) ENDIF ENDIF + // *** This complete IF section added 2002-May-11, the bug this solved might be fixed otherwise *** + // EOL - Rule will match if rest is OPTIONAL. + IF Empty( sWorkLine ) + IF bDbgMatch + ? "End of Input." + ENDIF + + // Remainder may be optional. + nBackup := nMatch + bTestDependant := .T. + nTemp := Abs( aMP[2] ) + WHILE ++nMatch <= nMatches + nLevel := aRules[nRule][2][nMatch][2] + + // Non Optional. + IF nLevel == 0 + EXIT + ELSEIF nLevel > 0 .AND. nLevel <= nTemp + // Head of New Adjucent or Outer group - Adjust stop condition... + nTemp := nLevel + bTestDependant := .F. + LOOP + ELSEIF nLevel < 0 .AND. ( ( ( - nLevel ) < nTemp ) .OR. ( bTestDependant .AND. ( ( - nLevel ) == nTemp ) ) ) + EXIT + ENDIF + ENDDO + + IF bDbgMatch + ? "Skipped optionals to:", nMatch, "of:", nMatches + WAIT + ENDIF + + IF nMatch > nMatches + sLine := ( PPOut( aResults[nRule], aMarkers ) + sPad + sWorkLine ) + IF bDbgMatch + ? "Skipped optionals and TRANSLATED to:", sLine + WAIT + ENDIF + RETURN nRule + ELSE + // Must consider this match a failure because End of input but NOT end of rule - REVERT if OPTIONAL. + IF aMP[2] <> 0 + nMatch := nBackup + + /* Skip all same level optionals to next group. */ + nTemp := Abs( aMP[2] ) + WHILE nMatch < nMatches + nMatch++ + aMP := aRules[nRule][2][nMatch] + IF ( aMP[2] < 0 ) .AND. ( Abs( aMP[2] ) < nTemp ) + EXIT + ENDIF + IF ( aMP[2] >= 0 ) .AND. ( aMP[2] <= nTemp ) + EXIT + ENDIF + ENDDO + + IF bDbgMatch + ? "Skipped same level to:", nMatch + ENDIF + + // Because will LOOP + //nMatch-- + + /* Revert. */ + IF nOptional <> 0 /*.AND. aMP[2] < 0*/ .AND. asRevert[Abs(nOptional)] != NIL + sWorkLine := asRevert[Abs(nOptional)] + aMarkers := aaRevertMarkers[Abs(nOptional)] + + IF bDbgMatch + ? "* Reverted: " + asRevert[Abs(nOptional)] + WAIT + ENDIF + ELSE + sWorkLine := sPreMatch + IF bDbgMatch + ? "*** Reclaimed token/marker: " + sWorkLine + WAIT + ENDIF + ENDIF + + LOOP + ELSE + IF bDbgMatch + ? "*** Match Failed - Not Revertable and Not End of Rule, but End of Input ***" + WAIT + ENDIF + + bNext := .T. + EXIT + ENDIF + + ENDIF + + ENDIF + IF aMP[2] <> 0 IF bDbgMatch ? "Optional" @@ -3703,37 +4237,25 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) IF nMatch == nMatches .OR. ( aRules[nRule][2][nMatch + 1][2] >= 0 .AND. aRules[nRule][2][nMatch + 1][2] <= Abs( aMP[2] ) ) .OR. ; ( aRules[nRule][2][nMatch + 1][2] < 0 .AND. abs( aRules[nRule][2][nMatch + 1][2] ) < Abs( aMP[2] ) ) - // EOL - Rule will match if rest is OPTIONAL. - IF Empty( sWorkLine ) - IF bDbgMatch - ? "EOL exiting." - ENDIF - - IF ++nMatch <= nMatches - aMP := aRules[nRule][2][nMatch] - sPreMatch := "" - ENDIF - - EXIT - ENDIF - /* Current level */ - nOptional := aMP[2] - IF Len( asRevert ) >= Abs( nOptional ) - asRevert[ Abs( nOptional ) ] := NIL + nOptional := Abs( aMP[2] ) + + IF Len( asRevert ) >= nOptional + asRevert[ nOptional ] := NIL ENDIF - IF nOptional < 0 - nOptional := Abs( nOptional ) + IF nMatch > 1 + // Now rewind. + WHILE nMatch > 1 + nMatch-- + IF Abs( aRules[nRule][2][nMatch][2] ) < nOPtional + nMatch++ + EXIT + ENDIF + ENDDO ENDIF - - WHILE nMatch > 1 - nMatch-- - IF /*aRules[nRule][2][nMatch][2] >= 0 .AND.*/ Abs( aRules[nRule][2][nMatch][2] ) < nOPtional - EXIT - ENDIF - ENDDO - IF nMatch == 0 .OR. ( /*aRules[nRule][2][nMatch][2] >= 0 .AND.*/ Abs( aRules[nRule][2][nMatch][2] ) < nOPtional ) + // Added June-1-2003 + IF nMatch == 1 .AND. aRules[nRule][2][nMatch][2] == 0 nMatch++ ENDIF @@ -3790,6 +4312,7 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) ? "NO MATCH:", nMatch, "of", nMatches, sAnchor, sToken, nMarkerId, xMarker, nOptional, aMP[2] ENDIF + // Optional IF aMP[2] <> 0 /* Revert. */ IF nOptional <> 0 .AND. aMP[2] < 0 .AND. asRevert[Abs(nOptional)] != NIL @@ -3818,9 +4341,36 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) */ ENDIF + // TODO: rethink this! Should only match if failure becuase we ran out of input and OPTIONAL. ??? + /* Optional (last) didn't match - Rule can still match. */ IF nMatch == nMatches IF bStatement .AND. ! Empty( sWorkLine ) + /* Top of nested optional. */ + IF aMP[2] > 1 + /* Upper level optional should be accepted - rewind to top of parent group. */ + nOptional-- + WHILE nMatch > 1 + nMatch-- + IF Abs( aRules[nRule][2][nMatch][2] ) < nOPtional + nMatch++ + EXIT + ENDIF + ENDDO + // Added June-1-2003 + IF nMatch == 1 .AND. aRules[nRule][2][nMatch][2] == 0 + nMatch++ + ENDIF + + nOptional := 0 + + IF bDbgMatch + ? "1 - Nested last optional, Rewinded to:", nMatch + ENDIF + + LOOP + ENDIF + bNext := .T. IF bDbgMatch @@ -3841,51 +4391,61 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) ENDIF RETURN nRule ELSE - /* Nested optional, maybe last in its group. */ + /* Top of Nested optional, maybe last in its parrent group. */ IF aMP[2] > 1 - nTemp := aMP[2] /* Skip dependents and nested optionals, if any. */ + nTemp := aMP[2] nMatch++ - WHILE nMatch < nMatches .AND. ( ( aRules[nRule][2][nMatch][2] < 0 .AND. Abs( aRules[nRule][2][nMatch][2] ) == nTemp ).OR. aRules[nRule][2][nMatch][2] > nTemp ) + WHILE ( nMatch <= nMatches ) .AND. ( Abs( aRules[nRule][2][nMatch][2] ) >= nTemp ) nMatch++ ENDDO - nMatch-- - IF aRules[nRule][2][nMatch + 1][2] > 0 .AND. aRules[nRule][2][nMatch + 1][2] < nTemp + // End of rule or reached end of parrent group. + IF nMatch > nMatches .OR. aRules[nRule][2][nMatch][2] >= 0 .OR. nTemp + aRules[nRule][2][nMatch][2] > 1 /* Upper level optional should be accepted - rewind to top of parent group. */ nOptional-- - WHILE nMatch > 1 nMatch-- - IF aRules[nRule][2][nMatch][2] == 0 .OR. ( aRules[nRule][2][nMatch][2] > 0 .AND. aRules[nRule][2][nMatch][2] < nOPtional ) + IF Abs( aRules[nRule][2][nMatch][2] ) < nOPtional + nMatch++ EXIT ENDIF ENDDO - IF nMatch == 0 .OR. ( aRules[nRule][2][nMatch][2] == 0 .OR. ( aRules[nRule][2][nMatch][2] > 0 .AND. aRules[nRule][2][nMatch][2] < nOptional ) ) + // Added June-1-2003 + IF nMatch == 1 .AND. aRules[nRule][2][nMatch][2] == 0 nMatch++ ENDIF nOptional := 0 IF bDbgMatch - ? "Nested last optional, Rewinded to:", nMatch + ? "2 - Nested last optional, Rewinded to:", nMatch ENDIF LOOP + ELSEIF aRules[nRule][2][nMatch][2] < 0 + // More optionals of the upper level - try to continue matching. + IF bDbgMatch + ? "Resuming optionals of upper group at match:", nMatch + ENDIF + + LOOP + ELSE + // Will proceed below (skip to next group) ... ENDIF ENDIF /* Skip all same level optionals to next group. */ - nOptional := aMP[2] + nOptional := Abs( aMP[2] ) bRepeatableMatched := aMP[1] > 1000 .AND. aMarkers[ aMP[1] - 1000 ] != NIL //.AND. Len( aMarkers[ aMP[1] - 1000 ] ) > 0 WHILE nMatch < nMatches nMatch++ aMP := aRules[nRule][2][nMatch] - IF ( aMP[2] < 0 ) .AND. ( Abs( aMP[2] ) < Abs( nOptional ) ) + IF ( aMP[2] < 0 ) .AND. ( Abs( aMP[2] ) < nOptional ) EXIT ENDIF - IF ( aMP[2] >= 0 ) .AND. ( aMP[2] <= Abs( nOptional ) ) + IF ( aMP[2] >= 0 ) .AND. ( aMP[2] <= nOptional ) EXIT ENDIF ENDDO @@ -3893,7 +4453,7 @@ STATIC FUNCTION MatchRule( sKey, sLine, aRules, aResults, bStatement, bUpper ) // We should NOT consider this a failure, continue matching... IF bRepeatableMatched IF bDbgMatch - ? "Repeatable Matched - Skipped to", nMatch, "of", nMatches, aMP[2], aMP[3], nOptional + ? "Repeatable previously Matched - Skipped to", nMatch, "of", nMatches, aMP[2], aMP[3], nOptional ENDIF nOptional := aMP[2] @@ -4056,8 +4616,9 @@ STATIC FUNCTION NextToken( sLine, lDontRecord ) LOCAL sReturn, Counter, nLen, nClose LOCAL s1, s2, s3 LOCAL sDigits + LOCAL sToken - //TRaceLog( sLine, lDontRecord ) + //TraceLog( sLine, lDontRecord ) IF Empty( sLine ) RETURN NIL @@ -4079,7 +4640,7 @@ STATIC FUNCTION NextToken( sLine, lDontRecord ) s2 := Left( sLine, 2 ) - IF s2 $ "++\--\->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=\??" + IF s2 $ "++\--\->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=" sReturn := s2 @@ -4202,24 +4763,24 @@ STATIC FUNCTION NextToken( sLine, lDontRecord ) ELSEIF s1 == '"' - nClose := AT( '"', SubStr( sLine, 2 ) ) + nClose := AT( '"', sLine, 2 ) IF nClose == 0 //Alert( 'ERROR! [NextToken()] Unterminated ["] at: ' + sLine ) sReturn := '"' ELSE - sReturn := Left( sLine, nClose + 1 ) + sReturn := Left( sLine, nClose ) ENDIF BREAK ELSEIF s1 == "'" - nClose := AT( "'", SubStr( sLine, 2 ) ) + nClose := AT( "'", sLine, 2 ) IF nClose == 0 //Alert( "ERROR! [NextToken()] Unterminated ['] at: " + sLine ) sReturn := "'" ELSE - sReturn := SubStr( sLine, 2, nClose - 1 ) + sReturn := SubStr( sLine, 2, nClose - 2 ) IF ! ( '"' $ sReturn ) sReturn := '"' + sReturn + '"' ELSE @@ -4276,12 +4837,22 @@ STATIC FUNCTION NextToken( sLine, lDontRecord ) sLine := SubStr( sLine, Len( sReturn ) + 1 ) - IF lDontRecord != .T. + IF lDontRecord == .F. IF Left( sReturn, 1 ) == '.' .AND. Len( sReturn ) > 1 .AND. Right( sReturn, 1 ) == '.' s_bArrayPrefix := .F. ELSE s1 := Right( sReturn, 1 ) - s_bArrayPrefix := ( IsAlpha( s1 ) .OR. IsDigit( s1 ) .OR. s1 $ "])}._" ) + + IF Upper( s1 ) == 'R' + sToken := Upper( sReturn ) + IF sToken == "RETU" .OR. sToken == "RETUR" .OR. sToken == "RETURN" + s_bArrayPrefix := .F. + ELSE + s_bArrayPrefix := .T. + ENDIF + ELSE + s_bArrayPrefix := ( IsAlpha( s1 ) .OR. IsDigit( s1 ) .OR. s1 $ "])}._" ) + ENDIF ENDIF ENDIF @@ -4306,7 +4877,7 @@ STATIC FUNCTION NextToken( sLine, lDontRecord ) #endif - //TraceLog( "TOKEN = '" + sReturn, sLine, s_bArrayPrefix ) + //TraceLog( "TOKEN = >" + sReturn + "<", sLine, s_bArrayPrefix ) RETURN sReturn @@ -4411,21 +4982,24 @@ STATIC FUNCTION NextExp( sLine, cType, aWords, sNextAnchor, bX ) //? "EXP <*>: " + sExp RETURN sExp - CASE cType == '(' .AND. Left( sLine, 1 ) != '(' - nSpaceAt := At( ' ', sLine ) + CASE cType == '(' + s1 := Left( sLine, 1 ) + IF ! ( s1 $ "(['" + '"' ) + nSpaceAt := At( ' ', sLine ) - IF nSpaceAt = 0 - sExp := sLine - sLine := "" - ELSE - sExp := Left( sLine, nSpaceAt - 1 ) - sLine := SubStr( sLine, nSpaceAt ) - sExp += ExtractLeadingWS( @sLine ) + IF nSpaceAt = 0 + sExp := sLine + sLine := "" + ELSE + sExp := Left( sLine, nSpaceAt - 1 ) + sLine := SubStr( sLine, nSpaceAt ) + sExp += ExtractLeadingWS( @sLine ) + ENDIF + + //? "EXP <(>: " + sExp + RETURN sExp ENDIF - //? "EXP <(>: " + sExp - RETURN sExp - CASE cType == '!' IF IsAlpha( cChar := Left( sLine, 1 ) ) .OR. cChar == '_' RETURN NextToken( @sLine ) @@ -4759,7 +5333,7 @@ STATIC FUNCTION NextExp( sLine, cType, aWords, sNextAnchor, bX ) IF s2 $ '++\--' sExp += sToken LOOP - ELSEIF s2 $ "->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=\??" + ELSEIF s2 $ "->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=" sLine := sToken + sLine EXIT ELSE @@ -5031,10 +5605,11 @@ STATIC FUNCTION PPOut( aResults, aMarkers ) FOR Counter := 1 TO nResults - IF bDbgPPO - ? Counter, "of:", nResults, sResult, nGroupStart, nRepeats - WAIT - ENDIF + IF bDbgPPO + ? sResult + ? Counter, "of:", nResults, nGroupStart, nRepeats + WAIT + ENDIF /* Normal mode. */ IF nRepeats == 0 @@ -5057,16 +5632,6 @@ STATIC FUNCTION PPOut( aResults, aMarkers ) bBuildList := .T. ENDIF - #ifdef z - IF aMarkers[ nDependee ] == NIL - nRepeats := 0 - ELSE - nRepeats := Len( aMarkers[ nDependee ] ) - anMarkers := {} - bBuildList := .T. - ENDIF - #endif - IF bDbgPPO ? Counter, nDependee, aMarkers, ValType( aMarkers ), nRepeats WAIT @@ -5138,6 +5703,42 @@ STATIC FUNCTION PPOut( aResults, aMarkers ) //ENDIF ELSE sResult += aResults[1][Counter][2] + + IF nRepeats > 1 .AND. Counter == nResults + nRepeats-- + Counter := nGroupStart - 1 + + bBuildList := .F. + + nMarkers := Len( anMarkers ) + FOR nMarker := 1 TO nMarkers + // Clipper does not remove optional nested repeatable which only has single value if main repeatable has more values. + IF ValType( aMarkers[ anMarkers[nMarker] ] ) == 'A' .AND. ( Len( aBackup[ anMarkers[1] ] ) = 1 .OR. Len( aMarkers[ anMarkers[nMarker] ] ) > 1 ) + IF bDbgPPO + ? nMarker, "- Removing Repeatable", aMarkers[ anMarkers[nMarker] ][1] + WAIT + ENDIF + aDel( aMarkers[ anMarkers[nMarker] ], 1 ) + aSize( aMarkers[ anMarkers[nMarker] ], nRepeats ) + ELSE + IF bDbgPPO + ? nMarker, Len( aBackup[ anMarkers[1] ] ), Len( aMarkers[ anMarkers[nMarker] ] ),"Removed Repeatable" + WAIT + ENDIF + ENDIF + NEXT + + IF bDbgPPO + ? "END - Looping: ", Counter, nMarker, nGroupStart, nRepeats + WAIT + ENDIF + ENDIF + + IF bDbgPPO + ? "Bottom: ", Counter, nMarker, nGroupStart, nRepeats + WAIT + ENDIF + LOOP ENDIF ELSE @@ -5148,12 +5749,12 @@ STATIC FUNCTION PPOut( aResults, aMarkers ) FOR nMarker := 1 TO nMarkers // Clipper does not remove optional nested repeatable which only has single value if main repeatable has more values. IF ValType( aMarkers[ anMarkers[nMarker] ] ) == 'A' .AND. Len( aMarkers[ anMarkers[nMarker] ] ) > 1 - aDel( aMarkers[ anMarkers[nMarker] ], 1 ) - aSize( aMarkers[ anMarkers[nMarker] ], nRepeats ) IF bDbgPPO - ? nMarker, "Removed Repeatable" + ? nMarker, "+ Removing Repeatable", aMarkers[ anMarkers[nMarker] ][1] WAIT ENDIF + aDel( aMarkers[ anMarkers[nMarker] ], 1 ) + aSize( aMarkers[ anMarkers[nMarker] ], nRepeats ) ELSE IF bDbgPPO ? nMarker, "Removed Repeatable skipped" @@ -5179,7 +5780,7 @@ STATIC FUNCTION PPOut( aResults, aMarkers ) // Restore for possible re-use. aMarkers := aClone( aBackup ) - /* Recheck this item in "normal" mode. */ + /* Recheck this item in "normal" mode. */ Counter-- LOOP ENDIF @@ -5430,6 +6031,10 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) LOCAL sRuleCopy := sRule LOCAL nLastOptional, nPending LOCAL sDots + LOCAL nMarkerID + LOCAL nTempMP + LOCAL nTokenLen + /* nMarkerID nOPTIONAL @@ -5460,16 +6065,30 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) aRule := { sKey, {}, bX } - nNext := At( "=>", sRule ) + #ifdef __XHARBOUR__ + HB_AtX( "(^|[^\\])= *>", sRule, , @nNext, @nTokenLen ) + #else + nNext := 0 + DO WHILE ( nNext := At( "=>", sRule, nNext + 1 ) ) > 0 + IF ! SubStr( sRule, nNext - 1, 1 ) == '\' + EXIT + ENDIF + ENDDO + + nTokenLen := 2 + #endif + IF nNext == 0 Alert( [ERROR! Invalid translation format: ] + sRule ) RETURN .F. ELSE - sResult := SubStr( sRule, nNext + 2 ) + sResult := SubStr( sRule, nNext + nTokenLen ) ExtractLeadingWS( @sResult ) sRule := Left( sRule, nNext - 1 ) ENDIF + //TraceLog( sRule, sResult ) + DO WHILE ! ( Left( sRule, 1 ) == '' ) //? "Scaning: " + sRule @@ -5508,7 +6127,7 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ENDIF IF nLen >= 2 - IF s2 $ "++\--\->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=\??" + IF s2 $ "++\--\->\:=\==\!=\<>\>=\<=\+=\-=\*=\^=\**\/=\%=" sTemp := s2 BREAK ENDIF @@ -5517,7 +6136,7 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) IF nLen >= 1 IF s1 == '\' sTemp := SubStr( sRule, 2, 1 ) - sRule := SubStr( sRule, 2 ) + sRule := SubStr( sRule, 2 ) BREAK ELSEIF s1 == '_' .OR. IsAlpha( s1 ) sTemp := Upper( RTrim( NextToken( sRule ) ) ) // Not by refernce because of SubStr() below!!! @@ -5539,6 +6158,8 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) END SEQUENCE + //TraceLog( sTemp ) + IF sTemp != NIL IF ! ( sAnchor == NIL ) //TraceLog( "ORPHAN ANCHOR: " + sAnchor ) @@ -5562,7 +6183,8 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ENDIF IF s1 == '<' - nId++ + //nId++ + nId := Len( aMarkers ) + 1 /* Skip trailing spaces...*/ sRule := SubStr( sRule, 2 ) @@ -5576,9 +6198,18 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ExtractLeadingWS( @sRule ) nNext := At( '*', sRule ) + IF nNext > 1 - sMarker := Left( sRule, nNext - 1 ) - aAdd( aMarkers, RTrim( sMarker ) ) + sMarker := RTrim( Left( sRule, nNext - 1 ) ) + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF sRule := SubStr( sRule, nNext + 1 ) ExtractLeadingWS( @sRule ) @@ -5614,8 +6245,17 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) nNext := At( ')', sRule ) IF nNext > 1 - sMarker := Left( sRule, nNext - 1 ) - aAdd( aMarkers, RTrim( sMarker ) ) + sMarker := RTrim( Left( sRule, nNext - 1 ) ) + + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF sRule := SubStr( sRule, nNext + 1 ) ExtractLeadingWS( @sRule ) @@ -5651,8 +6291,17 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) nNext := At( '!', sRule ) IF nNext > 1 - sMarker := Left( sRule, nNext - 1 ) - aAdd( aMarkers, RTrim( sMarker ) ) + sMarker := RTrim( Left( sRule, nNext - 1 ) ) + + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF sRule := SubStr( sRule, nNext + 1 ) ExtractLeadingWS( @sRule ) @@ -5713,9 +6362,19 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) //? "Extended: '" + sRule + "'" cType := 'A' - sMarker := Left( sRule, nNext - 1 ) + sMarker := RTrim( Left( sRule, nNext - 1 ) ) ExtractLeadingWS( @sMarker ) - aAdd( aMarkers, sMarker ) + + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF + sRule := sDots nNext := 0 @@ -5728,9 +6387,18 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) cType := ':' //? "LIST" - sMarker := Left( sRule, nNext - 1 ) + sMarker := RTrim( Left( sRule, nNext - 1 ) ) ExtractLeadingWS( @sMarker ) - aAdd( aMarkers, sMarker ) + + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF sRule := SubStr( sRule, nNext + 1 ) ExtractLeadingWS( @sRule ) @@ -5764,9 +6432,18 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ENDIF IF Len( aMarkers ) < nId - sMarker := Left( sRule, nCloseAt - 1 ) + sMarker := RTrim( Left( sRule, nCloseAt - 1 ) ) ExtractLeadingWS( @sMarker ) - aAdd( aMarkers, sMarker ) + + #ifdef __XHARBOUR__ + IF ( nMarkerID := aScan( aMarkers, sMarker, , , .T. ) ) > 0 + #else + IF ( nMarkerID := aScan( aMarkers, {|s| s == sMarker } ) ) > 0 + #endif + nId := nMarkerID + ELSE + aAdd( aMarkers, sMarker ) + ENDIF ENDIF sRule := SubStr( sRule, nCloseAt + 1 ) @@ -5917,47 +6594,40 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) DO WHILE ! ( sResult == '' ) nOffset := 0 nOptionalAt := At( '[', sResult ) - WHILE nOPtionalAt > 1 .AND. SubStr( sResult, nOffset + nOptionalAt - 1, 1 ) == '\' - nOffset += nOptionalAt - nOptionalAt := At( '[', SubStr( sResult, nOffset + 1 ) ) + WHILE nOPtionalAt > 1 .AND. SubStr( sResult, nOptionalAt - 1, 1 ) == '\' + nOffset := nOptionalAt + nOptionalAt := At( '[', sResult, nOffset + 1 ) ENDDO - IF nOptionalAt > 0 - nOptionalAt += nOffset - ENDIF nOffset := 0 IF nOptionalAt == 0 nMarkerAt := At( '<', sResult ) WHILE nMarkerAt > 0 - IF nMarkerAt > 1 .AND. SubStr( sResult, nOffset + nMarkerAt - 1, 1 ) == '\' - nOffset += nMarkerAt - nMarkerAt := At( '<', SubStr( sResult, nOffset + 1 ) ) - ELSEIF nMarkerAt > 0 .AND. SubStr( sResult, nOffset + nMarkerAt + 1, 1 ) $ ">=" // ignore <= and <> - nOffset += nMarkerAt + 1 - nMarkerAt := At( '<', SubStr( sResult, nOffset + 1 ) ) + IF nMarkerAt > 1 .AND. SubStr( sResult, nMarkerAt - 1, 1 ) == '\' + nOffset := nMarkerAt + nMarkerAt := At( '<', sResult, nOffset + 1 ) + //TraceLog( sResult, nOffset, nMarkerAt ) + ELSEIF nMarkerAt > 0 .AND. SubStr( sResult, nMarkerAt + 1, 1 ) $ ">=" // ignore <= and <> + nOffset := nMarkerAt + 1 + nMarkerAt := At( '<', sResult, nOffset + 1 ) ELSE EXIT ENDIF ENDDO - IF nMarkerAt > 0 - nMarkerAt += nOffset - ENDIF ELSE nMarkerAt := At( '<', sResult ) WHILE nMarkerAt > 0 - IF nMarkerAt > 1 .AND. nOffset + nMarkerAt < nOptionalAt .AND. SubStr( sResult, nOffset + nMarkerAt - 1, 1 ) == '\' - nOffset += nMarkerAt - nMarkerAt := At( '<', SubStr( sResult, nOffset + 1 ) ) - ELSEIF nMarkerAt > 0 .AND. nOffset + nMarkerAt < nOptionalAt .AND. SubStr( sResult, nOffset + nMarkerAt + 1, 1 ) $ ">=" // ignore <= and <> - nOffset += nMarkerAt + 1 - nMarkerAt := At( '<', SubStr( sResult, nOffset + 1 ) ) + IF nMarkerAt > 1 .AND. nMarkerAt < nOptionalAt .AND. SubStr( sResult, nMarkerAt - 1, 1 ) == '\' + nOffset := nMarkerAt + nMarkerAt := At( '<', sResult, nOffset + 1 ) + //TraceLog( sResult, nOffset, nMarkerAt ) + ELSEIF nMarkerAt > 0 .AND. nMarkerAt < nOptionalAt .AND. SubStr( sResult, nMarkerAt + 1, 1 ) $ ">=" // ignore <= and <> + nOffset := nMarkerAt + 1 + nMarkerAt := At( '<', sResult, nOffset + 1 ) ELSE EXIT ENDIF ENDDO - IF nMarkerAt > 0 - nMarkerAt += nOffset - ENDIF IF nMarkerAt > 0 IF nMarkerAt > nOptionalAt @@ -5976,22 +6646,14 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) nOffset := 0 IF nAt == 0 nCloseOptionalAt := At( ']', sResult ) - WHILE nCloseOptionalAt > 1 .AND. SubStr( sResult, nOffset + nCloseOptionalAt - 1, 1 ) == '\' - nOffset += nCloseOptionalAt - nCloseOptionalAt := At( ']', SubStr( sResult, nOffset + 1 ) ) + WHILE nCloseOptionalAt > 1 .AND. SubStr( sResult, nCloseOptionalAt - 1, 1 ) == '\' + nCloseOptionalAt := At( ']', sResult, nCloseOptionalAt + 1 ) ENDDO - IF nCloseOptionalAt > 0 - nCloseOptionalAt += nOffset - ENDIF ELSE nCloseOptionalAt := At( ']', sResult ) - WHILE nCloseOptionalAt > 1 .AND. nOffset + nCloseOptionalAt <= nAt .AND. SubStr( sResult, nOffset + nCloseOptionalAt - 1, 1 ) == '\' - nOffset += nCloseOptionalAt - nCloseOptionalAt := At( ']', SubStr( sResult, nOffset + 1 ) ) + WHILE nCloseOptionalAt > 1 .AND. nCloseOptionalAt <= nAt .AND. SubStr( sResult, nCloseOptionalAt - 1, 1 ) == '\' + nCloseOptionalAt := At( ']', sResult, nCloseOptionalAt + 1 ) ENDDO - IF nCloseOptionalAt > 0 - nCloseOptionalAt += nOffset - ENDIF IF nCloseOptionalAt > 0 IF nCloseOptionalAt > nAt @@ -6103,7 +6765,13 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) IF Right( sTemp, 1 ) == '-' nType := 0 sTemp := RTrim( Left( sTemp, Len( sTemp ) - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6125,7 +6793,13 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ELSE /*nType := 2*/ sTemp := RTrim( Left( sResult, nNext - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6151,7 +6825,13 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) IF Right( sTemp, 1 ) == '"' nType := 3 sTemp := RTrim( Left( sTemp, Len( sTemp ) - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6178,7 +6858,13 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) IF Right( sTemp, 1 ) == ')' nType := 4 sTemp := RTrim( Left( sTemp, Len( sTemp ) - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6205,7 +6891,13 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) IF Right( sTemp, 1 ) == '}' nType := 5 sTemp := RTrim( Left( sTemp, Len( sTemp ) - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6226,13 +6918,19 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) nNext := At( ">", sResult ) IF nNext == 0 - Alert( [ERROR! Unbalanced RP: '<.' : '] + sTemp + "'" ) + Alert( [ERROR! Unbalanced RP: '<.' : '] + sResult + "'" ) ELSE sTemp := RTrim( Left( sResult, nNext - 1 ) ) IF Right( sTemp, 1 ) == '.' nType := 6 sTemp := RTrim( Left( sTemp, Len( sTemp ) - 1 ) ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 @@ -6249,16 +6947,22 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) nNext := At( '>', sResult ) IF nNext == 0 - Alert( [ERROR! Unbalanced RP: <] ) + Alert( [ERROR! Unbalanced RP: '<' : '] + sResult + "'" ) ELSE /* Regular */ nType := 1 sTemp := Left( sResult, nNext - 1 ) - nId := aScan( aMarkers, sTemp ) + + #ifdef __XHARBOUR__ + nId := aScan( aMarkers, sTemp, , , .T. ) + #else + nId := aScan( aMarkers, {|s| s == sTemp } ) + #endif + sResult := SubStr( sResult, nNext + 1 ) ExtractLeadingWS( @sResult, @sPad ) IF nId == 0 - aEval( aMarkers, {|sMarker| TraceLog( sTemp, sMarker ) } ) + aEval( aMarkers, {|sMarker| TraceLog( sResult, sTemp, sMarker ) } ) Alert( [ERROR! Unrecognized RP: '<']+" : '" + sTemp + "'" ) ELSE aRP := { nOptional, nId } @@ -6308,10 +7012,9 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) //? "Repeatable: ", nMarker, "Root: ", nOptional IF ValType( nMarker ) == 'N' - nMP := aScan( aRule[2], {|aMP| aMP[1] == nMarker .OR. aMP[1] - 1000 == nMarker } ) - IF nMP == 0 - Alert( [ERROR! Internal logic failed! Missing marker # ] + str( nMarker, 2 ) + " [" + Str(ProcLine(),4 ) + ']' ) - ELSE + nTempMP := 0 + WHILE ( nTempMP := aScan( aRule[2], {|aMP| aMP[1] == nMarker .OR. aMP[1] - 1000 == nMarker }, nTempMP + 1 ) ) > 0 + nMP := nTempMP WHILE aRule[2][nMP][2] < 0 IF aRule[2][nMP][1] >= 0 @@ -6331,7 +7034,7 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) aRule[2][nMP][1] += ( 1000 ) //? "Flagged:", nMP, "As:", aRule[2][nMP][1] ENDIF - ENDIF + ENDDO //WAIT ENDIF ELSEIF aRP[1] < 0 @@ -6339,7 +7042,9 @@ STATIC FUNCTION CompileRule( sRule, aRules, aResults, bX, bUpper ) ENDIF IF ValType( aRP[2] ) == 'C' + aRP[2] := StrTran( aRP[2], '\\', '~' ) aRP[2] := StrTran( aRP[2], '\', '' ) + aRP[2] := StrTran( aRP[2], '~', '\' ) //? "RP #", Counter, aRP[1], '"' + aRP[2] + '"' ELSE //? "RP #", Counter, aRP[1], aRP[2] @@ -6520,15 +7225,17 @@ RETURN nId STATIC FUNCTION CompileDefine( sRule ) LOCAL sKey, sResult, aRule, nCloseAt, nId, sMarker, nCommaAt, aMP - LOCAL sToken, aRPs, sAnchor, aMarkers := {}, aResult + LOCAL sToken, aRPs, sAnchor, aMarkers := {}, aResult, sPad, sText := "" ExtractLeadingWS( @sRule ) sKey := NextToken( @sRule ) - DropTrailingWS( @sKey ) -//? "KEY: '" + sKey + "'" -//? "Rest: '" + sRule + "'" + // TraceLog( sKey, sRule ) + // ? "KEY: '" + sKey + "'" + // ? "Rest: '" + sRule + "'" + + DropTrailingWS( @sKey, @sPad ) IF ( nId := aScan( aDefRules, {|aDefine| aDefine[1] == sKey } ) ) > 0 Alert( [Redefinition of ] + "'" + sKey + "'" + [ in file: ] + s_sFile ) @@ -6546,7 +7253,7 @@ STATIC FUNCTION CompileDefine( sRule ) aAdd( aDefResults, aResult ) ENDIF - IF Left( sRule, 1 ) == '(' .AND. ( nCloseAt := At( ')', sRule ) ) > 0 + IF sPad == "" .AND. Left( sRule, 1 ) == '(' .AND. ( nCloseAt := At( ')', sRule ) ) > 0 /*Pseudo Function. */ sResult := SubStr( sRule, nCloseAt + 1 ) @@ -6608,29 +7315,40 @@ STATIC FUNCTION CompileDefine( sRule ) aResult[1] := NIL aResult[2] := NIL - aResult[3] := NIL + aResult[3] := Array( Len( aMarkers ) ) ELSE WHILE ( sToken := NextToken( @sResult ) ) != NIL - - DropTrailingWS( @sToken ) + DropTrailingWS( @sToken, @sPad ) //? "Token: '" + sToken + "'" - + #ifdef __XHARBOUR__ + IF ( nId := aScan( aMarkers, sToken, , , .T. ) ) > 0 + #else IF ( nId := aScan( aMarkers, {|sMarker| sMarker == sToken } ) ) > 0 + #endif + IF ! ( sText == "" ) + aAdd( aRPs, { 0, sText } ) + aAdd( aResult[2], -1 ) + sText := sPad + ENDIF + aAdd( aRPs, { 0, nId } ) aAdd( aResult[2], 1 ) ELSE - aAdd( aRPs, { 0, sToken } ) - aAdd( aResult[2], -1 ) + sText += sToken + sPad ENDIF //? "ID:", nID //WAIT - ENDDO + IF ! ( sText == "" ) + aAdd( aRPs, { 0, sText } ) + aAdd( aResult[2], -1 ) + ENDIF + aResult[1] := aRPs aSize( aResult[3], Len( aMarkers ) ) aFill( aResult[3], NIL ) @@ -7061,7 +7779,7 @@ STATIC FUNCTION InitRules() aAdd( aCommRules, { 'SET' , { { 1, 0, 'CURSOR', ':', { 'ON', 'OFF', '&' } } } , .F. } ) aAdd( aCommRules, { 'SET' , { { 0, 0, 'CURSOR', NIL, NIL }, { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) aAdd( aCommRules, { '?' , { { 1, 1, NIL, 'A', NIL } } , .F. } ) - aAdd( aCommRules, { '??' , { { 1, 1, NIL, 'A', NIL } } , .F. } ) + aAdd( aCommRules, { '?' , { { 1, 1, '?', 'A', NIL } } , .F. } ) aAdd( aCommRules, { 'EJECT' , , .F. } ) aAdd( aCommRules, { 'TEXT' , , .F. } ) aAdd( aCommRules, { 'TEXT' , { { 0, 0, 'TO', NIL, NIL }, { 1, 0, 'FILE', '(', NIL } } , .F. } ) @@ -7854,7 +8572,6 @@ INIT PROCEDURE PPInit FClose(FileHandle) RETURN -#endif //--------------------------------------------------------------// FUNCTION TraceLog(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15 ) @@ -7891,7 +8608,6 @@ FUNCTION TraceLog(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p RETURN .T. -#ifndef __XHARBOUR__ //--------------------------------------------------------------// FUNCTION CStr( xExp ) @@ -7955,7 +8671,7 @@ RETURN s_oSelf STATIC FUNCTION NextIdentifier( sLine, sSkipped ) - LOCAL nAt, nLen := Len( sLine ), cChar, cLastChar, nStart, sIdentifier, sTmp + LOCAL nAt, nLen := Len( sLine ), cChar, cLastChar := '0', nStart, sIdentifier, sTmp FOR nAt := 1 TO nLen cChar := SubStr( sLine, nAt, 1 ) @@ -8083,7 +8799,7 @@ STATIC FUNCTION InitRunRules() aAdd( aTransRules, { 'QSELF' , { { 0, 0, '(', NIL, NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) aAdd( aTransRules, { 'ADDMETHOD' , { { 1, 0, '(', '<', NIL }, { 0, 0, ',', NIL, NIL }, { 2, 0, '@', '!', NIL }, { 0, 0, '(', NIL, NIL }, { 0, 0, ')', NIL, NIL }, { 3, 0, ',', '<', NIL }, { 4, 0, ',', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) aAdd( aTransRules, { ':' , { { 0, 0, ':', NIL, NIL } } , .F. } ) - aAdd( aTransRules, { '_GET_' , { { 1, 0, '(', '<', NIL }, { 2, 0, ',', '!', NIL }, { 0, 0, ',', NIL, NIL }, { 3, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 4, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 5, 1, NIL, '<', { ')' } }, { 0, 0, ')', NIL, NIL } } , .F. } ) + aAdd( aTransRules, { '_GET_' , { { 1, 0, '(', '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, ',', NIL, NIL }, { 3, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 4, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 5, 1, NIL, '<', { ')' } }, { 0, 0, ')', NIL, NIL } } , .F. } ) aAdd( aTransRules, { '__GET' , { { 1, 0, '(', 'A', NIL }, { 0, 0, ')', NIL, NIL }, { 0, 0, ':', NIL, NIL }, { 0, 0, 'DISPLAY', NIL, NIL }, { 0, 0, '(', NIL, NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) aAdd( aTransRules, { 'PROCNAME' , { { 0, 0, '(', NIL, NIL }, { 1, 1, NIL, '<', { ')' } }, { 0, 0, ')', NIL, NIL } } , .F. } ) aAdd( aTransRules, { 'PROCLINE' , { { 0, 0, '(', NIL, NIL }, { 1, 1, NIL, '<', { ')' } }, { 0, 0, ')', NIL, NIL } } , .F. } ) @@ -8092,28 +8808,31 @@ STATIC FUNCTION InitRunRules() #ifdef WIN aAdd( aCommRules, { 'ALERT' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) #endif + aAdd( aCommRules, { '_HB_CLASS' , { { 1, 0, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { '_HB_MEMBER' , { { 1, 0, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { 'MEMVAR' , { { 1, 0, NIL, '*', NIL } } , .F. } ) - aAdd( aCommRules, { 'EXTERNAL' , { { 1, 0, NIL, '!', NIL }, { 2, 1, ',', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'EXTERNAL' , { { 1, 0, NIL, '!', NIL }, { 1002, 1, ',', '<', NIL } } , .F. } ) aAdd( aCommRules, { 'DECLARE' , { { 1, 0, NIL, '!', NIL }, { 2, 0, NIL, '<', NIL }, { 3, 0, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'DO' , { { 1, 0, NIL, '!', NIL } } , .F. } ) + aAdd( aCommRules, { 'DO' , { { 1, 0, NIL, '!', NIL }, { 2, 0, 'WITH', '<', NIL }, { 1003, 1, ',', '<', NIL } } , .F. } ) aAdd( aCommRules, { 'IF' , { { 1, 0, NIL, '<', NIL } } , .F. } ) aAdd( aCommRules, { 'ELSEIF' , { { 1, 0, NIL, '<', NIL } } , .F. } ) aAdd( aCommRules, { 'ELSE' , , .F. } ) - aAdd( aCommRules, { 'ENDIF' , { { 1, 1, NIL, '*', NIL } } , .F. } ) - aAdd( aCommRules, { 'END' , { { 1, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'ENDIF' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'END' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { 'DO' , { { 0, 0, 'CASE', NIL, NIL } } , .F. } ) aAdd( aCommRules, { 'CASE' , { { 1, 0, NIL, '<', NIL } } , .F. } ) aAdd( aCommRules, { 'OTHERWISE' , , .F. } ) - aAdd( aCommRules, { 'ENDCASE' , { { 1, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'ENDCASE' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { 'FOR' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ':=', '<', NIL }, { 3, 0, 'TO', '<', NIL }, { 4, 1, 'STEP', '<', NIL } } , .F. } ) aAdd( aCommRules, { 'FOR' , { { 1, 0, NIL, '<', NIL }, { 2, 0, '=', '<', NIL }, { 3, 0, 'TO', '<', NIL }, { 4, 1, 'STEP', '<', NIL } } , .F. } ) - aAdd( aCommRules, { 'LOOP' , { { 1, 1, NIL, '*', NIL } } , .F. } ) - aAdd( aCommRules, { 'EXIT' , { { 1, 1, NIL, '*', NIL } } , .F. } ) - aAdd( aCommRules, { 'NEXT' , { { 1, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'LOOP' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'EXIT' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'NEXT' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { 'DO' , { { 1, 0, 'WHILE', '<', NIL } } , .F. } ) aAdd( aCommRules, { 'WHILE' , { { 1, 0, NIL, '<', NIL } } , .F. } ) - aAdd( aCommRules, { 'ENDDO' , { { 1, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'ENDDO' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) aAdd( aCommRules, { 'DO' , { { 1, 0, NIL, '(', NIL }, { 0, 0, '.', NIL, NIL }, { 0, 0, 'PRG', NIL, NIL } } , .F. } ) aAdd( aCommRules, { 'INIT' , { { 1, 0, 'PROCEDURE', '!', NIL }, { 0, 1, '(', NIL, NIL }, { 0, -1, ')', NIL, NIL } } , .F. } ) aAdd( aCommRules, { 'EXIT' , { { 1, 0, 'PROCEDURE', '!', NIL }, { 0, 1, '(', NIL, NIL }, { 0, -1, ')', NIL, NIL } } , .F. } ) @@ -8159,11 +8878,14 @@ STATIC FUNCTION InitRunResults() #ifdef WIN aAdd( aCommResults, { { { 0, 'MessageBox( 0, CStr( ' }, { 0, 1 }, { 0, ' ), "xBaseScript for Windows", 0 )' } }, { -1, 1, -1} , { NIL } } ) #endif + aAdd( aCommResults, { , , { NIL } } ) aAdd( aCommResults, { , , { NIL } } ) aAdd( aCommResults, { , , { NIL } } ) aAdd( aCommResults, { , , { NIL, NIL } } ) aAdd( aCommResults, { , , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, ' ' }, { 0, 1 }, { 0, '()' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, ' ' }, { 0, 1 }, { 0, '( ' }, { 0, 2 }, { 0, '' }, { 3, ', ' }, { 3, 3 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, -1, 1, -1} , { NIL, NIL, NIL } } ) aAdd( aCommResults, { { { 0, 'PP__IF ' }, { 0, 1 } }, { -1, 1} , { NIL } } ) aAdd( aCommResults, { { { 0, 'PP__ELSEIF ' }, { 0, 1 } }, { -1, 1} , { NIL } } ) aAdd( aCommResults, { { { 0, 'PP__ELSE' } }, { -1} , } ) @@ -8203,7 +8925,63 @@ STATIC FUNCTION InitRunResults() RETURN .T. //--------------------------------------------------------------// -PROCEDURE PP_RunInit( aProcedures, aInitExit ) +STATIC FUNCTION InitDotRules() + + /* Defines */ + + /* Translates */ + aAdd( aTransRules, { '_GET_' , { { 1, 0, '(', '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, ',', NIL, NIL }, { 3, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 4, 1, NIL, '<', { ',' } }, { 0, 0, ',', NIL, NIL }, { 5, 1, NIL, '<', { ')' } }, { 0, 0, ')', NIL, NIL } } , .F. } ) + aAdd( aTransRules, { '__GET' , { { 1, 0, '(', 'A', NIL }, { 0, 0, ')', NIL, NIL }, { 0, 0, ':', NIL, NIL }, { 0, 0, 'DISPLAY', NIL, NIL }, { 0, 0, '(', NIL, NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) + aAdd( aTransRules, { 'AADD' , { { 0, 0, '(', NIL, NIL }, { 0, 0, 'GETLIST', NIL, NIL }, { 0, 0, ',', NIL, NIL }, { 0, 0, '__GET', NIL, NIL }, { 1, 0, '(', 'A', NIL }, { 0, 0, ')', NIL, NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) + + /* Commands */ + aAdd( aCommRules, { 'CLS' , , .F. } ) + aAdd( aCommRules, { 'BROWSE' , , .F. } ) + aAdd( aCommRules, { 'EXIT' , , .F. } ) + aAdd( aCommRules, { 'IF' , { { 1, 0, NIL, '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'ELSEIF' , { { 1, 0, NIL, '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'ELSE' , , .F. } ) + aAdd( aCommRules, { 'ENDIF' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'END' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'DO' , { { 0, 0, 'CASE', NIL, NIL } } , .F. } ) + aAdd( aCommRules, { 'CASE' , { { 1, 0, NIL, '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'OTHERWISE' , , .F. } ) + aAdd( aCommRules, { 'ENDCASE' , { { 1001, 1, NIL, '*', NIL } } , .F. } ) + aAdd( aCommRules, { 'DO' , { { 1, 0, NIL, '<', NIL }, { 0, 0, '.', NIL, NIL }, { 0, 0, 'PRG', NIL, NIL } } , .F. } ) + aAdd( aCommRules, { 'CD' , { { 1, 0, NIL, '(', NIL } } , .F. } ) + +RETURN .T. + +//--------------------------------------------------------------// +STATIC FUNCTION InitDotResults() + + /* Defines Results*/ + + /* Translates Results*/ + aAdd( aTransResults, { { { 0, '__GET( MEMVARBLOCK(' }, { 0, 2 }, { 0, '), ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aTransResults, { { { 0, '__GET(' }, { 0, 1 }, { 0, ')' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aTransResults, { { { 0, '__oGet := __GET(' }, { 0, 1 }, { 0, ') ; aAdd( GetList, __oGet ) ; __oGet:Display()' } }, { -1, 1, -1} , { NIL } } ) + + /* Commands Results*/ + aAdd( aCommResults, { { { 0, 'Scroll( 2, 0, MaxRow() - 1, MaxCol() ) ; SetPos( 2, 0 )' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'Browse( 1, 0, MaxRow() - 1, MaxCol() )' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, '__QUIT()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, '__SetIf( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, '__SetElseIf( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, '__SetElse()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, '__SetEnd()' } }, { -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, '__SetEnd()' } }, { -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, '__SetDoCase()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, '__SetCase( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, '__SetOtherwise()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, '__SetEndCase()' } }, { -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'PP_Run( ' }, { 0, 1 }, { 0, ' + ".prg" )' } }, { -1, 2, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'DirChange( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 4, -1} , { NIL } } ) + +RETURN .T. + +//--------------------------------------------------------------// +PROCEDURE PP_RunInit( aProcedures, aInitExit, nLine ) IF ValType( aProcedures ) != 'A' .OR. ValType( aInitExit ) != 'A' Alert( [Invalid parameters to: ] + ProcName() + [ must be Arrays!] ) @@ -8215,7 +8993,7 @@ PROCEDURE PP_RunInit( aProcedures, aInitExit ) aInitExit[2] := {} ENDIF - ErrorBlock( {|oErr| RP_Run_Err( oErr, aProcedures ) } ) + ErrorBlock( {|oErr| RP_Run_Err( oErr, aProcedures, nLine ) } ) InitRules() InitResults() @@ -8226,18 +9004,24 @@ PROCEDURE PP_RunInit( aProcedures, aInitExit ) RETURN //--------------------------------------------------------------// -FUNCTION PP_PreProText( sLines, asLines ) +FUNCTION PP_PreProText( sLines, asLines, bBlanks ) LOCAL nOpen, nClose, sTemp := "", nLine, nLines //ErrorBlock( {|oErr| RP_PPText_Err( oErr, sLines, 0 ) } ) + //TraceLog( sLines ) + + IF bBlanks == NIL + bBlanks := .T. + ENDIF + IF asLines == NIL asLines := {} ENDIF - sLines := StrTran( sLines, Chr(13), "" ) - sLines := StrTran( sLines, Chr(9), " " ) + sLines := StrTran( sLines, Chr(13), " " ) + sLines := StrTran( sLines, Chr(9), " " ) WHILE ( nOpen := nAtSkipStr( "/*", sLines ) ) > 0 sTemp += Left( sLines, nOpen - 1 ) @@ -8254,39 +9038,62 @@ FUNCTION PP_PreProText( sLines, asLines ) //ErrorBlock( {|oErr| RP_PPText_Err( oErr, SubStr( sLines, nClose + 1, nOpen - ( nClose + 1 ) ), 0 ) } ) - WHILE ( nOpen := nAtSkipStr( Chr(10), sLines, nOpen + 1 ) ) > 0 + WHILE ( nOpen := At( Chr(10), sLines, nOpen + 1 ) ) > 0 .AND. nOpen > nClose + //TraceLog( sLines, Len( sLines ), nOpen, nClose ) aAdd( asLines, RTrim( LTrim( SubStr( sLines, nClose + 1, nOpen - ( nClose + 1 ) ) ) ) ) + //TraceLog( Len( asLines ), aTail( asLines ) ) nClose := nOpen ENDDO IF Len( sLines ) > nClose aAdd( asLines, RTrim( LTrim( SubStr( sLines, nClose + 1 ) ) ) ) + //TraceLog( Len( asLines) , aTail( asLines ) ) ENDIF //ErrorBlock( {|oErr| RP_PPText_Err( oErr, asLines[nLine], nLine ) } ) nLines := Len( asLines ) FOR nLine := 1 TO nLines - DO WHILE Empty( asLines[nLine] ) .OR. Left( asLines[nLine], 1 ) == '*' - aDel( asLines, nLine ) - nLines-- - aSize( asLines, nLines ) - IF nLine > nLines - EXIT - ENDIF + sTemp := asLines[nLine] + //TraceLog( sTemp ) + + DO WHILE Empty( sTemp ) .OR. Left( sTemp, 1 ) == '*' + //TraceLog( nLine, nLines, sTemp ) + IF bBlanks + asLines[nLine] := NIL + nLine++ + IF nLine > nLines + EXIT + ENDIF + sTemp := asLines[nLine] + ELSE + aDel( asLines, nLine ) + nLines-- + aSize( asLines, nLines ) + IF nLine > nLines + EXIT + ENDIF + ENDIF ENDDO IF nLine > nLines EXIT ENDIF - nOpen := nAtSkipStr( "&&", asLines[nLine] ) + //TraceLog( nLine, nLines, sTemp ) + + nOpen := nAtSkipStr( "&&", sTemp ) IF nOpen > 0 IF nOpen == 1 - aDel( asLines, nLine ) - nLine-- - nLines-- - aSize( asLines, nLines ) - LOOP + IF bBlanks + asLines[nLine] := NIL + LOOP + ELSE + aDel( asLines, nLine ) + nLine-- + nLines-- + aSize( asLines, nLines ) + LOOP + ENDIF ENDIF sTemp := Left( asLines[nLine], nOpen - 1 ) ELSE @@ -8296,11 +9103,17 @@ FUNCTION PP_PreProText( sLines, asLines ) nOpen := nAtSkipStr( "//", sTemp ) IF nOpen > 0 IF nOpen == 1 - aDel( asLines, nLine ) - nLine-- - nLines-- - aSize( asLines, nLines ) - LOOP + IF bBlanks + asLines[nLine] := NIL + //TraceLog( "LOOP" ) + LOOP + ELSE + aDel( asLines, nLine ) + nLine-- + nLines-- + aSize( asLines, nLines ) + LOOP + ENDIF ENDIF sTemp := Left( sTemp, nOpen - 1 ) ENDIF @@ -8309,46 +9122,94 @@ FUNCTION PP_PreProText( sLines, asLines ) NEXT sLines := "" + + IF nLines == 0 + RETURN "" + ENDIF + + //TraceLog( nLines ) + + // Don't process the last line for [;]. + nLines-- FOR nLine := 1 TO nLines sTemp := asLines[nLine] + //TraceLog( sTemp ) + IF sTemp == NIL + LOOP + ENDIF DO WHILE Right( sTemp, 1 ) == ';' - aDel( asLines, nLine ) - nLines-- - aSize( asLines, nLines ) - // nLine now points to the next line. - sTemp := Left( sTemp, Len( sTemp ) - 1 ) + asLines[nLine] + IF bBlanks + #ifdef __STR_INDEX__ + sTemp[-1] := ' ' + #else + sTemp := Left( sTemp, Len( sTemp ) - 1 ) + ' ' + #endif + asLines[nLine] := NIL + nLine++ + IF asLines[nLine] == NIL + asLines[nLine] := sTemp + ELSE + asLines[nLine] := sTemp + asLines[nLine] + ENDIF + sTemp := asLines[nLine] + ELSE + aDel( asLines, nLine ) + nLines-- + aSize( asLines, nLines ) + // nLine now points to the next line. + sTemp := Left( sTemp, Len( sTemp ) - 1 ) + ' ' + asLines[nLine] + ENDIF ENDDO sTemp := PP_PreProLine( sTemp ) sLines += sTemp - IF nLine < nLines - sLines += ";" - ENDIF + sLines += ";" - asLines[nLine] := sTemp + IF sTemp == "" + asLines[nLine] := NIL + ELSE + asLines[nLine] := sTemp + ENDIF + //TraceLog( nLine, sTemp ) NEXT + sTemp := asLines[nLine] + + IF sTemp != NIL + sTemp := PP_PreProLine( sTemp ) + sLines += sTemp + ENDIF + + IF sTemp == "" + asLines[nLine] := NIL + ELSE + asLines[nLine] := sTemp + ENDIF + + //TraceLog( nLine, sTemp, sLines ) + RETURN sLines //--------------------------------------------------------------// FUNCTION PP_RunText( sLines, bPP, aParams ) LOCAL aProcedures := {}, aInitExit := { {}, {} }, nProcId := 0, ; - nLine, nLines, xRet, asLines := {}, nOpen, nClose + nLine, nLines, xRet, asLines := {}, nOpen, nClose, sLine IF bPP == NIL bPP := .T. ENDIF - PP_RunInit( aProcedures, aInitExit ) + PP_RunInit( aProcedures, aInitExit, @nLine ) IF bPP PP_PreProText( sLines, asLines ) ELSE sLines := StrTran( sLines, Chr(13), "" ) - sLines := StrTran( sLines, Chr(9), " " ) + sLines := StrTran( sLines, Chr(9), " " ) + sLines := StrTran( sLines, ';', Chr(10) ) nOpen := 0 nClose := 0 WHILE ( nOpen := nAtSkipStr( Chr(10), sLines, nOpen + 1 ) ) > 0 @@ -8364,7 +9225,10 @@ FUNCTION PP_RunText( sLines, bPP, aParams ) nLines := Len( asLines ) FOR nLine := 1 TO nLines - PP_CompileLine( asLines[nLine], nLine, aProcedures, aInitExit, @nProcId ) + sLine := asLines[nLine] + IF sLine != NIL + PP_CompileLine( sLine, nLine, aProcedures, aInitExit, @nProcId ) + ENDIF NEXT RETURN PP_Exec( aProcedures, aInitExit, nProcId, aParams ) @@ -8375,13 +9239,15 @@ FUNCTION PP_RunArray( asLines, aParams ) LOCAL aProcedures := {}, aInitExit := { {}, {} }, nProcId := 0, ; nLine, nLines, nOpen, nClose - PP_RunInit( aProcedures, aInitExit ) + PP_RunInit( aProcedures, aInitExit, @nLine ) ErrorBlock( {|oErr| RP_Comp_Err( oErr, asLines[nLine], nLine ) } ) nLines := Len( asLines ) FOR nLine := 1 TO nLines - PP_CompileLine( asLines[nLine], nLine, aProcedures, aInitExit, @nProcId ) + IF asLines[nLine] != NIL + PP_CompileLine( asLines[nLine], nLine, aProcedures, aInitExit, @nProcId ) + ENDIF NEXT RETURN PP_Exec( aProcedures, aInitExit, nProcId, aParams ) @@ -8397,7 +9263,7 @@ FUNCTION PP_Exec( aProcedures, aInitExit, nProcId, aParams ) s_aParams := {} ENDIF - ErrorBlock( {|oErr| RP_Run_Err( oErr, aProcedures ) } ) + ErrorBlock( {|oErr| RP_Run_Err( oErr, aProcedures, s_aProcStack[ Len( s_aProcStack ) ][2] ) } ) InitRules() InitResults() @@ -8422,6 +9288,8 @@ FUNCTION PP_Exec( aProcedures, aInitExit, nProcId, aParams ) PP_ExecProcedure( aProcedures[ aInitExit[2][nProc] ] ) NEXT + //TraceLog( xRet ) + RETURN xRet //--------------------------------------------------------------// @@ -8461,42 +9329,19 @@ PROCEDURE PP_LoadRun() RETURN //--------------------------------------------------------------// -PROCEDURE PP_LoadClass() +PROCEDURE PP_LoadDot() - IF ! s_lClsLoaded - s_lClsLoaded := .T. - InitClsRules() - InitClsResults() + IF ! s_lDotLoaded + s_lDotLoaded := .T. + InitDotRules() + InitDotResults() ENDIF RETURN -//--------------------------------------------------------------// -PROCEDURE PP_LoadFW() - - IF ! s_lFWLoaded - s_lFWLoaded := .T. - InitFWRules() - InitFWResults() - ENDIF - -RETURN - -//--------------------------------------------------------------// -#ifdef __HARBOUR__ - FUNCTION PP_CompileText( sLines ) - RETURN PP_CompileLine( sLines ) -#endif - //--------------------------------------------------------------// #ifdef __HARBOUR__ #include "pp_harb.ch" -#else - STATIC FUNCTION InitFWRules() - RETURN .T. - - STATIC FUNCTION InitFWResults() - RETURN .T. #endif //--------------------------------------------------------------// diff --git a/harbour/contrib/dot/pp.txt b/harbour/contrib/dot/pp.txt index 8e1562e66c..1d1c28bed7 100644 --- a/harbour/contrib/dot/pp.txt +++ b/harbour/contrib/dot/pp.txt @@ -1,7 +1,7 @@ Command line switches and syntax. - PP filename[.ext] [-CCH] [-D] [-D:E] [-D:M] [-D:P] [-H] [--help][-I] + PP filename[.ext] [-CCH] [-D] [-D:E] [-D:M] [-D:P] [-H] [--help][-I] [-P] [-R] [-STRICT] [-U[]] -CCH = Generate a .cch file (compiled command header). @@ -37,18 +37,18 @@ PP has 3 personalities which are tied tightly together. -D:E = Show tracing information into the Expression Scanner. -D:M = Show tracing information into the Match Engine. -D:P = Show tracing information into the Output Generator. - -I = #include file search path(s) (';' seperated). + -I = #include file search path(s) (';' separated). -STRICT = Strict Clipper compatability (clone Clipper PreProcessor bugs). -U = Use command definitions set in (or none). -2. DOT prompt, which suppose to allow most of Clipper syntax. Please +2. DOT prompt, which allows most of the Clipper syntax. Please report any syntax you expect to work, but is not supported. It does support IF [ELSE] [ELSEIF] ENDIF in DOT environment. Executing PP with no source filename will start the DOT prompt mode. - In this mode you can execute a single line at a time, by typing the line + In this mode you can execute a single line at a time by typing the line and pressing the [Enter] key. Additionally you may type: @@ -65,10 +65,10 @@ PP has 3 personalities which are tied tightly together. - LOCALS have scoping of locals but are implemented as privates so you can't have a LOCAL and a PRIVATE with the same name. - b. Non declared variable are auto-created on assignment in Harbour + b. Non-declared variables are auto-created on assignment in Harbour but NOT in Clipper (yet). - c. It does support definition and execution of prg defined + c. It does support definition and execution of prg-defined FUNCTIONs/PROCEDUREs. d. It does support ALL control flow structures *except* BEGIN @@ -78,10 +78,10 @@ PP has 3 personalities which are tied tightly together. This will create rp_dot.pp$ compilation trace file. -3. Finally, PP is a limited Clipper/Harbour/xBase Interpreter. Subject +3. Finally, PP is a limited Clipper/Harbour/xBase Interpreter. Subject to those same few limitations it can execute most of Harbour syntax. - Executing PP followed by a source file name and the -R switch, will - "RUN" that source (it will also create the rp_run.pp$ compilation + Executing PP followed by a source file name and the -R switch will + "RUN" that source (it will also create the rp_run.pp$ compilation trace file). This syntax is: @@ -95,7 +95,7 @@ PP has 3 personalities which are tied tightly together. -D:E = Show tracing information into the Expression Scanner. -D:M = Show tracing information into the Match Engine. -D:P = Show tracing information into the Output Generator. - -I = #include file search path(s) (';' seperated). + -I = #include file search path(s) (';' separated). -P = Generate .pp$ pre-processed output file. -STRICT = Strict Clipper compatability (clone Clipper PreProcessor bugs). -U = Use command definitions set in (or none). @@ -107,13 +107,17 @@ PP has 3 personalities which are tied tightly together. - LOCALS have scoping of locals but are implemented as privates so you can't have a LOCAL and a PRIVATE with the same name. - b. Non declared variable are auto-created on assignment in Harbour + b. Non-declared variables are auto-created on assignment in Harbour but NOT in Clipper (yet). - c. It does support definition and execution of prg defined + c. It does support definition and execution of prg-defined FUNCTIONs/PROCEDUREs as well as parameter passing and return values. d. It does support ALL control flow structures *except* BEGIN SEQUENCE [BREAK] [RECOVER] END SEQUENCE. - e. The executed module is compiled with -n option (for now). + e. The compiled module is automatically using -n (No implicit startup + procedure) if the script starts with a Procedure/Function definition. + + f. Built-in OLE COM Client gateway is included when PP is compiled with + Harbour and using -dWIN (harbour pp -dWIN -w ... ) diff --git a/harbour/contrib/dot/pp_harb.ch b/harbour/contrib/dot/pp_harb.ch index a9efb5b47d..bed52b138f 100644 --- a/harbour/contrib/dot/pp_harb.ch +++ b/harbour/contrib/dot/pp_harb.ch @@ -23,2644 +23,2283 @@ #ifdef __HARBOUR__ -#include "hbclass.ch" + #include "hbclass.ch" -//----------------------------------------------------------------------------// -CLASS TInterpreter + //----------------------------------------------------------------------------// + CLASS TInterpreter - DATA cText - DATA acPPed - DATA cPPed - DATA aCompiledProcs - DATA aInitExit - DATA nProcs - DATA aScriptHostGlobals INIT {} + DATA cText + DATA acPPed + DATA cPPed + DATA aCompiledProcs + DATA aInitExit + DATA nProcs + DATA aScriptHostGlobals INIT {} - METHOD New() INLINE ( ::nProcs := 0, ::cText := "", ::acPPed := {}, ::aCompiledProcs := {}, ::aInitExit := { {}, {} }, Self ) + METHOD New() INLINE ( ::nProcs := 0, ::cText := "", ::acPPed := {}, ::aCompiledProcs := {}, ::aInitExit := { {}, {} }, Self ) - METHOD AddLine( cLine ) INLINE ( ::nProcs := 0, ::acPPed := {}, ::cText += ( cLine + Chr(10) ) ) - METHOD SetScript( cText ) INLINE ( ::nProcs := 0, ::acPPed := {}, ::cText := cText ) - METHOD GetPPO() INLINE ( ::cPPed ) + METHOD AddLine( cLine ) INLINE ( ::nProcs := 0, ::acPPed := {}, ::cText += ( cLine + Chr(10) ) ) + METHOD SetScript( cText ) INLINE ( ::nProcs := 0, ::acPPed := {}, ::cText := cText ) + METHOD GetPPO() INLINE ( ::cPPed ) - METHOD Compile() - METHOD Run() - METHOD RunFile( cFile, aParams, cPPOExt, bBlanks ) INLINE PP_Run( cFile, aParams, cPPOExt, bBlanks ) + METHOD Compile() + METHOD Run() + METHOD RunFile( cFile, aParams, cPPOExt, bBlanks ) INLINE PP_Run( cFile, aParams, cPPOExt, bBlanks ) - METHOD ClearRules() INLINE PP_ResetRules() - METHOD InitStdRules() INLINE PP_InitStd() - METHOD LoadClass() INLINE PP_LoadClass() - METHOD LoadFiveWin() INLINE PP_LoadFw() + METHOD ClearRules() INLINE PP_ResetRules() + METHOD InitStdRules() INLINE PP_InitStd() + METHOD LoadClass() INLINE PP_LoadClass() -#ifdef WIN - METHOD ScriptSiteAddGlobal( cName, pDisp ) - METHOD ScriptSiteAutomateGlobals() -#endif + #ifdef FW + METHOD LoadFiveWin() INLINE PP_LoadFw() + #endif -ENDCLASS + #ifdef MINIGUI + METHOD LoadMiniGUI() INLINE PP_LoadMiniGUI() + #endif -//----------------------------------------------------------------------------// -METHOD Run( p1, p2, p3, p4, p5, p6, p7, p8, p9 ) CLASS TInterpreter + #ifdef WIN + METHOD ScriptSiteAddGlobal( cName, pDisp ) + METHOD ScriptSiteAutomateGlobals() + #endif - LOCAL aParams := HB_aParams(), xRet + ENDCLASS - IF ::nProcs == 0 - ::Compile() - ENDIF + //----------------------------------------------------------------------------// + METHOD Run( p1, p2, p3, p4, p5, p6, p7, p8, p9 ) CLASS TInterpreter - IF ::nProcs > 0 - xRet := PP_Exec( ::aCompiledProcs, ::aInitExit, ::nProcs, aParams ) - ENDIF + LOCAL aParams := HB_aParams(), xRet -RETURN xRet + IF ::nProcs == 0 + ::Compile() + ENDIF -//----------------------------------------------------------------------------// -METHOD Compile() CLASS TInterpreter + IF ::nProcs > 0 + xRet := PP_Exec( ::aCompiledProcs, ::aInitExit, ::nProcs, aParams ) + ENDIF - LOCAL nLine, nLines, nProcId := 0 + RETURN xRet - IF Len( ::acPPed ) == 0 - PP_InitStd() - PP_LoadRun() - ::cPPed := PP_PreProText( ::cText, ::acPPed ) - ::aCompiledProcs := {} - ::aInitExit := { {}, {} } - ENDIF + //----------------------------------------------------------------------------// + METHOD Compile() CLASS TInterpreter - IF Len( ::aCompiledProcs ) == 0 - ErrorBlock( {|oErr| RP_Comp_Err( oErr, ::acPPed[nLine], nLine ) } ) + LOCAL nLine, nLines, sLine, nProcId := 0 - PP_ModuleName( "_TINTERPRETER_" ) + IF Len( ::acPPed ) == 0 + PP_InitStd() + PP_LoadRun() + ::cPPed := PP_PreProText( ::cText, ::acPPed ) + ::aCompiledProcs := {} + ::aInitExit := { {}, {} } + ENDIF - nLines := Len( ::acPPed ) - FOR nLine := 1 TO nLines - PP_CompileLine( ::acPPed[nLine], nLine, ::aCompiledProcs, ::aInitExit, @nProcId ) - NEXT - ENDIF + IF Len( ::aCompiledProcs ) == 0 + ErrorBlock( {|oErr| RP_Comp_Err( oErr, ::acPPed[nLine], nLine ) } ) - ::nProcs := nProcId + PP_ModuleName( "_TINTERPRETER_" ) -RETURN nProcId > 0 + nLines := Len( ::acPPed ) + FOR nLine := 1 TO nLines + sLine := ::acPPed[nLine] + IF sLine != NIL + PP_CompileLine( sLine, nLine, ::aCompiledProcs, ::aInitExit, @nProcId ) + ENDIF + NEXT + ENDIF -//----------------------------------------------------------------------------// -#ifdef WIN -METHOD ScriptSiteAddGlobal( cName, pDisp ) CLASS TInterpreter + ::nProcs := nProcId - LOCAL oGlobal := TOleAuto():New( pDisp, cName ) + RETURN nProcId > 0 - aAdd( ::aScriptHostGlobals, { cName, pDisp } ) + //----------------------------------------------------------------------------// - __QQPub( cName ) - __MVPUT( cName, oGlobal ) + #ifdef WIN -RETURN Self + METHOD ScriptSiteAddGlobal( cName, pDisp ) CLASS TInterpreter -//----------------------------------------------------------------------------// -METHOD ScriptSiteAutomateGlobals() CLASS TInterpreter + LOCAL oGlobal := TOleAuto():New( pDisp, cName ) - LOCAL aGlobals := ::aScriptHostGlobals - LOCAL nGlobals := Len( aGlobals ), nGlobal - LOCAL cName, pDisp + aAdd( ::aScriptHostGlobals, { cName, pDisp } ) - FOR nGlobal := 1 TO nGlobals - cName := aGlobals[ nGlobal ][1] - pDisp := aGlobals[ nGlobal ][2] - __QQPub( cName ) - __MVPUT( cName, TOleAuto():New( pDisp ) ) - NEXT + __QQPub( cName ) + __MVPUT( cName, oGlobal ) -RETURN .T. + RETURN Self -#endif + //----------------------------------------------------------------------------// -//----------------------------------------------------------------------------// + METHOD ScriptSiteAutomateGlobals() CLASS TInterpreter -#ifdef USE_C_BOOST + LOCAL aGlobals := ::aScriptHostGlobals + LOCAL nGlobals := Len( aGlobals ), nGlobal + LOCAL cName, pDisp -#ifdef __XHARBOUR__ - #pragma BEGINDUMP - #define __XHARBOUR__ - #pragma ENDDUMP -#endif + FOR nGlobal := 1 TO nGlobals + cName := aGlobals[ nGlobal ][1] + pDisp := aGlobals[ nGlobal ][2] + __QQPub( cName ) + __MVPUT( cName, TOleAuto():New( pDisp ) ) + NEXT -#pragma BEGINDUMP + RETURN .T. -#include -#include "hbapi.h" -#include "hbstack.h" -#include "hbapierr.h" -#include "hbapiitm.h" -#include "hbvm.h" -#include "hboo.ch" + #endif -#ifdef __XHARBOUR__ - #include "hbfast.h" -#endif + //--------------------------------------------------------------// + PROCEDURE PP_LoadClass() -static BOOL s_bArrayPrefix = FALSE; + IF ! s_lClsLoaded + s_lClsLoaded := .T. + InitClsRules() + InitClsResults() + ENDIF -//----------------------------------------------------------------------------// -static HB_FUNC( SETARRAYPREFIX ) -{ - PHB_ITEM pbArrayPrefix = hb_param( 1, HB_IT_LOGICAL ); + RETURN - if( pbArrayPrefix != NULL ) - { - s_bArrayPrefix = pbArrayPrefix->item.asLogical.value; - } -} + //--------------------------------------------------------------// + #ifdef FW + PROCEDURE PP_LoadFW() -//----------------------------------------------------------------------------// -static HB_FUNC( NEXTTOKEN ) -{ - PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); - PHB_ITEM pDontRecord = hb_param( 2, HB_IT_LOGICAL ); - char *sLine, *pTmp; - char sReturn[2048]; - char s2[3]; - BOOL lDontRecord; - size_t Counter, nLen; + IF ! s_lFWLoaded + s_lFWLoaded := .T. + InitFWRules() + InitFWResults() + ENDIF - if( pLine == NULL || pLine->item.asString.length == 0 ) - { - hb_ret(); - return; - } + RETURN + #endif - sLine = pLine->item.asString.value; - nLen = pLine->item.asString.length; + //--------------------------------------------------------------// + #ifdef MINIGUI + PROCEDURE PP_LoadMiniGUI() - //printf( "\nProcessing: '%s'\n", sLine ); + IF ! s_lMiniGUILoaded + s_lMiniGUILoaded := .T. + InitMiniGUIRules() + InitMiniGUIResults() + ENDIF - if( pDontRecord == NULL ) - { - lDontRecord = FALSE; - } - else - { - lDontRecord = pDontRecord->item.asLogical.value; - } + RETURN + #endif - // *** To be removed after final testing !!! - while( sLine[0] == ' ' ) - { - sLine++; nLen--; - } + //--------------------------------------------------------------// + FUNCTION PP_CompileText( sLines ) - sReturn[0] = '\0'; - s2[2] = '\0'; + RETURN PP_CompileLine( sLines ) - if( nLen >= 2 ) - { - s2[0] = sLine[0]; - s2[1] = sLine[1]; + //----------------------------------------------------------------------------// + #ifdef WIN - if( strstr( "++\\--\\->\\:=\\==\\!=\\<>\\>=\\<=\\+=\\-=\\*=\\^=\\**\\/=\\%=\\??", (char*) s2 ) ) + FUNCTION Alert( cMsg, aOptions ) + + RETURN MessageBox( 0, CStr( cMsg ), "XBScript", 0 ) + #endif + + //----------------------------------------------------------------------------// + #ifdef FW + STATIC FUNCTION InitFWRules() + + /* Defines */ + aAdd( aDefRules, { '_FIVEWIN_CH' , , .T. } ) + aAdd( aDefRules, { 'FWCOPYRIGHT' , , .T. } ) + aAdd( aDefRules, { 'FWVERSION' , , .T. } ) + aAdd( aDefRules, { 'FWDESCRIPTION' , , .T. } ) + aAdd( aDefRules, { 'Browse' , , .T. } ) + aAdd( aDefRules, { '_DIALOG_CH' , , .T. } ) + aAdd( aDefRules, { '_FONT_CH' , , .T. } ) + aAdd( aDefRules, { 'LF_HEIGHT' , , .T. } ) + aAdd( aDefRules, { 'LF_WIDTH' , , .T. } ) + aAdd( aDefRules, { 'LF_ESCAPEMENT' , , .T. } ) + aAdd( aDefRules, { 'LF_ORIENTATION' , , .T. } ) + aAdd( aDefRules, { 'LF_WEIGHT' , , .T. } ) + aAdd( aDefRules, { 'LF_ITALIC' , , .T. } ) + aAdd( aDefRules, { 'LF_UNDERLINE' , , .T. } ) + aAdd( aDefRules, { 'LF_STRIKEOUT' , , .T. } ) + aAdd( aDefRules, { 'LF_CHARSET' , , .T. } ) + aAdd( aDefRules, { 'LF_OUTPRECISION' , , .T. } ) + aAdd( aDefRules, { 'LF_CLIPPRECISION' , , .T. } ) + aAdd( aDefRules, { 'LF_QUALITY' , , .T. } ) + aAdd( aDefRules, { 'LF_PITCHANDFAMILY' , , .T. } ) + aAdd( aDefRules, { 'LF_FACENAME' , , .T. } ) + aAdd( aDefRules, { '_INI_CH' , , .T. } ) + aAdd( aDefRules, { '_MENU_CH' , , .T. } ) + aAdd( aDefRules, { '_PRINT_CH' , , .T. } ) + aAdd( aDefRules, { '_COLORS_CH' , , .T. } ) + aAdd( aDefRules, { 'CLR_BLACK' , , .T. } ) + aAdd( aDefRules, { 'CLR_BLUE' , , .T. } ) + aAdd( aDefRules, { 'CLR_GREEN' , , .T. } ) + aAdd( aDefRules, { 'CLR_CYAN' , , .T. } ) + aAdd( aDefRules, { 'CLR_RED' , , .T. } ) + aAdd( aDefRules, { 'CLR_MAGENTA' , , .T. } ) + aAdd( aDefRules, { 'CLR_BROWN' , , .T. } ) + aAdd( aDefRules, { 'CLR_HGRAY' , , .T. } ) + aAdd( aDefRules, { 'CLR_LIGHTGRAY' , , .T. } ) + aAdd( aDefRules, { 'CLR_GRAY' , , .T. } ) + aAdd( aDefRules, { 'CLR_HBLUE' , , .T. } ) + aAdd( aDefRules, { 'CLR_HGREEN' , , .T. } ) + aAdd( aDefRules, { 'CLR_HCYAN' , , .T. } ) + aAdd( aDefRules, { 'CLR_HRED' , , .T. } ) + aAdd( aDefRules, { 'CLR_HMAGENTA' , , .T. } ) + aAdd( aDefRules, { 'CLR_YELLOW' , , .T. } ) + aAdd( aDefRules, { 'CLR_WHITE' , , .T. } ) + aAdd( aDefRules, { '_DLL_CH' , , .T. } ) + aAdd( aDefRules, { '_C_TYPES' , , .T. } ) + aAdd( aDefRules, { 'VOID' , , .T. } ) + aAdd( aDefRules, { 'BYTE' , , .T. } ) + aAdd( aDefRules, { 'CHAR' , , .T. } ) + aAdd( aDefRules, { 'WORD' , , .T. } ) + aAdd( aDefRules, { '_INT' , , .T. } ) + aAdd( aDefRules, { 'BOOL' , , .T. } ) + aAdd( aDefRules, { 'HDC' , , .T. } ) + aAdd( aDefRules, { 'LONG' , , .T. } ) + aAdd( aDefRules, { 'STRING' , , .T. } ) + aAdd( aDefRules, { 'LPSTR' , , .T. } ) + aAdd( aDefRules, { 'PTR' , , .T. } ) + aAdd( aDefRules, { '_DOUBLE' , , .T. } ) + aAdd( aDefRules, { 'DWORD' , , .T. } ) + aAdd( aDefRules, { '_FOLDER_CH' , , .T. } ) + aAdd( aDefRules, { '_OBJECTS_CH' , , .T. } ) + aAdd( aDefRules, { '_ODBC_CH' , , .T. } ) + aAdd( aDefRules, { '_DDE_CH' , , .T. } ) + aAdd( aDefRules, { 'WM_DDE_FIRST' , , .T. } ) + aAdd( aDefRules, { 'WM_DDE_INITIATE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_TERMINATE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_ADVISE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_UNADVISE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_ACK' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_DATA' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_REQUEST' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_POKE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_EXECUTE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WM_DDE_LAST' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { '_VIDEO_CH' , , .T. } ) + aAdd( aDefRules, { 'VK_LBUTTON' , , .T. } ) + aAdd( aDefRules, { 'VK_RBUTTON' , , .T. } ) + aAdd( aDefRules, { 'VK_CANCEL' , , .T. } ) + aAdd( aDefRules, { 'VK_MBUTTON' , , .T. } ) + aAdd( aDefRules, { 'VK_BACK' , , .T. } ) + aAdd( aDefRules, { 'VK_TAB' , , .T. } ) + aAdd( aDefRules, { 'VK_CLEAR' , , .T. } ) + aAdd( aDefRules, { 'VK_RETURN' , , .T. } ) + aAdd( aDefRules, { 'VK_SHIFT' , , .T. } ) + aAdd( aDefRules, { 'VK_CONTROL' , , .T. } ) + aAdd( aDefRules, { 'VK_MENU' , , .T. } ) + aAdd( aDefRules, { 'VK_PAUSE' , , .T. } ) + aAdd( aDefRules, { 'VK_CAPITAL' , , .T. } ) + aAdd( aDefRules, { 'VK_ESCAPE' , , .T. } ) + aAdd( aDefRules, { 'VK_SPACE' , , .T. } ) + aAdd( aDefRules, { 'VK_PRIOR' , , .T. } ) + aAdd( aDefRules, { 'VK_NEXT' , , .T. } ) + aAdd( aDefRules, { 'VK_END' , , .T. } ) + aAdd( aDefRules, { 'VK_HOME' , , .T. } ) + aAdd( aDefRules, { 'VK_LEFT' , , .T. } ) + aAdd( aDefRules, { 'VK_UP' , , .T. } ) + aAdd( aDefRules, { 'VK_RIGHT' , , .T. } ) + aAdd( aDefRules, { 'VK_DOWN' , , .T. } ) + aAdd( aDefRules, { 'VK_SELECT' , , .T. } ) + aAdd( aDefRules, { 'VK_PRINT' , , .T. } ) + aAdd( aDefRules, { 'VK_EXECUTE' , , .T. } ) + aAdd( aDefRules, { 'VK_SNAPSHOT' , , .T. } ) + aAdd( aDefRules, { 'VK_INSERT' , , .T. } ) + aAdd( aDefRules, { 'VK_DELETE' , , .T. } ) + aAdd( aDefRules, { 'VK_HELP' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD0' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD1' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD2' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD3' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD4' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD5' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD6' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD7' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD8' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMPAD9' , , .T. } ) + aAdd( aDefRules, { 'VK_MULTIPLY' , , .T. } ) + aAdd( aDefRules, { 'VK_ADD' , , .T. } ) + aAdd( aDefRules, { 'VK_SEPARATOR' , , .T. } ) + aAdd( aDefRules, { 'VK_SUBTRACT' , , .T. } ) + aAdd( aDefRules, { 'VK_DECIMAL' , , .T. } ) + aAdd( aDefRules, { 'VK_DIVIDE' , , .T. } ) + aAdd( aDefRules, { 'VK_F1' , , .T. } ) + aAdd( aDefRules, { 'VK_F2' , , .T. } ) + aAdd( aDefRules, { 'VK_F3' , , .T. } ) + aAdd( aDefRules, { 'VK_F4' , , .T. } ) + aAdd( aDefRules, { 'VK_F5' , , .T. } ) + aAdd( aDefRules, { 'VK_F6' , , .T. } ) + aAdd( aDefRules, { 'VK_F7' , , .T. } ) + aAdd( aDefRules, { 'VK_F8' , , .T. } ) + aAdd( aDefRules, { 'VK_F9' , , .T. } ) + aAdd( aDefRules, { 'VK_F10' , , .T. } ) + aAdd( aDefRules, { 'VK_F11' , , .T. } ) + aAdd( aDefRules, { 'VK_F12' , , .T. } ) + aAdd( aDefRules, { 'VK_F13' , , .T. } ) + aAdd( aDefRules, { 'VK_F14' , , .T. } ) + aAdd( aDefRules, { 'VK_F15' , , .T. } ) + aAdd( aDefRules, { 'VK_F16' , , .T. } ) + aAdd( aDefRules, { 'VK_F17' , , .T. } ) + aAdd( aDefRules, { 'VK_F18' , , .T. } ) + aAdd( aDefRules, { 'VK_F19' , , .T. } ) + aAdd( aDefRules, { 'VK_F20' , , .T. } ) + aAdd( aDefRules, { 'VK_F21' , , .T. } ) + aAdd( aDefRules, { 'VK_F22' , , .T. } ) + aAdd( aDefRules, { 'VK_F23' , , .T. } ) + aAdd( aDefRules, { 'VK_F24' , , .T. } ) + aAdd( aDefRules, { 'VK_NUMLOCK' , , .T. } ) + aAdd( aDefRules, { 'VK_SCROLL' , , .T. } ) + aAdd( aDefRules, { 'ACC_NORMAL' , , .T. } ) + aAdd( aDefRules, { 'ACC_SHIFT' , , .T. } ) + aAdd( aDefRules, { 'ACC_CONTROL' , , .T. } ) + aAdd( aDefRules, { 'ACC_ALT' , , .T. } ) + aAdd( aDefRules, { '_TREE_CH' , , .T. } ) + aAdd( aDefRules, { '_WINAPI_CH' , , .T. } ) + aAdd( aDefRules, { 'FM_CLICK' , , .T. } ) + aAdd( aDefRules, { 'FM_SCROLLUP' , , .T. } ) + aAdd( aDefRules, { 'FM_SCROLLDOWN' , , .T. } ) + aAdd( aDefRules, { 'FM_SCROLLPGUP' , , .T. } ) + aAdd( aDefRules, { 'FM_SCROLLPGDN' , , .T. } ) + aAdd( aDefRules, { 'FM_CHANGE' , , .T. } ) + aAdd( aDefRules, { 'FM_COLOR' , , .T. } ) + aAdd( aDefRules, { 'FM_MEASURE' , , .T. } ) + aAdd( aDefRules, { 'FM_DRAW' , , .T. } ) + aAdd( aDefRules, { 'FM_LOSTFOCUS' , , .T. } ) + aAdd( aDefRules, { 'FM_THUMBPOS' , , .T. } ) + aAdd( aDefRules, { 'FM_CLOSEAREA' , , .T. } ) + aAdd( aDefRules, { 'FM_VBXEVENT' , , .T. } ) + aAdd( aDefRules, { 'FM_HELPF1' , , .T. } ) + aAdd( aDefRules, { 'FM_THUMBTRACK' , , .T. } ) + aAdd( aDefRules, { 'FM_DROPOVER' , , .T. } ) + aAdd( aDefRules, { 'FM_CHANGEFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_ASYNCSELECT' , , .T. } ) + aAdd( aDefRules, { 'FM_CLOSEUP' , , .T. } ) + aAdd( aDefRules, { 'WM_TASKBAR' , , .T. } ) + aAdd( aDefRules, { 'IDOK' , , .T. } ) + aAdd( aDefRules, { 'ID_OK' , , .T. } ) + aAdd( aDefRules, { 'IDCANCEL' , , .T. } ) + aAdd( aDefRules, { 'BN_CLICKED' , , .T. } ) + aAdd( aDefRules, { 'CS_VREDRAW' , , .T. } ) + aAdd( aDefRules, { 'CS_HREDRAW' , , .T. } ) + aAdd( aDefRules, { 'CS_GLOBALCLASS' , , .T. } ) + aAdd( aDefRules, { 'CS_OWNDC' , , .T. } ) + aAdd( aDefRules, { 'CS_CLASSDC' , , .T. } ) + aAdd( aDefRules, { 'CS_PARENTDC' , , .T. } ) + aAdd( aDefRules, { 'CS_BYTEALIGNCLIENT' , , .T. } ) + aAdd( aDefRules, { 'CS_BYTEALIGNWINDOW' , , .T. } ) + aAdd( aDefRules, { 'WS_OVERLAPPED' , , .T. } ) + aAdd( aDefRules, { 'WS_POPUP' , , .T. } ) + aAdd( aDefRules, { 'WS_CHILD' , , .T. } ) + aAdd( aDefRules, { 'WS_CLIPSIBLINGS' , , .T. } ) + aAdd( aDefRules, { 'WS_CLIPCHILDREN' , , .T. } ) + aAdd( aDefRules, { 'WS_VISIBLE' , , .T. } ) + aAdd( aDefRules, { 'WS_DISABLED' , , .T. } ) + aAdd( aDefRules, { 'WS_MINIMIZE' , , .T. } ) + aAdd( aDefRules, { 'WS_MAXIMIZE' , , .T. } ) + aAdd( aDefRules, { 'WS_CAPTION' , , .T. } ) + aAdd( aDefRules, { 'WS_BORDER' , , .T. } ) + aAdd( aDefRules, { 'WS_DLGFRAME' , , .T. } ) + aAdd( aDefRules, { 'WS_VSCROLL' , , .T. } ) + aAdd( aDefRules, { 'WS_HSCROLL' , , .T. } ) + aAdd( aDefRules, { 'WS_SYSMENU' , , .T. } ) + aAdd( aDefRules, { 'WS_THICKFRAME' , , .T. } ) + aAdd( aDefRules, { 'WS_MINIMIZEBOX' , , .T. } ) + aAdd( aDefRules, { 'WS_MAXIMIZEBOX' , , .T. } ) + aAdd( aDefRules, { 'WS_GROUP' , , .T. } ) + aAdd( aDefRules, { 'WS_TABSTOP' , , .T. } ) + aAdd( aDefRules, { 'WS_OVERLAPPEDWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WS_POPUPWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'WS_CHILDWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'ES_LEFT' , , .T. } ) + aAdd( aDefRules, { 'ES_RIGHT' , , .T. } ) + aAdd( aDefRules, { 'ES_MULTILINE' , , .T. } ) + aAdd( aDefRules, { 'ES_AUTOHSCROLL' , , .T. } ) + aAdd( aDefRules, { 'ES_READONLY' , , .T. } ) + aAdd( aDefRules, { 'ES_WANTRETURN' , , .T. } ) + aAdd( aDefRules, { 'WM_NULL' , , .T. } ) + aAdd( aDefRules, { 'WM_DESTROY' , , .T. } ) + aAdd( aDefRules, { 'WM_MOVE' , , .T. } ) + aAdd( aDefRules, { 'WM_SIZE' , , .T. } ) + aAdd( aDefRules, { 'WM_SETFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_KILLFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_PAINT' , , .T. } ) + aAdd( aDefRules, { 'WM_CLOSE' , , .T. } ) + aAdd( aDefRules, { 'WM_QUERYENDSESSION' , , .T. } ) + aAdd( aDefRules, { 'WM_QUIT' , , .T. } ) + aAdd( aDefRules, { 'WM_SYSCOLORCHANGE' , , .T. } ) + aAdd( aDefRules, { 'WM_ENDSESSION' , , .T. } ) + aAdd( aDefRules, { 'WM_SYSTEMERROR' , , .T. } ) + aAdd( aDefRules, { 'WM_WININICHANGE' , , .T. } ) + aAdd( aDefRules, { 'WM_DEVMODECHANGE' , , .T. } ) + aAdd( aDefRules, { 'WM_FONTCHANGE' , , .T. } ) + aAdd( aDefRules, { 'WM_TIMECHANGE' , , .T. } ) + aAdd( aDefRules, { 'WM_SPOOLERSTATUS' , , .T. } ) + aAdd( aDefRules, { 'WM_COMPACTING' , , .T. } ) + aAdd( aDefRules, { 'WM_GETDLGCODE' , , .T. } ) + aAdd( aDefRules, { 'WM_CHAR' , , .T. } ) + aAdd( aDefRules, { 'WM_COMMAND' , , .T. } ) + aAdd( aDefRules, { 'WM_MOUSEMOVE' , , .T. } ) + aAdd( aDefRules, { 'WM_LBUTTONDOWN' , , .T. } ) + aAdd( aDefRules, { 'WM_LBUTTONUP' , , .T. } ) + aAdd( aDefRules, { 'WM_RBUTTONDOWN' , , .T. } ) + aAdd( aDefRules, { 'WM_RBUTTONUP' , , .T. } ) + aAdd( aDefRules, { 'WM_KEYDOWN' , , .T. } ) + aAdd( aDefRules, { 'WM_KEYUP' , , .T. } ) + aAdd( aDefRules, { 'WM_INITDIALOG' , , .T. } ) + aAdd( aDefRules, { 'WM_TIMER' , , .T. } ) + aAdd( aDefRules, { 'WM_HSCROLL' , , .T. } ) + aAdd( aDefRules, { 'WM_VSCROLL' , , .T. } ) + aAdd( aDefRules, { 'WM_QUERYNEWPALETTE' , , .T. } ) + aAdd( aDefRules, { 'WM_PALETTEISCHANGING' , , .T. } ) + aAdd( aDefRules, { 'WM_PALETTECHANGED' , , .T. } ) + aAdd( aDefRules, { 'WM_USER' , , .T. } ) + aAdd( aDefRules, { 'DS_SYSMODAL' , , .T. } ) + aAdd( aDefRules, { 'DS_MODALFRAME' , , .T. } ) + aAdd( aDefRules, { 'DLGC_WANTARROWS' , , .T. } ) + aAdd( aDefRules, { 'DLGC_WANTTAB' , , .T. } ) + aAdd( aDefRules, { 'DLGC_WANTALLKEYS' , , .T. } ) + aAdd( aDefRules, { 'DLGC_WANTCHARS' , , .T. } ) + aAdd( aDefRules, { 'LBS_NOTIFY' , , .T. } ) + aAdd( aDefRules, { 'LBS_SORT' , , .T. } ) + aAdd( aDefRules, { 'LBS_OWNERDRAWFIXED' , , .T. } ) + aAdd( aDefRules, { 'LBS_USETABSTOPS' , , .T. } ) + aAdd( aDefRules, { 'LBS_NOINTEGRALHEIGHT' , , .T. } ) + aAdd( aDefRules, { 'LBS_WANTKEYBOARDINPUT' , , .T. } ) + aAdd( aDefRules, { 'LBS_DISABLENOSCROLL' , , .T. } ) + aAdd( aDefRules, { 'LBS_STANDARD' , , .T. } ) + aAdd( aDefRules, { 'CBS_SIMPLE' , , .T. } ) + aAdd( aDefRules, { 'CBS_DROPDOWN' , , .T. } ) + aAdd( aDefRules, { 'CBS_DROPDOWNLIST' , , .T. } ) + aAdd( aDefRules, { 'CBS_OWNERDRAWFIXED' , , .T. } ) + aAdd( aDefRules, { 'CBS_AUTOHSCROLL' , , .T. } ) + aAdd( aDefRules, { 'CBS_OEMCONVERT' , , .T. } ) + aAdd( aDefRules, { 'CBS_SORT' , , .T. } ) + aAdd( aDefRules, { 'CBS_DISABLENOSCROLL' , , .T. } ) + aAdd( aDefRules, { 'SB_LINEUP' , , .T. } ) + aAdd( aDefRules, { 'SB_LINELEFT' , , .T. } ) + aAdd( aDefRules, { 'SB_LINEDOWN' , , .T. } ) + aAdd( aDefRules, { 'SB_LINERIGHT' , , .T. } ) + aAdd( aDefRules, { 'SB_PAGEUP' , , .T. } ) + aAdd( aDefRules, { 'SB_PAGELEFT' , , .T. } ) + aAdd( aDefRules, { 'SB_PAGEDOWN' , , .T. } ) + aAdd( aDefRules, { 'SB_PAGERIGHT' , , .T. } ) + aAdd( aDefRules, { 'SB_THUMBPOSITION' , , .T. } ) + aAdd( aDefRules, { 'SB_THUMBTRACK' , , .T. } ) + aAdd( aDefRules, { 'SB_TOP' , , .T. } ) + aAdd( aDefRules, { 'SB_LEFT' , , .T. } ) + aAdd( aDefRules, { 'SB_BOTTOM' , , .T. } ) + aAdd( aDefRules, { 'SB_RIGHT' , , .T. } ) + aAdd( aDefRules, { 'SB_ENDSCROLL' , , .T. } ) + aAdd( aDefRules, { 'SBS_HORZ' , , .T. } ) + aAdd( aDefRules, { 'SBS_VERT' , , .T. } ) + aAdd( aDefRules, { 'BS_PUSHBUTTON' , , .T. } ) + aAdd( aDefRules, { 'BS_DEFPUSHBUTTON' , , .T. } ) + aAdd( aDefRules, { 'BS_CHECKBOX' , , .T. } ) + aAdd( aDefRules, { 'BS_AUTOCHECKBOX' , , .T. } ) + aAdd( aDefRules, { 'BS_GROUPBOX' , , .T. } ) + aAdd( aDefRules, { 'BS_AUTORADIOBUTTON' , , .T. } ) + aAdd( aDefRules, { 'PS_SOLID' , , .T. } ) + aAdd( aDefRules, { 'PS_DASH' , , .T. } ) + aAdd( aDefRules, { 'PS_DOT' , , .T. } ) + aAdd( aDefRules, { 'PS_DASHDOT' , , .T. } ) + aAdd( aDefRules, { 'PS_DASHDOTDOT' , , .T. } ) + aAdd( aDefRules, { 'PS_NULL' , , .T. } ) + aAdd( aDefRules, { 'PS_INSIDEFRAME' , , .T. } ) + aAdd( aDefRules, { 'SS_BLACKRECT' , , .T. } ) + aAdd( aDefRules, { 'SS_WHITERECT' , , .T. } ) + aAdd( aDefRules, { 'SS_WHITEFRAME' , , .T. } ) + aAdd( aDefRules, { 'SS_LEFT' , , .T. } ) + aAdd( aDefRules, { 'SS_SIMPLE' , , .T. } ) + aAdd( aDefRules, { 'DLGINIT' , , .T. } ) + aAdd( aDefRules, { 'FN_UNZIP' , , .T. } ) + aAdd( aDefRules, { 'Set3dLook' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'CRLF' , , .T. } ) + aAdd( aDefRules, { 'bSETGET' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + + /* Translates */ + aAdd( aTransRules, { 'RGB' , { { 1, 0, '(', '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, ',', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) + aAdd( aTransRules, { 'NOREF' , { { 0, 0, '(', NIL, NIL }, { 0, 1, '@', NIL, NIL }, { 1, 0, NIL, '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) + aAdd( aTransRules, { 'DLL32' , , .F. } ) + aAdd( aTransRules, { '_PARM_BLOCK_10_' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + + /* Commands */ + aAdd( aCommRules, { 'SET' , { { 1, 0, NIL, ':', { '_3DLOOK', '3DLOOK', 'LOOK3D', 'LOOK 3D', '3D LOOK' } }, { 2, 0, NIL, ':', { 'ON', 'OFF', '&' } } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'RESOURCES', NIL, NIL }, { 1, 0, 'TO', '<', NIL }, { 1002, 1, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'RESOURCES', NIL, NIL }, { 0, 0, 'TO', NIL, NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'HELPFILE', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'HELP', NIL, NIL }, { 0, 0, 'TOPIC', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 1, 0, NIL, '<', NIL }, { 1002, 1, 'AS', ':', { 'CHARACTER', 'NUMERIC', 'LOGICAL', 'DATE' } }, { 3, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 4, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'DIALOG', '<', NIL }, { 2, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'TITLE', '<', NIL }, { 5, 1, 'FROM', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, -1, 'TO', '<', NIL }, { 8, -1, ',', '<', NIL }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'LIBRARY', 'DLL' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'VBX' } }, { 14, 1, 'STYLE', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, 'BRUSH', '<', NIL }, { 19, 1, NIL, ':', { 'WINDOW', 'DIALOG', 'OF' } }, { 20, -1, NIL, '<', NIL }, { 21, 1, NIL, ':', { 'PIXEL' } }, { 22, 1, 'ICON', '<', NIL }, { 23, 1, 'FONT', '<', NIL }, { 24, 1, NIL, ':', { 'HELP', 'HELPID' } }, { 25, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'DIALOG', '<', NIL }, { 2, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 1003, 1, NIL, ':', { 'NOWAIT', 'NOMODAL' } }, { 1004, 1, 'WHEN', '<', NIL }, { 1005, 1, 'VALID', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1006, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1007, -1, 'INIT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'MOVE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1009, -1, 'PAINT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1010, -1, 'CLICK', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'FONT', '<', NIL }, { 2, 1, 'NAME', '<', NIL }, { 3, 1, 'SIZE', '<', NIL }, { 4, -1, ',', '<', NIL }, { 1005, 1, NIL, ':', { 'FROM USER' } }, { 1006, 1, NIL, ':', { 'BOLD' } }, { 1007, 1, NIL, ':', { 'ITALIC' } }, { 1008, 1, NIL, ':', { 'UNDERLINE' } }, { 1009, 1, 'WEIGHT', '<', NIL }, { 1010, 1, 'OF', '<', NIL }, { 1011, 1, 'NESCAPEMENT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEACTIVATE' , { { 1, 0, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'FONT', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'INI' , { { 1, 0, NIL, '<', NIL }, { 2, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 3, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'GET' , { { 1, 0, NIL, '<', NIL }, { 2, 1, 'SECTION', '<', NIL }, { 3, 1, 'ENTRY', '<', NIL }, { 4, 1, 'DEFAULT', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'INI' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 1, 1, 'SECTION', '<', NIL }, { 2, 1, 'ENTRY', '<', NIL }, { 3, 1, 'TO', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'INI' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ENDINI' , , .T. } ) + aAdd( aCommRules, { 'MENU' , { { 1001, 1, NIL, '<', { 'POPUP' } }, { 2, 1, NIL, ':', { 'POPUP' } } } , .T. } ) + aAdd( aCommRules, { 'MENUITEM' , { { 1001, 1, NIL, '<', { 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACTION', 'BLOCK', 'OF', 'MENU', 'SYSMENU', 'ACCELERATOR', 'HELP', 'HELP ID', 'HELPID', 'WHEN', 'BREAK' } }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 1, NIL, '<', { 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACTION', 'BLOCK', 'OF', 'MENU', 'SYSMENU', 'ACCELERATOR', 'HELP', 'HELP ID', 'HELPID', 'WHEN', 'BREAK' } }, { 3, 1, 'MESSAGE', '<', NIL }, { 4, 1, NIL, ':', { 'CHECK', 'CHECKED', 'MARK' } }, { 1005, 1, NIL, ':', { 'ENABLED', 'DISABLED' } }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 9, -1, NIL, '<', NIL }, { 1010, 1, 'ACTION', 'A', NIL }, { 11, 1, 'BLOCK', '<', NIL }, { 12, 1, NIL, ':', { 'OF', 'MENU', 'SYSMENU' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'ACCELERATOR', '<', NIL }, { 15, -1, ',', '<', NIL }, { 16, 1, NIL, ':', { 'HELP' } }, { 17, 1, NIL, ':', { 'HELP ID', 'HELPID' } }, { 18, -1, NIL, '<', NIL }, { 1019, 1, 'WHEN', '<', NIL }, { 20, 1, NIL, ':', { 'BREAK' } } } , .T. } ) + aAdd( aCommRules, { 'MRU' , { { 1, 0, NIL, '<', NIL }, { 2, 1, NIL, ':', { 'INI', 'ININAME', 'FILENAME', 'NAME', 'DISK' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'SECTION', '<', NIL }, { 5, 1, NIL, ':', { 'SIZE', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'MESSAGE', '<', NIL }, { 1008, 1, 'ACTION', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SEPARATOR' , { { 1001, 1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ENDMENU' , , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'MENU', '<', NIL }, { 2, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'POPUP' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'MENUITEM', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'ACTION', 'BLOCK', 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACCELERATOR', 'HELP ID', 'HELPID', 'WHEN' } }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 1, NIL, '<', { 'ID', 'ACTION', 'BLOCK', 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACCELERATOR', 'HELP ID', 'HELPID', 'WHEN' } }, { 3, 1, 'ID', '<', NIL }, { 4, -1, NIL, ':', { 'OF', 'MENU' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, 'ACTION', '<', NIL }, { 7, 1, 'BLOCK', '<', NIL }, { 8, 1, 'MESSAGE', '<', NIL }, { 9, 1, NIL, ':', { 'CHECK', 'CHECKED', 'MARK' } }, { 1010, 1, NIL, ':', { 'ENABLED', 'DISABLED' } }, { 11, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 14, -1, NIL, '<', NIL }, { 15, 1, 'ACCELERATOR', '<', NIL }, { 16, -1, ',', '<', NIL }, { 17, 1, NIL, ':', { 'HELP ID', 'HELPID' } }, { 18, -1, NIL, '<', NIL }, { 1019, 1, 'WHEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'MENU', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'MENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL }, { 2, 0, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, NIL, ':', { 'POPUP', 'MENU' } }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'AT', '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SYSMENU', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 3, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ENDSYSMENU' , , .T. } ) + aAdd( aCommRules, { 'PRINT' , { { 1001, 1, NIL, '<', { 'NAME', 'TITLE', 'DOC', 'FROM USER', 'PREVIEW', 'TO' } }, { 1002, 1, NIL, ':', { 'NAME', 'TITLE', 'DOC' } }, { 1003, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FROM USER' } }, { 5, 1, NIL, ':', { 'PREVIEW' } }, { 6, 2, NIL, ':', { 'MODAL' } }, { 7, 1, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'PRINTER' , { { 1001, 1, NIL, '<', { 'NAME', 'DOC', 'FROM USER', 'PREVIEW', 'TO' } }, { 1002, 1, NIL, ':', { 'NAME', 'DOC' } }, { 1003, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FROM USER' } }, { 5, 1, NIL, ':', { 'PREVIEW' } }, { 6, 2, NIL, ':', { 'MODAL' } }, { 7, 1, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'PAGE' , , .T. } ) + aAdd( aCommRules, { 'ENDPAGE' , , .T. } ) + aAdd( aCommRules, { 'ENDPRINT' , , .T. } ) + aAdd( aCommRules, { 'ENDPRINTER' , , .T. } ) + aAdd( aCommRules, { 'DLL' , { { 1001, 1, NIL, ':', { 'STATIC' } }, { 2, 0, 'FUNCTION', '<', NIL }, { 0, 0, '(', NIL, NIL }, { 1003, 1, NIL, '<', { ',', ')' } }, { 1004, -1, 'AS', '<', NIL }, { 1005, 1, ',', '<', NIL }, { 1006, -1, 'AS', '<', NIL }, { 0, 0, ')', NIL, NIL }, { 7, 0, 'AS', '<', NIL }, { 1008, 1, NIL, ':', { 'PASCAL' } }, { 1009, 1, 'FROM', '<', NIL }, { 10, 0, 'LIB', '*', NIL } } , .T. } ) + aAdd( aCommRules, { 'DLL32' , { { 1001, 1, NIL, ':', { 'STATIC' } }, { 2, 0, 'FUNCTION', '<', NIL }, { 0, 0, '(', NIL, NIL }, { 1003, 1, NIL, '<', { ',', ')' } }, { 1004, -1, 'AS', '<', NIL }, { 1005, 1, ',', '<', NIL }, { 1006, -1, 'AS', '<', NIL }, { 0, 0, ')', NIL, NIL }, { 7, 0, 'AS', '<', NIL }, { 1008, 1, NIL, ':', { 'PASCAL' } }, { 1009, 1, 'FROM', '<', NIL }, { 10, 0, 'LIB', '*', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'FOLDER', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES', 'PIXEL', 'DESIGN', 'COLOR', 'COLORS', 'OPTION', 'SIZE', 'MESSAGE', 'ADJUST', 'FONT' } }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1007, -1, NIL, 'A', NIL }, { 8, 1, NIL, ':', { 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES' } }, { 9, -1, NIL, '<', NIL }, { 1010, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'PIXEL' } }, { 12, 1, NIL, ':', { 'DESIGN' } }, { 13, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 14, -1, NIL, '<', NIL }, { 15, 2, ',', '<', NIL }, { 16, 1, 'OPTION', '<', NIL }, { 17, 1, 'SIZE', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, 'MESSAGE', '<', NIL }, { 20, 1, NIL, ':', { 'ADJUST' } }, { 21, 1, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'FOLDER', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES', 'COLOR', 'COLORS', 'OPTION', 'ON', 'ADJUST' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1006, -1, NIL, 'A', NIL }, { 7, 1, NIL, ':', { 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES' } }, { 8, -1, NIL, '<', NIL }, { 1009, 2, ',', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL }, { 13, 1, 'OPTION', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'CHANGE', '<', NIL }, { 15, 1, NIL, ':', { 'ADJUST' } } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'TABS', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'ACTION', 'EXECUTE', 'ON CHANGE', 'PIXEL', 'DESIGN', 'COLOR', 'COLORS', 'OPTION', 'SIZE', 'MESSAGE' } }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1007, -1, NIL, 'A', NIL }, { 1008, 1, NIL, ':', { 'ACTION', 'EXECUTE', 'ON CHANGE' } }, { 1009, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'PIXEL' } }, { 11, 1, NIL, ':', { 'DESIGN' } }, { 12, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 13, -1, NIL, '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, 'OPTION', '<', NIL }, { 16, 1, 'SIZE', '<', NIL }, { 17, -1, ',', '<', NIL }, { 18, 1, 'MESSAGE', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'TABS', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'ACTION', 'EXECUTE', 'COLOR', 'COLORS', 'OPTION' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1006, -1, NIL, 'A', NIL }, { 1007, 1, NIL, ':', { 'ACTION', 'EXECUTE' } }, { 1008, -1, NIL, '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'OPTION', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 1, 0, 'PAGES', '<', NIL }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'OF', '<', NIL }, { 1004, 1, 'DIALOGS', 'A', NIL }, { 5, 1, 'OPTION', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1006, -1, 'CHANGE', '<', NIL }, { 7, 1, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'ODBC', '<', NIL }, { 2, 1, 'NAME', '<', NIL }, { 3, 1, 'USER', '<', NIL }, { 4, 1, 'PASSWORD', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ODBC' , { { 1, 0, NIL, '<', NIL }, { 2, 0, NIL, ':', { 'SQL', 'EXECUTE' } }, { 3, 0, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, NIL, ':', { 'DDE', 'LINK' } }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'SERVICE', '<', NIL }, { 4, 1, 'TOPIC', '<', NIL }, { 5, 1, 'ITEM', '<', NIL }, { 1006, 1, 'ACTION', '<', NIL }, { 1007, 1, 'VALID', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, NIL, ':', { 'DDE', 'LINK' } }, { 2, 0, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'VIDEO', NIL, NIL }, { 1001, 1, NIL, '<', { 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'VIDEO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'PLAY' , { { 1, 0, 'VIDEO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'VIDEO', NIL, NIL }, { 1003, 1, NIL, '<', { 'SIZE', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'NOBORDER' } }, { 4, 1, 'SIZE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'VIDEO', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'WHEN', 'VALID', 'FILE', 'FILENAME', 'DISK' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, 'WHEN', '<', NIL }, { 6, 1, 'VALID', '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'TREE' , { { 1001, 1, NIL, '<', { 'BITMAPS' } }, { 2, 1, 'BITMAPS', '<', NIL }, { 3, -1, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'TREEITEM' , { { 1001, 1, NIL, '<', NIL }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'RESOURCE', '<', NIL }, { 4, 2, ',', '<', NIL }, { 5, 1, 'FILENAME', '<', NIL }, { 6, 2, ',', '<', NIL }, { 7, 1, NIL, ':', { 'OPENED', 'OPEN' } } } , .T. } ) + aAdd( aCommRules, { 'ENDTREE' , , .T. } ) + aAdd( aCommRules, { 'SET' , { { 1, 0, 'MULTIPLE', ':', { 'ON', 'OFF' } } } , .T. } ) + aAdd( aCommRules, { 'DEFAULT' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ':=', '<', NIL }, { 1003, 1, ',', '<', NIL }, { 1004, -1, ':=', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DO' , , .T. } ) + aAdd( aCommRules, { 'UNTIL' , { { 1, 0, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'IDLEACTION', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DATABASE' , { { 1, 0, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'RELEASE' , { { 1, 0, NIL, '<', NIL }, { 2, 0, NIL, '<', NIL }, { 1003, 1, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BRUSH', NIL, NIL }, { 1001, 1, NIL, '<', { 'STYLE', 'COLOR', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'NAME', 'RESNAME' } }, { 1002, 1, 'STYLE', '<', NIL }, { 3, 1, 'COLOR', '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 7, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'BRUSH', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'PEN', '<', NIL }, { 2, 1, 'STYLE', '<', NIL }, { 3, 1, 'WIDTH', '<', NIL }, { 4, 1, 'COLOR', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'PEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BUTTONBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'SIZE', 'BUTTONSIZE', 'SIZEBUTTON', '_3D', '3D', '3DLOOK', '_3DLOOK', 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT', 'OF', 'WINDOW', 'DIALOG', 'CURSOR' } }, { 2, 1, NIL, ':', { 'SIZE', 'BUTTONSIZE', 'SIZEBUTTON' } }, { 3, -1, NIL, '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, NIL, ':', { '_3D', '3D', '3DLOOK', '_3DLOOK' } }, { 1006, 1, NIL, ':', { 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT' } }, { 7, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, 'CURSOR', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BUTTONBAR', NIL, NIL }, { 1003, 1, NIL, '<', { 'SIZE', 'BUTTONSIZE', '3D', '3DLOOK', '_3DLOOK', 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT', 'OF', 'WINDOW', 'DIALOG', 'CURSOR' } }, { 4, 1, 'SIZE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'BUTTONSIZE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, NIL, ':', { '3D', '3DLOOK', '_3DLOOK' } }, { 1009, 1, NIL, ':', { 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT' } }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, 'CURSOR', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BUTTON', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'BUTTONBAR', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ACTION', 'EXEC', 'GROUP', 'MESSAGE', 'ADJUST', 'WHEN', 'TOOLTIP', 'PRESSED', 'ON', 'AT', 'PROMPT', 'FONT', 'NOBORDER', 'FLAT', 'MENU' } }, { 2, 1, NIL, ':', { 'OF', 'BUTTONBAR' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 2, ',', '<', NIL }, { 1007, 3, ',', '<', NIL }, { 8, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 3, ',', '<', NIL }, { 1012, 1, NIL, ':', { 'ACTION', 'EXEC' } }, { 1013, -1, NIL, 'A', NIL }, { 14, 1, NIL, ':', { 'GROUP' } }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'ADJUST' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'TOOLTIP', '<', NIL }, { 19, 1, NIL, ':', { 'PRESSED' } }, { 1000, 1, 'ON', NIL, NIL }, { 1020, -1, 'DROP', '<', NIL }, { 21, 1, 'AT', '<', NIL }, { 22, 1, 'PROMPT', '<', NIL }, { 23, 1, 'FONT', '<', NIL }, { 1024, 1, NIL, ':', { 'NOBORDER', 'FLAT' } }, { 1025, 1, 'MENU', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BTNBMP', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'BUTTONBAR', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ACTION', 'EXEC', 'ON CLICK', 'MESSAGE', 'ADJUST', 'WHEN', 'UPDATE', 'TOOLTIP', 'PROMPT', 'FONT', 'NOBORDER' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'BUTTONBAR' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 6, -1, NIL, '<', NIL }, { 7, 2, ',', '<', NIL }, { 1008, 3, ',', '<', NIL }, { 9, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 1012, 3, ',', '<', NIL }, { 1013, 1, NIL, ':', { 'ACTION', 'EXEC', 'ON CLICK' } }, { 1014, -1, NIL, 'A', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'ADJUST' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, NIL, ':', { 'UPDATE' } }, { 19, 1, 'TOOLTIP', '<', NIL }, { 20, 1, 'PROMPT', '<', NIL }, { 21, 1, 'FONT', '<', NIL }, { 1022, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BTNBMP', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'SIZE', 'ACTION', 'OF', 'WINDOW', 'DIALOG', 'MESSAGE', 'WHEN', 'ADJUST', 'UPDATE', 'PROMPT', 'FONT', 'NOBORDER' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 2, ',', '<', NIL }, { 1007, 3, ',', '<', NIL }, { 8, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 3, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 1014, 1, 'ACTION', 'A', NIL }, { 15, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 16, -1, NIL, '<', NIL }, { 17, 1, 'MESSAGE', '<', NIL }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, NIL, ':', { 'ADJUST' } }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, 'PROMPT', '<', NIL }, { 22, 1, 'FONT', '<', NIL }, { 23, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'ICON', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESOURCE', 'RESNAME', 'FILE', 'FILENAME', 'DISK', 'BORDER', 'ON', 'OF', 'WINDOW', 'DIALOG', 'UPDATE', 'WHEN', 'COLOR' } }, { 4, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'BORDER' } }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CLICK', '<', NIL }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, NIL, ':', { 'UPDATE' } }, { 13, 1, 'WHEN', '<', NIL }, { 14, 1, 'COLOR', '<', NIL }, { 15, 2, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 1001, 1, 'ICON', '<', NIL }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 6, -1, NIL, '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 7, -1, 'CLICK', '<', NIL }, { 8, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'UPDATE' } }, { 11, 1, 'WHEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'ICON', '<', NIL }, { 2, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, 'WHEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BUTTON', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'PROMPT', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, 'SIZE', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, 1, 'ACTION', '<', NIL }, { 8, 1, NIL, ':', { 'DEFAULT' } }, { 9, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 10, -1, NIL, '<', NIL }, { 11, 1, NIL, ':', { 'HELP', 'HELPID', 'HELP ID' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, NIL, ':', { 'PIXEL' } }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, NIL, ':', { 'UPDATE' } }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, 'VALID', '<', NIL }, { 20, 1, NIL, ':', { 'CANCEL' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BUTTON', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'ACTION', 'HELP', 'HELPID', 'HELP ID', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'PROMPT', 'CANCEL' } }, { 2, 1, 'ID', '<', NIL }, { 3, 2, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -2, NIL, '<', NIL }, { 1005, 1, 'ACTION', 'A', NIL }, { 6, 1, NIL, ':', { 'HELP', 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'MESSAGE', '<', NIL }, { 9, 1, NIL, ':', { 'UPDATE' } }, { 10, 1, 'WHEN', '<', NIL }, { 11, 1, 'VALID', '<', NIL }, { 12, 1, 'PROMPT', '<', NIL }, { 13, 1, NIL, ':', { 'CANCEL' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'CHECKBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'ID', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 1008, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 1009, -1, NIL, '<', NIL }, { 10, 1, 'VALID', '<', NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 14, 1, 'MESSAGE', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'WHEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'CHECKBOX', NIL, NIL }, { 1003, 1, NIL, '<', { 'PROMPT', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'HELPID', 'HELP ID', 'FONT', 'ON CLICK', 'ON CHANGE', 'VALID', 'COLOR', 'COLORS', 'DESIGN', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN' } }, { 0, -1, 'VAR', NIL, NIL }, { 1004, 1, NIL, '<', { 'PROMPT', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'HELPID', 'HELP ID', 'FONT', 'ON CLICK', 'ON CHANGE', 'VALID', 'COLOR', 'COLORS', 'DESIGN', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN' } }, { 5, 1, 'PROMPT', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'SIZE', '<', NIL }, { 9, -1, ',', '<', NIL }, { 10, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, 'FONT', '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 1014, -1, NIL, '<', NIL }, { 15, 1, 'VALID', '<', NIL }, { 16, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 17, -1, NIL, '<', NIL }, { 18, 2, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'COMBOBOX', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'SIZE', '<', NIL }, { 8, -1, ',', '<', NIL }, { 9, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 10, -1, NIL, '<', NIL }, { 11, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 12, -1, NIL, '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1013, -1, 'CHANGE', '<', NIL }, { 14, 1, 'VALID', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, NIL, ':', { 'PIXEL' } }, { 19, 1, 'FONT', '<', NIL }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, NIL, ':', { 'DESIGN' } }, { 24, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1025, -1, 'DRAWITEM', '<', NIL }, { 26, 1, 'STYLE', '<', NIL }, { 27, 1, 'PICTURE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'EDIT', NIL, NIL }, { 1028, -1, 'CHANGE', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'COMBOBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, 'ID', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 9, -1, NIL, '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1010, -1, 'CHANGE', '<', NIL }, { 11, 1, 'VALID', '<', NIL }, { 12, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 13, -1, NIL, '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'DRAWITEM', '<', NIL }, { 20, 1, 'STYLE', '<', NIL }, { 21, 1, 'PICTURE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'EDIT', NIL, NIL }, { 1022, -1, 'CHANGE', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'LISTBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'FILES', 'FILESPEC' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'ID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'CHANGE', 'A', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 9, -1, 'DBLCLICK', '<', NIL }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'VALID', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1022, -1, 'DRAWITEM', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'LISTBOX', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'SIZE', '<', NIL }, { 8, -1, ',', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 10, -1, 'DBLCLICK', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'VALID', '<', NIL }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, 2, ',', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, NIL, ':', { 'DESIGN' } }, { 19, 1, 'FONT', '<', NIL }, { 20, 1, 'MESSAGE', '<', NIL }, { 21, 1, NIL, ':', { 'UPDATE' } }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1024, -1, 'DRAWITEM', '<', NIL }, { 25, 1, NIL, ':', { 'MULTI', 'MULTIPLE', 'MULTISEL' } }, { 26, 1, NIL, ':', { 'SORT' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'LISTBOX', NIL, NIL }, { 1001, 1, NIL, '<', { 'FIELDS' } }, { 0, 0, 'FIELDS', NIL, NIL }, { 1002, 1, NIL, 'A', { 'ALIAS', 'ID', 'OF', 'DIALOG', 'FIELDSIZES', 'SIZES', 'COLSIZES', 'HEAD', 'HEADER', 'HEADERS', 'TITLE', 'SELECT', 'ON', 'ON', 'ON', 'ON', 'FONT', 'CURSOR', 'COLOR', 'COLORS', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'ACTION' } }, { 3, 1, 'ALIAS', '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 1007, 1, NIL, ':', { 'FIELDSIZES', 'SIZES', 'COLSIZES' } }, { 1008, -1, NIL, 'A', NIL }, { 1009, 1, NIL, ':', { 'HEAD', 'HEADER', 'HEADERS', 'TITLE' } }, { 1010, -1, NIL, 'A', NIL }, { 11, 1, 'SELECT', '<', NIL }, { 12, -1, 'FOR', '<', NIL }, { 13, 2, 'TO', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1015, -1, 'CLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1016, -1, 'DBLCLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1017, -1, 'CLICK', '<', NIL }, { 18, 1, 'FONT', '<', NIL }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 21, -1, NIL, '<', NIL }, { 22, 2, ',', '<', NIL }, { 23, 1, 'MESSAGE', '<', NIL }, { 24, 1, NIL, ':', { 'UPDATE' } }, { 25, 1, 'WHEN', '<', NIL }, { 26, 1, 'VALID', '<', NIL }, { 1027, 1, 'ACTION', 'A', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'LISTBOX', NIL, NIL }, { 1003, 1, NIL, '<', { 'FIELDS' } }, { 0, 0, 'FIELDS', NIL, NIL }, { 1004, 1, NIL, 'A', { 'ALIAS', 'FIELDSIZES', 'SIZES', 'COLSIZES', 'HEAD', 'HEADER', 'HEADERS', 'TITLE', 'SIZE', 'OF', 'DIALOG', 'SELECT', 'ON', 'ON', 'ON', 'ON', 'FONT', 'CURSOR', 'COLOR', 'COLORS', 'MESSAGE', 'UPDATE', 'PIXEL', 'WHEN', 'DESIGN', 'VALID', 'ACTION' } }, { 5, 1, 'ALIAS', '<', NIL }, { 1006, 1, NIL, ':', { 'FIELDSIZES', 'SIZES', 'COLSIZES' } }, { 1007, -1, NIL, 'A', NIL }, { 1008, 1, NIL, ':', { 'HEAD', 'HEADER', 'HEADERS', 'TITLE' } }, { 1009, -1, NIL, 'A', NIL }, { 10, 1, 'SIZE', '<', NIL }, { 11, -1, ',', '<', NIL }, { 12, 1, NIL, ':', { 'OF', 'DIALOG' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'SELECT', '<', NIL }, { 15, -1, 'FOR', '<', NIL }, { 16, 2, 'TO', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1017, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 18, -1, 'CLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1019, -1, 'DBLCLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1020, -1, 'CLICK', '<', NIL }, { 21, 1, 'FONT', '<', NIL }, { 22, 1, 'CURSOR', '<', NIL }, { 23, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 24, -1, NIL, '<', NIL }, { 25, 2, ',', '<', NIL }, { 26, 1, 'MESSAGE', '<', NIL }, { 27, 1, NIL, ':', { 'UPDATE' } }, { 28, 1, NIL, ':', { 'PIXEL' } }, { 29, 1, 'WHEN', '<', NIL }, { 30, 1, NIL, ':', { 'DESIGN' } }, { 31, 1, 'VALID', '<', NIL }, { 1032, 1, 'ACTION', 'A', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'RADIO', NIL, NIL }, { 1003, 1, NIL, '<', { 'PROMPT', 'ITEMS', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CLICK', 'ON CHANGE', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'SIZE', 'VALID', 'DESIGN', '3D', '_3D', 'PIXEL' } }, { 0, -1, 'VAR', NIL, NIL }, { 1004, 1, NIL, '<', { 'PROMPT', 'ITEMS', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CLICK', 'ON CHANGE', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'SIZE', 'VALID', 'DESIGN', '3D', '_3D', 'PIXEL' } }, { 5, 1, NIL, ':', { 'PROMPT', 'ITEMS' } }, { 6, -1, NIL, 'A', NIL }, { 7, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 8, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 1010, -1, NIL, 'A', NIL }, { 11, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'COLOR', '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'UPDATE' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'SIZE', '<', NIL }, { 19, -1, ',', '<', NIL }, { 20, 1, 'VALID', '<', NIL }, { 21, 1, NIL, ':', { 'DESIGN' } }, { 22, 1, NIL, ':', { '3D', '_3D' } }, { 23, 1, NIL, ':', { 'PIXEL' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'RADIO', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CHANGE', 'ON CLICK', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 0, -1, 'VAR', NIL, NIL }, { 1002, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CHANGE', 'ON CLICK', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 3, 1, 'ID', 'A', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 1007, -1, NIL, 'A', NIL }, { 8, 1, NIL, ':', { 'ON CHANGE', 'ON CLICK' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, 'COLOR', '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'MESSAGE', '<', NIL }, { 13, 1, NIL, ':', { 'UPDATE' } }, { 14, 1, 'WHEN', '<', NIL }, { 15, 1, 'VALID', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BITMAP', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILENAME', 'FILE', 'DISK', 'NOBORDER', 'NO BORDER', 'SIZE', 'OF', 'WINDOW', 'DIALOG', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'NOBORDER', 'NO BORDER' } }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'SCROLL' } }, { 18, 1, NIL, ':', { 'ADJUST' } }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL }, { 24, 1, 'VALID', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'IMAGE', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILENAME', 'FILE', 'DISK', 'NOBORDER', 'NO BORDER', 'SIZE', 'OF', 'WINDOW', 'DIALOG', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'NOBORDER', 'NO BORDER' } }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'SCROLL' } }, { 18, 1, NIL, ':', { 'ADJUST' } }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL }, { 24, 1, 'VALID', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BITMAP', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'TRANSPAREN' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1012, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'SCROLL' } }, { 14, 1, NIL, ':', { 'ADJUST' } }, { 15, 1, 'CURSOR', '<', NIL }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, NIL, ':', { 'UPDATE' } }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, 'VALID', '<', NIL }, { 20, 1, NIL, ':', { 'TRANSPAREN' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BITMAP', NIL, NIL }, { 1001, 1, NIL, '<', { 'RESOURCE', 'NAME', 'RESNAME', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SAY', NIL, NIL }, { 1001, 1, NIL, '<', { 'PROMPT', 'VAR', 'PICTURE', 'ID', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'COLORS', 'UPDATE', 'FONT' } }, { 2, 1, NIL, ':', { 'PROMPT', 'VAR' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'PICTURE', '<', NIL }, { 5, 1, 'ID', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'UPDATE' } }, { 12, 1, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'SAY', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 4, -1, NIL, ':', { 'PROMPT', 'VAR' } }, { 5, 0, NIL, '<', NIL }, { 1006, 1, 'PICTURE', '<', NIL }, { 1007, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1008, -1, NIL, '<', NIL }, { 9, 1, 'FONT', '<', NIL }, { 10, 1, NIL, ':', { 'CENTERED', 'CENTER' } }, { 11, 1, NIL, ':', { 'RIGHT' } }, { 12, 1, NIL, ':', { 'BORDER' } }, { 13, 1, NIL, ':', { 'PIXEL', 'PIXELS' } }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, 2, ',', '<', NIL }, { 17, 1, 'SIZE', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, NIL, ':', { 'SHADED', 'SHADOW' } }, { 22, 1, NIL, ':', { 'BOX' } }, { 23, 1, NIL, ':', { 'RAISED' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GET', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'MULTILINE', 'MEMO', 'TEXT' } }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'FONT', '<', NIL }, { 13, 1, 'CURSOR', '<', NIL }, { 14, 1, 'MESSAGE', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'WHEN', '<', NIL }, { 17, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 18, 1, 'VALID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'CHANGE', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GET', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'ID', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, 'PICTURE', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, 'CURSOR', '<', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'UPDATE' } }, { 17, 1, 'WHEN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1018, -1, 'CHANGE', '<', NIL }, { 19, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 20, 1, NIL, ':', { 'SPINNER' } }, { 0, 2, 'ON', NIL, NIL }, { 21, -2, 'UP', '<', NIL }, { 0, 2, 'ON', NIL, NIL }, { 22, -2, 'DOWN', '<', NIL }, { 23, 2, 'MIN', '<', NIL }, { 24, 2, 'MAX', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'MULTILINE', 'MEMO', 'TEXT' } }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, 'SIZE', '<', NIL }, { 12, -1, ',', '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, NIL, ':', { 'HSCROLL' } }, { 15, 1, 'CURSOR', '<', NIL }, { 16, 1, NIL, ':', { 'PIXEL' } }, { 17, 1, 'MESSAGE', '<', NIL }, { 18, 1, NIL, ':', { 'UPDATE' } }, { 19, 1, 'WHEN', '<', NIL }, { 20, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 21, 1, NIL, ':', { 'RIGHT' } }, { 22, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 23, 1, 'VALID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1024, -1, 'CHANGE', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } }, { 1026, 1, NIL, ':', { 'NO BORDER', 'NOBORDER' } }, { 1027, 1, NIL, ':', { 'NO VSCROLL' } } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, 'PICTURE', '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 14, 1, 'FONT', '<', NIL }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'CURSOR', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 22, 1, NIL, ':', { 'RIGHT' } }, { 1000, 1, 'ON', NIL, NIL }, { 1023, -1, 'CHANGE', '<', NIL }, { 24, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 25, 1, NIL, ':', { 'PASSWORD' } }, { 1026, 1, NIL, ':', { 'NO BORDER', 'NOBORDER' } }, { 27, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 28, -1, NIL, '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, 'PICTURE', '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 14, 1, 'FONT', '<', NIL }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'CURSOR', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 22, 1, NIL, ':', { 'RIGHT' } }, { 1000, 1, 'ON', NIL, NIL }, { 1023, -1, 'CHANGE', '<', NIL }, { 24, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 25, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 26, -1, NIL, '<', NIL }, { 27, 1, NIL, ':', { 'SPINNER' } }, { 0, 2, 'ON', NIL, NIL }, { 28, -2, 'UP', '<', NIL }, { 0, 2, 'ON', NIL, NIL }, { 29, -2, 'DOWN', '<', NIL }, { 30, 2, 'MIN', '<', NIL }, { 31, 2, 'MAX', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1003, 1, NIL, '<', { 'HORIZONTAL', 'VERTICAL', 'RANGE', 'PAGESTEP', 'SIZE', 'UP', 'ON UP', 'DOWN', 'ON DOWN', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'PIXEL', 'COLOR', 'COLORS', 'OF', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'HORIZONTAL' } }, { 1005, 1, NIL, ':', { 'VERTICAL' } }, { 6, 1, 'RANGE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, 'PAGESTEP', '<', NIL }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 1011, 1, NIL, ':', { 'UP', 'ON UP' } }, { 1012, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'DOWN', 'ON DOWN' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1016, -1, NIL, '<', NIL }, { 1017, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1018, -1, NIL, '<', NIL }, { 1019, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1020, -1, NIL, '<', NIL }, { 1021, 1, NIL, ':', { 'PIXEL' } }, { 22, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 23, -1, NIL, '<', NIL }, { 24, 2, ',', '<', NIL }, { 25, 1, 'OF', '<', NIL }, { 26, 1, 'MESSAGE', '<', NIL }, { 27, 1, NIL, ':', { 'UPDATE' } }, { 28, 1, 'WHEN', '<', NIL }, { 29, 1, 'VALID', '<', NIL }, { 30, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'HORIZONTAL', 'VERTICAL', 'RANGE', 'PAGESTEP', 'UP', 'ON UP', 'DOWN', 'ON DOWN', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'COLOR', 'COLORS', 'OF', 'WINDOW', 'DIALOG', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 2, 1, NIL, ':', { 'HORIZONTAL' } }, { 1003, 1, NIL, ':', { 'VERTICAL' } }, { 4, 1, 'RANGE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'PAGESTEP', '<', NIL }, { 1007, 1, NIL, ':', { 'UP', 'ON UP' } }, { 1008, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'DOWN', 'ON DOWN' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1012, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 18, -1, NIL, '<', NIL }, { 19, 2, ',', '<', NIL }, { 20, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 21, -1, NIL, '<', NIL }, { 22, 1, 'MESSAGE', '<', NIL }, { 23, 1, NIL, ':', { 'UPDATE' } }, { 24, 1, 'WHEN', '<', NIL }, { 25, 1, 'VALID', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'RANGE', 'PAGESTEP', 'UP', 'ON UP', 'ON LEFT', 'DOWN', 'ON DOWN', 'ON RIGHT', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'COLOR', 'COLORS', 'OF', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'RANGE', '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, 'PAGESTEP', '<', NIL }, { 1006, 1, NIL, ':', { 'UP', 'ON UP', 'ON LEFT' } }, { 1007, -1, NIL, '<', NIL }, { 1008, 1, NIL, ':', { 'DOWN', 'ON DOWN', 'ON RIGHT' } }, { 1009, -1, NIL, '<', NIL }, { 1010, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1011, -1, NIL, '<', NIL }, { 1012, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1013, -1, NIL, '<', NIL }, { 1014, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1015, -1, NIL, '<', NIL }, { 16, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 17, -1, NIL, '<', NIL }, { 18, 2, ',', '<', NIL }, { 19, 1, 'OF', '<', NIL }, { 20, 1, 'MESSAGE', '<', NIL }, { 21, 1, NIL, ':', { 'UPDATE' } }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, 'VALID', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 1003, 1, 'GROUP', '<', NIL }, { 4, 0, 'TO', '<', NIL }, { 5, 0, ',', '<', NIL }, { 6, 1, NIL, ':', { 'LABEL', 'PROMPT' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'OF', '<', NIL }, { 9, 1, 'COLOR', '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'PIXEL' } }, { 1012, 1, NIL, ':', { 'DESIGN' } }, { 1013, 1, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GROUP', NIL, NIL }, { 1001, 1, NIL, '<', { 'LABEL', 'PROMPT', 'ID', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'FONT' } }, { 2, 1, NIL, ':', { 'LABEL', 'PROMPT' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'COLOR', '<', NIL }, { 8, 2, ',', '<', NIL }, { 1009, 1, 'FONT', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'METER', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, 'TOTAL', '<', NIL }, { 6, 1, 'SIZE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, 'OF', '<', NIL }, { 9, 1, NIL, ':', { 'UPDATE' } }, { 10, 1, NIL, ':', { 'PIXEL' } }, { 11, 1, 'FONT', '<', NIL }, { 12, 1, 'PROMPT', '<', NIL }, { 13, 1, NIL, ':', { 'NOPERCENTAGE' } }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, -1, ',', '<', NIL }, { 17, 1, 'BARCOLOR', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'METER', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'TOTAL', '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, 'OF', '<', NIL }, { 6, 1, NIL, ':', { 'UPDATE' } }, { 7, 1, 'FONT', '<', NIL }, { 8, 1, 'PROMPT', '<', NIL }, { 9, 1, NIL, ':', { 'NOPERCENTAGE' } }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, -1, ',', '<', NIL }, { 13, 1, 'BARCOLOR', '<', NIL }, { 14, -1, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'METAFILE', NIL, NIL }, { 1003, 1, NIL, '<', { 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'COLOR', 'COLORS' } }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'SIZE', '<', NIL }, { 9, -1, ',', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'METAFILE', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'COLORS' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 8, -1, NIL, '<', NIL }, { 9, 2, ',', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'CURSOR', '<', NIL }, { 2, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 3, -1, NIL, '<', NIL }, { 1004, 1, NIL, ':', { 'ARROW', 'ICON', 'SIZENS', 'SIZEWE', 'SIZENWSE', 'SIZENESW', 'IBEAM', 'CROSS', 'SIZE', 'UPARROW', 'WAIT', 'HAND' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'WINDOW', NIL, NIL }, { 1001, 1, NIL, '<', { 'MDICHILD', 'FROM', 'TITLE', 'BRUSH', 'CURSOR', 'MENU', 'MENUINFO', 'ICON', 'OF', 'VSCROLL', 'VERTICAL SCROLL', 'HSCROLL', 'HORIZONTAL SCROLL', 'COLOR', 'COLORS', 'PIXEL', 'STYLE', 'HELPID', 'HELP ID', 'BORDER', 'NOSYSMENU', 'NO SYSMENU', 'NOCAPTION', 'NO CAPTION', 'NO TITLE', 'NOICONIZE', 'NOMINIMIZE', 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } }, { 0, 1, 'MDICHILD', NIL, NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 7, 1, 'BRUSH', '<', NIL }, { 8, 1, 'CURSOR', '<', NIL }, { 9, 1, 'MENU', '<', NIL }, { 1010, 1, 'MENUINFO', '<', NIL }, { 11, 1, 'ICON', '<', NIL }, { 12, 1, 'OF', '<', NIL }, { 13, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 14, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, NIL, ':', { 'PIXEL' } }, { 19, 1, 'STYLE', '<', NIL }, { 20, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 21, -1, NIL, '<', NIL }, { 1022, 1, 'BORDER', ':', { 'NONE', 'SINGLE' } }, { 23, 1, NIL, ':', { 'NOSYSMENU', 'NO SYSMENU' } }, { 24, 1, NIL, ':', { 'NOCAPTION', 'NO CAPTION', 'NO TITLE' } }, { 25, 1, NIL, ':', { 'NOICONIZE', 'NOMINIMIZE' } }, { 26, 1, NIL, ':', { 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 7, 1, 'STYLE', '<', NIL }, { 8, 1, 'MENU', '<', NIL }, { 9, 1, 'BRUSH', '<', NIL }, { 10, 1, 'ICON', '<', NIL }, { 0, 1, 'MDI', NIL, NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 1014, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 1015, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } }, { 16, 1, 'MENUINFO', '<', NIL }, { 1000, 2, 'BORDER', NIL, NIL }, { 1017, -1, NIL, ':', { 'NONE', 'SINGLE' } }, { 18, 1, 'OF', '<', NIL }, { 1019, 1, NIL, ':', { 'PIXEL' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 2, NIL, ':', { 'PIXEL' } }, { 7, 1, 'TITLE', '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, 'OF', '<', NIL }, { 12, 1, 'BRUSH', '<', NIL }, { 13, 1, 'CURSOR', '<', NIL }, { 14, 1, 'ICON', '<', NIL }, { 15, 1, 'MENU', '<', NIL }, { 16, 1, 'STYLE', '<', NIL }, { 1017, 1, 'BORDER', ':', { 'NONE', 'SINGLE' } }, { 18, 1, NIL, ':', { 'NOSYSMENU', 'NO SYSMENU' } }, { 19, 1, NIL, ':', { 'NOCAPTION', 'NO CAPTION', 'NO TITLE' } }, { 20, 1, NIL, ':', { 'NOICONIZE', 'NOMINIMIZE' } }, { 21, 1, NIL, ':', { 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } }, { 1022, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 1023, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'WINDOW', '<', NIL }, { 1002, 1, NIL, ':', { 'ICONIZED', 'NORMAL', 'MAXIMIZED' } }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1003, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1004, -1, 'LBUTTONUP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1005, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1006, -1, 'MOVE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1007, -1, 'RESIZE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'PAINT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1009, -1, 'KEYDOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1010, -1, 'INIT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1011, -1, 'UP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1012, -1, 'DOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1013, -1, 'PAGEUP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'PAGEDOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1015, -1, 'LEFT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1016, -1, 'RIGHT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1017, -1, 'PAGELEFT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1018, -1, 'PAGERIGHT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'DROPFILES', '<', NIL }, { 1020, 1, 'VALID', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SET' , { { 0, 0, 'MESSAGE', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL }, { 3, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 4, 1, NIL, ':', { 'CLOCK', 'TIME' } }, { 5, 1, NIL, ':', { 'DATE' } }, { 6, 1, NIL, ':', { 'KEYBOARD' } }, { 7, 1, 'FONT', '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 1, NIL, ':', { 'NO INSET', 'NOINSET' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, NIL, ':', { 'MESSAGE', 'MESSAGE BAR', 'MSGBAR' } }, { 1002, 1, NIL, '<', { 'OF', 'PROMPT', 'TITLE', 'CENTER', 'CENTERED', 'CLOCK', 'TIME', 'DATE', 'KEYBOARD', 'FONT', 'COLOR', 'COLORS', 'NO INSET', 'NOINSET' } }, { 3, 1, 'OF', '<', NIL }, { 4, 1, NIL, ':', { 'PROMPT', 'TITLE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 7, 1, NIL, ':', { 'CLOCK', 'TIME' } }, { 8, 1, NIL, ':', { 'DATE' } }, { 9, 1, NIL, ':', { 'KEYBOARD' } }, { 10, 1, 'FONT', '<', NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 1014, 1, NIL, ':', { 'NO INSET', 'NOINSET' } } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'MSGITEM', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'PROMPT', 'SIZE', 'FONT', 'COLOR', 'COLORS', 'BITMAP', 'BITMAPS', 'ACTION', 'TOOLTIP' } }, { 2, 1, 'OF', '<', NIL }, { 3, 1, 'PROMPT', '<', NIL }, { 4, 1, 'SIZE', '<', NIL }, { 5, 1, 'FONT', '<', NIL }, { 6, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 7, -1, NIL, '<', NIL }, { 8, 2, ',', '<', NIL }, { 1009, 1, NIL, ':', { 'BITMAP', 'BITMAPS' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 2, ',', '<', NIL }, { 1012, 1, 'ACTION', '<', NIL }, { 1013, 1, 'TOOLTIP', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'CLIPBOARD', '<', NIL }, { 1002, 1, 'FORMAT', ':', { 'TEXT', 'OEMTEXT', 'BITMAP', 'DIF' } }, { 3, 1, 'OF', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'CLIPBOARD', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'TIMER', NIL, NIL }, { 1001, 1, NIL, '<', { 'INTERVAL', 'ACTION', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, 'INTERVAL', '<', NIL }, { 1003, 1, 'ACTION', 'A', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'TIMER', '<', NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'VBX', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'SIZE', 'FILE', 'FILENAME', 'DISK', 'CLASS', 'ON', 'WHEN', 'VALID', 'PIXEL', 'DESIGN' } }, { 4, 1, 'OF', '<', NIL }, { 5, 1, 'SIZE', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, 'CLASS', '<', NIL }, { 1010, 1, 'ON', '<', NIL }, { 1011, -1, NIL, '<', NIL }, { 1012, 2, 'ON', '<', NIL }, { 1013, -2, NIL, '<', NIL }, { 1014, 1, 'WHEN', '<', NIL }, { 1015, 1, 'VALID', '<', NIL }, { 16, 1, NIL, ':', { 'PIXEL' } }, { 17, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) + aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'VBX', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'COLOR', 'ON' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'OF', '<', NIL }, { 4, 1, 'COLOR', '<', NIL }, { 5, 2, ',', '<', NIL }, { 1006, 1, 'ON', '<', NIL }, { 1007, -1, NIL, '<', NIL }, { 1008, 2, 'ON', '<', NIL }, { 1009, -2, NIL, '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'OBJECT' , { { 1, 0, NIL, '<', NIL }, { 2, 0, 'AS', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'ENDOBJECT' , , .T. } ) + aAdd( aCommRules, { 'CLS' , , .T. } ) + aAdd( aCommRules, { 'CLEAR' , { { 0, 0, 'SCREEN', NIL, NIL } } , .T. } ) + aAdd( aCommRules, { '?' , { { 1001, 1, NIL, 'A', NIL } } , .F. } ) + aAdd( aCommRules, { '??' , { { 1001, 1, NIL, 'A', NIL } } , .F. } ) + aAdd( aCommRules, { 'READ' , , .T. } ) + aAdd( aCommRules, { 'SAVE' , { { 0, 0, 'SCREEN', NIL, NIL }, { 1, 1, 'TO', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'RESTORE' , { { 0, 0, 'SCREEN', NIL, NIL }, { 1, 1, 'FROM', '<', NIL } } , .T. } ) + aAdd( aCommRules, { 'SAVESCREEN' , { { 1, 0, '(', '*', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aCommRules, { 'RESTSCREEN' , { { 1, 0, '(', '*', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PROMPT', '*', NIL } } , .T. } ) + aAdd( aCommRules, { 'MENU' , { { 1, 0, 'TO', '<', NIL } } , .T. } ) + + RETURN .T. + + //--------------------------------------------------------------// + STATIC FUNCTION InitFWResults() + + /* Defines Results*/ + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '"(c) FiveTech, 1993-2001"' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '"FWH Pre-release - April 2001"' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '"FiveWin for Harbour"' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WBrowse' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '10' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '13' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '14' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8388608' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '32768' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8421376' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8388736' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '32896' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '12632256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'CLR_HGRAY' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8421504' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16711680' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '65280' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16776960' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '255' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16711935' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '65535' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16777215' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '10' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '992' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '13' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '17' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '18' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '19' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '20' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '27' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '32' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '33' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '34' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '35' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '36' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '37' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '38' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '39' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '40' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '41' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '42' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '43' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '44' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '45' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '46' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '47' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '96' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '97' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '98' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '99' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '100' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '101' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '102' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '103' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '104' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '105' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '106' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '107' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '108' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '109' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '110' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '111' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '112' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '113' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '114' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '115' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '116' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '117' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '118' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '119' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '120' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '121' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '122' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '123' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '124' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '125' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '126' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '127' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '129' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '130' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '131' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '132' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '133' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '134' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '135' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '144' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '145' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1025' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1026' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1027' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1028' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1029' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1030' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1031' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1032' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1033' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1034' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1035' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1036' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1037' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1038' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1039' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1040' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1041' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1042' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, 'WM_USER+1043' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16384' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '32' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '64' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8192' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2147483648' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1073741824' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '67108864' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '33554432' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '268435456' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '134217728' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '536870912' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16777216' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '12582912' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8388608' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4194304' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2097152' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1048576' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '524288' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '262144' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '131072' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '65536' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '131072' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '65536' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2048' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '15' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '17' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '18' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '21' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '22' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '23' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '26' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '27' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '29' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '30' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '42' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '65' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '135' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '258' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '273' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '512' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '513' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '514' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '516' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '517' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '257' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '272' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '275' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '276' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '277' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '783' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '784' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '785' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '10485763' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '64' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2048' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '240' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '15000' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, 'Chr(13)+Chr(10)' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '{' }, { 0, '|' }, { 0, 'u' }, { 0, '|' }, { 0, 'If' }, { 0, '(' }, { 0, 'PCount' }, { 0, '(' }, { 0, ')' }, { 0, '==' }, { 0, '0' }, { 0, ',' }, { 0, 1 }, { 0, ',' }, { 0, 1 }, { 0, ':=' }, { 0, 'u' }, { 0, ')' }, { 0, '}' } }, { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 1, -1, -1, -1, -1} , { NIL } } ) + + /* Translates Results*/ + aAdd( aTransResults, { { { 0, '( ' }, { 0, 1 }, { 0, ' + ( ' }, { 0, 2 }, { 0, ' * 256 ) + ( ' }, { 0, 3 }, { 0, ' * 65536 ) )' } }, { -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aTransResults, { { { 0, 1 } }, { 1} , { NIL } } ) + aAdd( aTransResults, { { { 0, 'DLL' } }, { -1} , } ) + aAdd( aTransResults, { { { 0, '{ |bp1,bp2,bp3,bp4,bp5,bp6,bp7,bp8,bp9,bp10| ' }, { 0, 1 }, { 0, ' }' } }, { -1, 1, -1} , { NIL } } ) + + /* Commands Results*/ + aAdd( aCommResults, { , , { NIL, NIL } } ) + aAdd( aCommResults, { { { 2, 'SetResources( ' }, { 2, 2 }, { 2, ' ); ' }, { 0, ' SetResources( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'FreeResources()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'SetHelpFile( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'HelpSetTopic( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := LoadValue( ' }, { 0, 4 }, { 0, ', ' }, { 2, 'Upper(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 1 }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' = TDialog():New( ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate( ' }, { 0, 1 }, { 0, ':bLClicked ' }, { 6, ':= {|nRow,nCol,nFlags|' }, { 6, 6 }, { 6, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bMoved ' }, { 8, ':= ' }, { 8, 8 }, { 0, ', ' }, { 0, 1 }, { 0, ':bPainted ' }, { 9, ':= {|hDC,cPS|' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 5, '{|Self|' }, { 5, 5 }, { 5, '}' }, { 0, ', ' }, { 3, '! ' }, { 3, 3 }, { 0, ', ' }, { 7, '{|Self|' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bRClicked ' }, { 10, ':= {|nRow,nCol,nFlags|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 4, '{|Self|' }, { 4, 4 }, { 4, '}' }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, -1, 1, -1, -1, 6, -1, -1, 1, -1, -1, -1, 6, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TFont():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 5, 5 }, { 0, ', ' }, { 6, 6 }, { 0, ',' }, { 11, 11 }, { 0, ',,' }, { 9, 9 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 8, 8 }, { 0, ',,,,,, ' }, { 10, 10 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':DeActivate()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetFont( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TIni():New( ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := ' }, { 0, 6 }, { 0, ':Get( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 1 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 5 }, { 0, ':Set( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { , , } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' MenuBegin( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, -1, 6, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' MenuAddItem( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 5, 'Upper(' }, { 5, 5 }, { 5, ') == "ENABLED" ' }, { 0, ', ' }, { 10, '{|oMenuItem|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMru():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 8, '{|cMruItem,oMenuItem|' }, { 8, 8 }, { 8, '}' }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' MenuAddItem()' } }, { 1, -1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'MenuEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMenu():ReDefine( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ' )' } }, { 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMenuItem():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 10, 'Upper(' }, { 10, 10 }, { 10, ') == "ENABLED" ' }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMenu():New( .f., ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetMenu( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 2 }, { 0, ':Activate( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' :=' }, { 0, ' MenuBegin( .f., .t., ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'MenuEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' PrintBegin( ' }, { 3, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' PrintBegin( ' }, { 3, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'PageBegin()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'PageEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'PrintEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'PrintEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 1, 1 }, { 0, ' function ' }, { 0, 2 }, { 0, '( ' }, { 3, 'NOREF(' }, { 3, 3 }, { 3, ')' }, { 5, ' ,NOREF(' }, { 5, 5 }, { 5, ')' }, { 0, ' ) ; local hDLL := If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N", ' }, { 0, 10 }, { 0, ', LoadLibrary( ' }, { 0, 10 }, { 0, ' ) ) ; local uResult ; local cFarProc ; if Abs( hDLL ) > 32 ; cFarProc = GetProcAddress( hDLL, If( ' }, { 9, ' Empty( ' }, { 9, 9 }, { 9, ' ) == ' }, { 0, ' .t., ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ' ), ' }, { 8, 8 }, { 0, ', ' }, { 0, 7 }, { 4, ' ,' }, { 4, 4 }, { 6, ' ,' }, { 6, 6 }, { 0, ' ) ; uResult = CallDLL( cFarProc ' }, { 3, ' ,' }, { 3, 3 }, { 5, ' ,' }, { 5, 5 }, { 0, ' ) ; If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N",, FreeLibrary( hDLL ) ) ; else ; MsgAlert( "Error code: " + LTrim( Str( hDLL ) ) + " loading " + ' }, { 0, 10 }, { 0, ' ) ; end ; return uResult' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 4, -1, -1, 1, -1, -1, 4, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 0, ' function ' }, { 0, 2 }, { 0, '( ' }, { 3, 'NOREF(' }, { 3, 3 }, { 3, ')' }, { 5, ' ,NOREF(' }, { 5, 5 }, { 5, ')' }, { 0, ' ) ; local hDLL := If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N", ' }, { 0, 10 }, { 0, ', LoadLib32( ' }, { 0, 10 }, { 0, ' ) ) ; local uResult ; local cFarProc ; if Abs( hDLL ) <= 32 ; MsgAlert( "Error code: " + LTrim( Str( hDLL ) ) + " loading " + ' }, { 0, 10 }, { 0, ' ) ; else ; cFarProc = GetProc32( hDLL, If( ' }, { 9, ' Empty( ' }, { 9, 9 }, { 9, ' ) == ' }, { 0, ' .t., ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ' ), ' }, { 8, 8 }, { 0, ', ' }, { 0, 7 }, { 4, ' ,' }, { 4, 4 }, { 6, ' ,' }, { 6, 6 }, { 0, ' ) ; uResult = CallDLL32( cFarProc ' }, { 3, ' ,' }, { 3, 3 }, { 5, ' ,' }, { 5, 5 }, { 0, ' ) ; If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N",, FreeLib32( hDLL ) ) ; end ; return uResult' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 1, -1, -1, 4, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TFolder():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', {' }, { 0, 9 }, { 10, ' ,' }, { 10, 10 }, { 0, '}, ' }, { 0, 5 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TFolder():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 6, '{' }, { 6, 6 }, { 6, '}' }, { 0, ', { ' }, { 0, 8 }, { 9, ' ,' }, { 9, 9 }, { 0, ' }, ' }, { 0, 4 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{|nOption,nOldOption| ' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TTabs():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 9, '{|nOption|' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TTabs():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 6, '{' }, { 6, 6 }, { 6, '}' }, { 0, ', ' }, { 8, '{|nOption|' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TPages():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 4, '{' }, { 4, 4 }, { 4, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 'bSETGET(' }, { 6, 6 }, { 6, ') ' }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TOdbc():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Execute( ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 2 }, { 0, ' := TDde():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 6 }, { 0, ', ' }, { 7, 7 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 2 }, { 0, ':Activate()' } }, { 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 0, ' := TMci():New( "avivideo", ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':lOpen() ; ' }, { 0, 1 }, { 0, ':Play()' } }, { 1, -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':lOpen() ; ' }, { 0, 1 }, { 0, ':Play()' } }, { 1, -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TVideo():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TVideo():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' TreeBegin( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' :=' }, { 0, ' _TreeItem( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'TreeEnd()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'SetMultiple( Upper(' }, { 0, 1 }, { 0, ') == "ON" )' } }, { -1, 4, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := If( ' }, { 0, 1 }, { 0, ' == nil, ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ' ) ; ' }, { 3, 3 }, { 3, ' := If( ' }, { 3, 3 }, { 3, ' == nil, ' }, { 3, 4 }, { 3, ', ' }, { 3, 3 }, { 3, ' ); ' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'while .t.' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'if ' }, { 0, 1 }, { 0, '; exit; end; end' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'SetIdleAction( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 5, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TDataBase():New()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 2 }, { 0, ':End() ; ' }, { 0, 2 }, { 0, ' := nil ' }, { 3, ' ; ' }, { 3, 3 }, { 3, ':End() ; ' }, { 3, 3 }, { 3, ' := nil ' } }, { 1, -1, 1, -1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBrush():New( ' }, { 2, ' Upper(' }, { 2, 2 }, { 2, ') ' }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, -1, 4, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetBrush( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TPen():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBar():New( ' }, { 0, 8 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 'Upper(' }, { 6, 6 }, { 6, ') ' }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBar():NewAt( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 9, 'Upper(' }, { 9, 9 }, { 9, ') ' }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBtnBmp():NewBar( ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 13, '{|This|' }, { 13, 13 }, { 13, '}' }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 20, '{||' }, { 20, 20 }, { 20, '}' }, { 0, ', ' }, { 13, "'" }, { 13, 13 }, { 13, "'" }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 24, '!' }, { 24, 24 }, { 0, ', ' }, { 25, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 1, -1, 6, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBtnBmp():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 14, '{|Self|' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 22, '!' }, { 22, 22 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBtnBmp():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 14, '{|Self|' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 11, 11 }, { 0, ', !' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TIcon():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, 6, -1, 5, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TIcon():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 6, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TIcon():New( ,, ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TButton():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TButton():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 5, '{||' }, { 5, 5 }, { 5, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TCheckBox():ReDefine( ' }, { 0, 3 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 9, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TCheckBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 4, 'bSETGET(' }, { 4, 4 }, { 4, ')' }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TComboBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 13, '{|Self|' }, { 13, 13 }, { 13, '}' }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 25, '{|nItem|' }, { 25, 25 }, { 25, '}' }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 28, 28 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TComboBox():ReDefine( ' }, { 0, 5 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 4 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 10, '{|Self|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, '{|nItem|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 22, 22 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TListBox():ReDefine( ' }, { 0, 7 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 4 }, { 0, ', ' }, { 8, '{||' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 22, '{|nItem|' }, { 22, 22 }, { 22, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 6, -1, 5, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TListBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 24, '{|nItem|' }, { 24, 24 }, { 24, '}' }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 6, -1, 5, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, -1, 1, -1, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TWBrowse():ReDefine( ' }, { 0, 4 }, { 0, ', ' }, { 2, '{|| { ' }, { 2, 2 }, { 2, ' } }' }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 10, '{' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 8, '{' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, '{|nRow,nCol,nFlags|' }, { 16, 16 }, { 16, '}' }, { 0, ', ' }, { 17, '{|nRow,nCol,nFlags|' }, { 17, 17 }, { 17, '}' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 15, '{|nRow,nCol,nFlags|' }, { 15, 15 }, { 15, '}' }, { 0, ', ' }, { 27, '{' }, { 27, 27 }, { 27, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 4, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 5, -1, 5, -1, -1, 1, -1, -1, -1, 5, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TWBrowse():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 4, '{|| {' }, { 4, 4 }, { 4, ' } }' }, { 0, ', ' }, { 9, '{' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 17, 17 }, { 0, ', ' }, { 19, '{|nRow,nCol,nFlags|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 20, '{|nRow,nCol,nFlags|' }, { 20, 20 }, { 20, '}' }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ', ' }, { 0, 31 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 32, '{' }, { 32, 32 }, { 32, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 4, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 5, -1, -1, 5, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TRadMenu():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', {' }, { 0, 6 }, { 0, '}, ' }, { 4, 'bSETGET(' }, { 4, 4 }, { 4, ')' }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 10, '{' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, 1, -1, 5, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TRadMenu():Redefine( ' }, { 2, ' bSETGET(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', { ' }, { 0, 3 }, { 0, ' }, ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBitmap():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{ |nRow,nCol,nKeyFlags| ' }, { 14, 14 }, { 14, ' } ' }, { 0, ', ' }, { 16, '{ |nRow,nCol,nKeyFlags| ' }, { 16, 16 }, { 16, ' } ' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TImage():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{ |nRow,nCol,nKeyFlags| ' }, { 14, 14 }, { 14, ' } ' }, { 0, ', ' }, { 16, '{ |nRow,nCol,nKeyFlags| ' }, { 16, 16 }, { 16, ' } ' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBitmap():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 10, '{ |nRow,nCol,nKeyFlags| ' }, { 10, 10 }, { 10, ' }' }, { 0, ', ' }, { 12, '{ |nRow,nCol,nKeyFlags| ' }, { 12, 12 }, { 12, ' }' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBitmap():Define( ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TSay():ReDefine( ' }, { 0, 5 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TSay():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 6, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMultiGet():ReDefine( ' }, { 0, 4 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, '{|nKey, nFlags, Self| ' }, { 19, 19 }, { 19, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TGet():ReDefine( ' }, { 0, 3 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 18, '{|nKey,nFlags,Self| ' }, { 18, 18 }, { 18, ' }' }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ')' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, -1, 1, -1, -1, 6, -1, 6, -1, 5, -1, 5, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMultiGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 24, '{|nKey, nFlags, Self| ' }, { 24, 24 }, { 24, '}' }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 26, 26 }, { 0, ', ' }, { 27, 27 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, 6, -1, 5, -1, -1, 1, -1, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 23, '{|nKey, nFlags, Self| ' }, { 23, 23 }, { 23, '}' }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 26, 26 }, { 0, ', ' }, { 0, 28 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, -1, 1, -1, -1, 6, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 23, '{|nKey, nFlags, Self| ' }, { 23, 23 }, { 23, '}' }, { 0, ', ' }, { 0, 24 }, { 0, ', .f., .f., ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ', ' }, { 0, 31 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, -1, 1, -1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 5, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TScrollBar():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', (.not.' }, { 0, 4 }, { 0, ') ' }, { 5, '.or. ' }, { 5, 5 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' , ' }, { 12, 12 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, 16 }, { 0, ', ' }, { 18, 18 }, { 0, ', ' }, { 20, '{|nPos| ' }, { 20, 20 }, { 20, ' }' }, { 0, ', ' }, { 21, 21 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TScrollBar():WinNew( ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', (.not.' }, { 0, 2 }, { 0, ') ' }, { 3, '.or. ' }, { 3, 3 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 10, 10 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, '{|nPos| ' }, { 16, 16 }, { 16, ' }' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 6, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TScrollBar():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 9, 9 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 13, 13 }, { 0, ', ' }, { 15, '{|nPos| ' }, { 15, 15 }, { 15, ' }' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGroup():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 13, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TGroup():ReDefine( ' }, { 0, 4 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 9, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMeter():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMeter():ReDefine( ' }, { 0, 4 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMetaFile():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMetaFile():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TCursor():New( ' }, { 0, 3 }, { 0, ', ' }, { 4, 'Upper(' }, { 4, 4 }, { 4, ') ' }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 4, -1, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMdiChild():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 22, 'Upper(' }, { 22, 22 }, { 22, ')' }, { 0, ', !' }, { 0, 23 }, { 0, ', !' }, { 0, 24 }, { 0, ', !' }, { 0, 25 }, { 0, ', !' }, { 0, 26 }, { 0, ', ' }, { 10, 10 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, -1, 4, -1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMdiFrame():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 17, 'Upper(' }, { 17, 17 }, { 17, ')' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, -1, 4, -1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TWindow():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 22, 22 }, { 0, ', ' }, { 23, 23 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 17, 'Upper(' }, { 17, 17 }, { 17, ')' }, { 0, ', !' }, { 0, 18 }, { 0, ', !' }, { 0, 19 }, { 0, ', !' }, { 0, 20 }, { 0, ', !' }, { 0, 21 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 4, -1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate( ' }, { 2, 'Upper(' }, { 2, 2 }, { 2, ') ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bLClicked ' }, { 3, ':= { |nRow,nCol,nKeyFlags| ' }, { 3, 3 }, { 3, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bRClicked ' }, { 5, ':= { |nRow,nCol,nKeyFlags| ' }, { 5, 5 }, { 5, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bMoved ' }, { 6, ':= ' }, { 6, 6 }, { 0, ', ' }, { 0, 1 }, { 0, ':bResized ' }, { 7, ':= ' }, { 7, 7 }, { 0, ', ' }, { 0, 1 }, { 0, ':bPainted ' }, { 8, ':= { | hDC, cPS | ' }, { 8, 8 }, { 8, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bKeyDown ' }, { 9, ':= { | nKey | ' }, { 9, 9 }, { 9, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bInit ' }, { 10, ':= { | Self | ' }, { 10, 10 }, { 10, ' } ' }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 13, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 16, 16 }, { 0, ', ' }, { 17, 17 }, { 0, ', ' }, { 18, 18 }, { 0, ', ' }, { 20, 20 }, { 0, ', ' }, { 19, '{|nRow,nCol,aFiles|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bLButtonUp ' }, { 4, ':= ' }, { 4, 4 }, { 0, ' )' } }, { 1, -1, -1, 4, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, -1, 5, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':oMsgBar := TMsgBar():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 11, '!' }, { 11, 11 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 2, 2 }, { 2, ':=' }, { 0, 3 }, { 0, ':oMsgBar := TMsgBar():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 14, '!' }, { 14, 14 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' TMsgItem():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', .t., ' }, { 12, 12 }, { 0, ', ' }, { 10, 10 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 13, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TClipBoard():New( ' }, { 2, ' Upper(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Open()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TTimer():New( ' }, { 0, 2 }, { 0, ', ' }, { 3, '{||' }, { 3, 3 }, { 3, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TVbControl():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', { ' }, { 10, 10 }, { 10, ', _PARM_BLOCK_10_( ' }, { 10, 11 }, { 10, ' ) ' }, { 12, ' ,' }, { 12, 12 }, { 12, ', _PARM_BLOCK_10_( ' }, { 12, 13 }, { 12, ' ) ' }, { 0, ' }, ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 4, -1, 1, -1, -1, 5, -1, 5, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TVbControl():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', { ' }, { 6, 6 }, { 6, ', _PARM_BLOCK_10_( ' }, { 6, 7 }, { 6, ' ) ' }, { 8, ' ,' }, { 8, 8 }, { 8, ', _PARM_BLOCK_10_( ' }, { 8, 9 }, { 8, ' ) ' }, { 0, ' } )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 4, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'Self := SetObject( Self, { || ' }, { 0, 2 }, { 0, '():New() } )' } }, { -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'Self := EndObject()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'InvalidateRect( GetActiveWindow(), 0, .t. )' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'InvalidateRect( GetActiveWindow(), 0, .t. )' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'WQout( ' }, { 1, '{ ' }, { 1, 1 }, { 1, ' } ' }, { 0, ' )' } }, { -1, -1, 1, -1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'WQout( ' }, { 1, '{ ' }, { 1, 1 }, { 1, ' } ' }, { 0, ' )' } }, { -1, -1, 1, -1, -1} , { NIL } } ) + aAdd( aCommResults, { , , } ) + aAdd( aCommResults, { , , { NIL } } ) + aAdd( aCommResults, { , , { NIL } } ) + aAdd( aCommResults, { { { 0, 'MsgAlert( OemToAnsi( "SaveScreen() not available in FiveWin" ) )' } }, { -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'MsgAlert( OemToAnsi( "RestScreen() not available in FiveWin" ) )' } }, { -1} , { NIL } } ) + aAdd( aCommResults, { , , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { , , { NIL } } ) + + RETURN .T. + #endif + + //--------------------------------------------------------------// + #ifdef MINIGUI + FUNCTION InitMiniGUIRules() + + /* Defines */ + aAdd( aDefRules, { 'EN_SETFOCUS' , , .T. } ) + aAdd( aDefRules, { 'EN_KILLFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_SETFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_KILLFOCUS' , , .T. } ) + aAdd( aDefRules, { 'WM_UNDO' , , .T. } ) + aAdd( aDefRules, { 'EM_SETMODIFY' , , .T. } ) + aAdd( aDefRules, { 'WM_PASTE' , , .T. } ) + aAdd( aDefRules, { 'WM_CHAR' , , .T. } ) + aAdd( aDefRules, { 'EM_GETLINE' , , .T. } ) + aAdd( aDefRules, { 'EM_SETSEL' , , .T. } ) + aAdd( aDefRules, { 'WM_CLEAR' , , .T. } ) + aAdd( aDefRules, { 'EM_GETSEL' , , .T. } ) + aAdd( aDefRules, { 'EM_UNDO' , , .T. } ) + aAdd( aDefRules, { 'EN_CHANGE' , , .T. } ) + aAdd( aDefRules, { 'EN_UPDATE' , , .T. } ) + aAdd( aDefRules, { 'WM_ACTIVATE' , , .T. } ) + aAdd( aDefRules, { 'WM_SIZING' , , .T. } ) + aAdd( aDefRules, { 'MK_LBUTTON' , , .T. } ) + aAdd( aDefRules, { 'WM_MOUSEMOVE' , , .T. } ) + aAdd( aDefRules, { 'WM_CONTEXTMENU' , , .T. } ) + aAdd( aDefRules, { 'WM_TIMER' , , .T. } ) + aAdd( aDefRules, { 'WM_SIZE' , , .T. } ) + aAdd( aDefRules, { 'TBM_SETPOS' , , .T. } ) + aAdd( aDefRules, { 'TBM_GETPOS' , , .T. } ) + aAdd( aDefRules, { 'PBM_SETPOS' , , .T. } ) + aAdd( aDefRules, { 'WM_SYSCOMMAND' , , .T. } ) + aAdd( aDefRules, { 'SC_CLOSE' , , .T. } ) + aAdd( aDefRules, { 'WM_KEYDOWN' , , .T. } ) + aAdd( aDefRules, { 'WM_CLOSE' , , .T. } ) + aAdd( aDefRules, { 'WM_COMMAND' , , .T. } ) + aAdd( aDefRules, { 'WM_DESTROY' , , .T. } ) + aAdd( aDefRules, { 'WM_LBUTTONDOWN' , , .T. } ) + aAdd( aDefRules, { 'WM_NOTIFY' , , .T. } ) + aAdd( aDefRules, { 'WM_CREATE' , , .T. } ) + aAdd( aDefRules, { 'WM_QUIT' , , .T. } ) + aAdd( aDefRules, { 'BIF_RETURNONLYFSDIRS' , , .T. } ) + aAdd( aDefRules, { 'BIF_DONTGOBELOWDOMAIN' , , .T. } ) + aAdd( aDefRules, { 'BIF_STATUSTEXT' , , .T. } ) + aAdd( aDefRules, { 'BIF_RETURNFSANCESTORS' , , .T. } ) + aAdd( aDefRules, { 'BIF_EDITBOX' , , .T. } ) + aAdd( aDefRules, { 'BIF_VALIDATE' , , .T. } ) + aAdd( aDefRules, { 'BIF_NEWDIALOGSTYLE' , , .T. } ) + aAdd( aDefRules, { 'BIF_USENEWUI' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) + aAdd( aDefRules, { 'BIF_BROWSEINCLUDEURLS' , , .T. } ) + aAdd( aDefRules, { 'BIF_BROWSEFORCOMPUTER' , , .T. } ) + aAdd( aDefRules, { 'BIF_BROWSEFORPRINTER' , , .T. } ) + aAdd( aDefRules, { 'BIF_BROWSEINCLUDEFILES' , , .T. } ) + aAdd( aDefRules, { 'BIF_SHAREABLE' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_DESKTOP' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_INTERNET' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROGRAMS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_CONTROLS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PRINTERS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PERSONAL' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_FAVORITES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_STARTUP' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_RECENT' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_SENDTO' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_BITBUCKET' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_STARTMENU' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_DESKTOPDIRECTORY' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_DRIVES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_NETWORK' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_NETHOOD' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_FONTS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_TEMPLATES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_STARTMENU' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_PROGRAMS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_STARTUP' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_DESKTOPDIRECTORY' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_APPDATA' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PRINTHOOD' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_LOCAL_APPDATA' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_ALTSTARTUP' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_ALTSTARTUP' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_FAVORITES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_INTERNET_CACHE' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COOKIES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_HISTORY' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_APPDATA' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_WINDOWS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_SYSTEM' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROGRAM_FILES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_MYPICTURES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROFILE' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_SYSTEMX86' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROGRAM_FILESX86' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROGRAM_FILES_COMMON' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_PROGRAM_FILES_COMMONX86' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_TEMPLATES' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_DOCUMENTS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_COMMON_ADMINTOOLS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_ADMINTOOLS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_CONNECTIONS' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_FLAG_CREATE' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_FLAG_DONT_VERIFY' , , .T. } ) + aAdd( aDefRules, { 'CSIDL_FLAG_MASK' , , .T. } ) + + /* Translates */ + + /* Commands */ + aAdd( aCommRules, { 'ENABLE' , { { 1, 0, 'MENUITEM', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DISABLE' , { { 1, 0, 'MENUITEM', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'CHECK' , { { 1, 0, 'MENUITEM', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'UNCHECK' , { { 1, 0, 'MENUITEM', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'MAIN', NIL, NIL }, { 0, 0, 'MENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'MAINMENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'CONTEXT', NIL, NIL }, { 0, 0, 'MENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'CONTEXTMENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'END' , { { 0, 0, 'DEFINE', NIL, NIL } } , .F. } ) + aAdd( aCommRules, { 'POPUP' , { { 1, 0, NIL, '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'END' , { { 0, 0, 'POPUP', NIL, NIL } } , .F. } ) + aAdd( aCommRules, { 'ITEM' , { { 1, 0, NIL, '<', NIL }, { 2, 0, 'ACTION', '<', NIL }, { 3, 1, 'NAME', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'SEPARATOR' , , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'TIMER', '<', NIL }, { 2, 0, 'OF', '<', NIL }, { 3, 0, 'INTERVAL', '<', NIL }, { 4, 0, 'ACTION', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PANEL', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'WIDTH', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'HEIGHT', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SLIDER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'WIDTH', '<', NIL }, { 9, 0, 'HEIGHT', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PROGRESSBAR', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PROGRESSBAR', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PROGRESSBAR', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'HEIGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 0, 'AT', '<', NIL }, { 3, 0, ',', '<', NIL }, { 4, 0, 'WIDTH', '<', NIL }, { 5, 0, 'HEIGHT', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 7, 1, NIL, ':', { 'NOMINIMIZE' } }, { 8, 1, NIL, ':', { 'NOMAXIMIZE' } }, { 9, 1, NIL, ':', { 'NOSIZE' } }, { 10, 1, NIL, ':', { 'NOSYSMENU' } }, { 11, 1, NIL, ':', { 'NOCAPTION' } }, { 12, 1, NIL, ':', { 'STATUSBAR' } }, { 13, 1, NIL, '<', { 'ON', 'ON', 'ON', 'ON', 'ON', 'ON' } }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'INIT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 15, -1, 'RELEASE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 16, -1, 'MOUSECLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 17, -1, 'MOUSEDRAG', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 18, -1, 'MOUSEMOVE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 19, -1, 'SIZE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 0, 'AT', '<', NIL }, { 3, 0, ',', '<', NIL }, { 4, 0, 'WIDTH', '<', NIL }, { 5, 0, 'HEIGHT', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 0, 0, 'TOPMOST', NIL, NIL }, { 7, 1, NIL, ':', { 'NOMINIMIZE' } }, { 8, 1, NIL, ':', { 'NOMAXIMIZE' } }, { 9, 1, NIL, ':', { 'NOSIZE' } }, { 10, 1, NIL, ':', { 'NOSYSMENU' } }, { 11, 1, NIL, ':', { 'NOCAPTION' } }, { 12, 1, NIL, ':', { 'STATUSBAR' } }, { 13, 1, NIL, '<', { 'ON', 'ON', 'ON', 'ON', 'ON', 'ON' } }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'INIT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 15, -1, 'RELEASE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 16, -1, 'MOUSECLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 17, -1, 'MOUSEDRAG', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 18, -1, 'MOUSEMOVE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 19, -1, 'SIZE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 0, 'OF', '<', NIL }, { 3, 0, 'AT', '<', NIL }, { 4, 0, ',', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 1, 'TITLE', '<', NIL }, { 0, 0, 'MODAL', NIL, NIL }, { 8, 1, NIL, ':', { 'NOSIZE' } }, { 9, 1, NIL, ':', { 'NOSYSMENU' } }, { 10, 1, NIL, ':', { 'NOCAPTION' } }, { 11, 1, NIL, ':', { 'STATUSBAR' } }, { 12, 1, NIL, '<', { 'ON', 'ON', 'ON', 'ON', 'ON', 'ON' } }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'INIT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'RELEASE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 15, -1, 'MOUSECLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 16, -1, 'MOUSEDRAG', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 17, -1, 'MOUSEMOVE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 18, -1, 'SIZE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'BUTTON', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'ACTION', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'BUTTON', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'ACTION', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'HEIGHT', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'BUTTON', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'ACTION', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'BUTTON', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'ACTION', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'HEIGHT', '<', NIL }, { 9, 0, 'FONT', '<', NIL }, { 10, 0, 'SIZE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'BUTTON', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'BITMAP', '<', NIL }, { 6, 0, 'ACTION', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'HEIGHT', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'IMAGE', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'FILENAME', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'IMAGE', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'FILENAME', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'HEIGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'CHECKBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'CHECKBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'CHECKBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'CHECKBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'RADIOGROUP', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'OPTIONS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'RADIOGROUP', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'OPTIONS', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'RADIOGROUP', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'OPTIONS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'RADIOGROUP', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'OPTIONS', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LABEL', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LABEL', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LABEL', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'HEIGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LABEL', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'HEIGHT', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'FONT', '<', NIL }, { 6, 0, 'SIZE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'VALUE', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'ROWS', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'COMBOBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'FONT', '<', NIL }, { 6, 0, 'SIZE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'DATEPICKER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'ROWS', '<', NIL }, { 8, 0, 'VALUE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'ROWS', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'ROWS', '<', NIL }, { 8, 0, 'VALUE', '<', NIL }, { 9, 0, 'FONT', '<', NIL }, { 10, 0, 'SIZE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'ROWS', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'LISTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'WIDTH', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'WIDTH', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'SPINNER', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'RANGE', '<', NIL }, { 6, 0, ',', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'WIDTH', '<', NIL }, { 9, 0, 'FONT', '<', NIL }, { 10, 0, 'SIZE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 1, 'TOOLTIP', '<', NIL }, { 6, 1, 'MAXLENGHT', '<', NIL }, { 7, 1, NIL, ':', { 'UPPERCASE' } }, { 8, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 8, 1, NIL, ':', { 'UPPERCASE' } }, { 9, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 8, 1, NIL, ':', { 'UPPERCASE' } }, { 9, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 9, 1, NIL, ':', { 'UPPERCASE' } }, { 10, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'FONT', '<', NIL }, { 6, 0, 'SIZE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 9, 1, NIL, ':', { 'UPPERCASE' } }, { 10, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 10, 1, NIL, ':', { 'UPPERCASE' } }, { 11, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 10, 1, NIL, ':', { 'UPPERCASE' } }, { 11, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 10, 1, 'MAXLENGHT', '<', NIL }, { 11, 1, NIL, ':', { 'UPPERCASE' } }, { 12, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 15, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 1, 'WIDTH', '<', NIL }, { 6, 1, 'VALUE', '<', NIL }, { 7, 1, 'FONT', '<', NIL }, { 8, 1, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 10, 0, 'INPUTMASK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 5, 1, 'TOOLTIP', '<', NIL }, { 6, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 7, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 8, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 8, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 8, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 5, 0, 'FONT', '<', NIL }, { 6, 0, 'SIZE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 0, 0, 'NUMERIC', NIL, NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 10, 1, 'MAXLENGHT', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 5, 1, 'TOOLTIP', '<', NIL }, { 6, 1, 'MAXLENGHT', '<', NIL }, { 7, 1, NIL, ':', { 'UPPERCASE' } }, { 8, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 8, 1, NIL, ':', { 'UPPERCASE' } }, { 9, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 6, 1, 'TOOLTIP', '<', NIL }, { 7, 1, 'MAXLENGHT', '<', NIL }, { 8, 1, NIL, ':', { 'UPPERCASE' } }, { 9, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 10, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 9, 1, NIL, ':', { 'UPPERCASE' } }, { 10, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 5, 0, 'FONT', '<', NIL }, { 6, 0, 'SIZE', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL }, { 9, 1, NIL, ':', { 'UPPERCASE' } }, { 10, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 11, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 10, 1, NIL, ':', { 'UPPERCASE' } }, { 11, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 6, 0, 'FONT', '<', NIL }, { 7, 0, 'SIZE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL }, { 10, 1, NIL, ':', { 'UPPERCASE' } }, { 11, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 12, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TEXTBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'VALUE', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 0, 0, 'PASSWORD', NIL, NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 10, 1, 'MAXLENGHT', '<', NIL }, { 11, 1, NIL, ':', { 'UPPERCASE' } }, { 12, 1, NIL, ':', { 'LOWERCASE' } }, { 0, 1, 'ON', NIL, NIL }, { 13, -1, 'GOTFOCUS', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 14, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 15, -1, 'LOSTFOCUS', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 10, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL }, { 11, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 0, 0, 'READONLY', NIL, NIL }, { 7, 1, 'TOOLTIP', '<', NIL }, { 8, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 0, 0, 'READONLY', NIL, NIL }, { 8, 1, 'TOOLTIP', '<', NIL }, { 9, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 0, 0, 'READONLY', NIL, NIL }, { 7, 0, 'FONT', '<', NIL }, { 8, 0, 'SIZE', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL }, { 10, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'EDITBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'VALUE', '<', NIL }, { 0, 0, 'READONLY', NIL, NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL }, { 11, 1, 'MAXLENGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GROUPBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'HEIGHT', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GROUPBOX', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'CAPTION', '<', NIL }, { 6, 0, 'WIDTH', '<', NIL }, { 7, 0, 'HEIGHT', '<', NIL }, { 8, 0, 'FONT', '<', NIL }, { 9, 0, 'SIZE', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 0, 'ROWS', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 0, 'ROWS', '<', NIL }, { 10, 0, 'VALUE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 0, 'ROWS', '<', NIL }, { 10, 0, 'FONT', '<', NIL }, { 11, 0, 'SIZE', '<', NIL }, { 12, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 0, 'FONT', '<', NIL }, { 10, 0, 'SIZE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'GRID', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'HEADERS', '<', NIL }, { 8, 0, 'WIDTHS', '<', NIL }, { 9, 0, 'ROWS', '<', NIL }, { 10, 0, 'VALUE', '<', NIL }, { 11, 0, 'FONT', '<', NIL }, { 12, 0, 'SIZE', '<', NIL }, { 13, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TAB', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'CAPTIONS', '<', NIL }, { 8, 0, 'MAP', '<', NIL }, { 9, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TAB', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'CAPTIONS', '<', NIL }, { 8, 0, 'MAP', '<', NIL }, { 9, 0, 'VALUE', '<', NIL }, { 10, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TAB', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'CAPTIONS', '<', NIL }, { 8, 0, 'MAP', '<', NIL }, { 9, 0, 'FONT', '<', NIL }, { 10, 0, 'SIZE', '<', NIL }, { 11, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'TAB', '<', NIL }, { 4, 0, 'OF', '<', NIL }, { 5, 0, 'WIDTH', '<', NIL }, { 6, 0, 'HEIGHT', '<', NIL }, { 7, 0, 'CAPTIONS', '<', NIL }, { 8, 0, 'MAP', '<', NIL }, { 9, 0, 'VALUE', '<', NIL }, { 10, 0, 'FONT', '<', NIL }, { 11, 0, 'SIZE', '<', NIL }, { 12, 1, 'TOOLTIP', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'SETFOCUS' , { { 1, 0, NIL, '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'ADD' , { { 1, 0, 'ITEM', '<', NIL }, { 2, 0, 'TO', '<', NIL }, { 3, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DELETE' , { { 1, 0, 'ITEM', '<', NIL }, { 2, 0, 'FROM', '<', NIL }, { 3, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DELETE' , { { 0, 0, 'ITEM', NIL, NIL }, { 0, 0, 'ALL', NIL, NIL }, { 1, 0, 'FROM', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'PREVIEW' , { { 1, 0, 'REPORT', '<', NIL }, { 2, 1, 'FOR', '<', NIL }, { 3, 1, NIL, ':', { 'PLAIN' } }, { 4, 1, 'HEADING', '<', NIL }, { 5, 1, NIL, ':', { 'SUMMARY' } } } , .F. } ) + aAdd( aCommRules, { 'RELEASE' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'RELEASE' , { { 0, 0, 'WINDOW', NIL, NIL }, { 0, 0, 'ALL', NIL, NIL } } , .F. } ) + aAdd( aCommRules, { 'ENABLE' , { { 1, 0, 'CONTROL', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'SHOW' , { { 1, 0, 'CONTROL', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'HIDE' , { { 1, 0, 'CONTROL', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'DISABLE' , { { 1, 0, 'CONTROL', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'WINDOW', 'A', NIL } } , .F. } ) + aAdd( aCommRules, { 'CENTER' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'MAXIMIZE' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'MINIMIZE' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'RESTORE' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'SHOW' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + aAdd( aCommRules, { 'HIDE' , { { 1, 0, 'WINDOW', '<', NIL } } , .F. } ) + + RETURN .T. + + //--------------------------------------------------------------// + + FUNCTION InitMiniGUIResults() + + /* Defines Results*/ + aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '512' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '772' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '185' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '770' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '258' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '196' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '177' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '771' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '176' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '199' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '768' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '532' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '512' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '123' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '275' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1029' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1026' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '274' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '61536' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0010' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0111' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0002' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0201' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '78' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '18' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0001' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0002' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0004' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0008' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0010' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0020' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0040' } }, { -1} , } ) + aAdd( aDefResults, { , , } ) + aAdd( aDefResults, { { { 0, '0x0080' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x1000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x2000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x4000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x8000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0001' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0002' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0003' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0004' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0005' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0006' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0007' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0008' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0009' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x000a' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x000b' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0010' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0011' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0012' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0013' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0014' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0015' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0016' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0X0017' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0018' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0019' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001a' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001b' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001c' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001d' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001e' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x001f' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0020' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0021' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0022' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0023' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0024' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0025' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0026' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0027' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0028' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0029' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002a' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002b' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002c' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002d' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002e' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x002f' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0030' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x0031' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x8000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0x4000' } }, { -1} , } ) + aAdd( aDefResults, { { { 0, '0xFF00' } }, { -1} , } ) + + /* Translates Results*/ + + /* Commands Results*/ + aAdd( aCommResults, { { { 0, 'EnableMenuItem ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DisableMenuItem ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'CheckMenuItem ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'UnCheckMenuItem ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineMainMenu ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineMainMenu ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineContextMenu ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineContextMenu ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'EndMenu ()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'DefinePopup ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'EndPopup ()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'DefineItem ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' , ' }, { 0, 3 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSeparator ()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'DefineTimer ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' , ' }, { 0, 3 }, { 0, ' , ' }, { 0, 4 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePanel ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 35 , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 35 , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', 35 , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 8 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 8 }, { 0, ', 35 , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ' ,' }, { 0, 7 }, { 0, ' , ' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSlider ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 10 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineProgressBar ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 25, ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineProgressBar ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', 25, ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineProgressBar ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ',' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineWindow ( ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ',' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ',' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' , ' }, { 0, 17 }, { 0, ', ' }, { 0, 19 }, { 0, ' , ' }, { 0, 16 }, { 0, ' , ' }, { 0, 18 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTopmostWindow ( ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ' ,' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ' ,' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' , ' }, { 0, 17 }, { 0, ' , ' }, { 0, 19 }, { 0, ' , ' }, { 0, 16 }, { 0, ' , ' }, { 0, 18 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineModalWindow ( ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 2 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' ,' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ',' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ' , ' }, { 0, 16 }, { 0, ' , ' }, { 0, 18 }, { 0, ' , ' }, { 0, 15 }, { 0, ' , ' }, { 0, 17 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineButton ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,100,28,"",0 ,' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineButton ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,' }, { 0, 7 }, { 0, ',' }, { 0, 8 }, { 0, ',"",0 ,' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineButton ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,100,28,' }, { 0, 7 }, { 0, ',' }, { 0, 8 }, { 0, ' ,' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineButton ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,' }, { 0, 7 }, { 0, ',' }, { 0, 8 }, { 0, ',' }, { 0, 9 }, { 0, ',' }, { 0, 10 }, { 0, ' ,' }, { 0, 11 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineImageButton ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', "", ' }, { 0, 6 }, { 0, ' ,' }, { 0, 7 }, { 0, ',' }, { 0, 8 }, { 0, ',' }, { 0, 5 }, { 0, ' ,' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineImage ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,0 ,0 )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineImage ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCheckBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ',"", 0 , ' }, { 0, 7 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCheckBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', .f., "", 0 , ' }, { 0, 6 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCheckBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 3 }, { 0, ' , ' }, { 0, 9 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCheckBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', .f. ,' }, { 0, 6 }, { 0, ' ,' }, { 0, 3 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineradioGroup ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineradioGroup ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', 0 , ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineradioGroup ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineradioGroup ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', 0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineLabel ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', 0, 28, "", 0 )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineLabel ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', 28, "", 0 )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineLabel ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', "", 0 )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineLabel ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,"",0 , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ', 0 ,"",0 , ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, {} , 0 ,"",0 , ' }, { 0, 5 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' ,"",0 , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ', 0 ,"",0 , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', {} , 0 ,"",0 , ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ', 0 , ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, {} , 0 , ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ', 0 , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineCombo ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', {} , 0 , ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 25 , Date() , "", 0, ' }, { 0, 5 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', 25 ,Date() ,"",0 , ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 25 ,' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 6 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', 25 ,' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 25 ,Date() ,' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', 25 ,Date() ,' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, 25 ,' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineDatePick ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', 25 ,' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' ,"",0 , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', 0 ,"",0 , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', {}, 0 ,"",0 , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', 0 , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineListBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', {}, 0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' ,"",0 ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 7 }, { 0, ' ,"",0 ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,"",0 ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 7 }, { 0, ' ,"",0 ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' ,' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ',' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineSpinner ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ',' }, { 0, 5 }, { 0, ' ,' }, { 0, 6 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" ,"",0 , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 14 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 13 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 14 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 13 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 15 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 14 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineMaskedTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 10 }, { 0, ' , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" ,"",0 , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineNumericTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" ,"",0 , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" ,"",0 , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' ,"",0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, "" , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', 120, ' }, { 0, 5 }, { 0, ' , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 14 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 13 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', "" , ' }, { 0, 6 }, { 0, ' , ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 14 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 13 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefinePasswordTextBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 5 }, { 0, ' , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' , ' }, { 0, 15 }, { 0, ' , ' }, { 0, 13 }, { 0, ' , ' }, { 0, 14 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ',"", "", 0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', "", 0 , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', "" ,' }, { 0, 7 }, { 0, ',' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' ,' }, { 0, 8 }, { 0, ',' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineReadOnlyEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', "","",0 , ' }, { 0, 7 }, { 0, ' , ' }, { 0, 8 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineReadOnlyEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ',"",0 , ' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineReadOnlyEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', "" ,' }, { 0, 7 }, { 0, ' ,' }, { 0, 8 }, { 0, ' , ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineReadOnlyEditBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' ,' }, { 0, 8 }, { 0, ' ,' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGroupBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ',"",0 )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGroupBox ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , 0 ,"",0, ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', {} , 0 ,"",0, ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ',"",0 , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , 0 ,' }, { 0, 10 }, { 0, ',' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', {} , 0 ,' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineGrid ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ',' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ' , ' }, { 0, 13 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTab ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', 1 ,"",0 , ' }, { 0, 9 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTab ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' ,"",0 , ' }, { 0, 10 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTab ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', 1 , ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' , ' }, { 0, 11 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DefineTab ( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' , ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ' , ' }, { 0, 12 }, { 0, ' )' } }, { -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'SetFocus(' }, { 0, 1 }, { 0, ',' }, { 0, 2 }, { 0, ')' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'AddItem(' }, { 0, 2 }, { 0, ',' }, { 0, 3 }, { 0, ',' }, { 0, 1 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DeleteItem(' }, { 0, 2 }, { 0, ',' }, { 0, 3 }, { 0, ',' }, { 0, 1 }, { 0, ')' } }, { -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DeleteAllItems(' }, { 0, 1 }, { 0, ',' }, { 0, 2 }, { 0, ')' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'PreviewReport ( ' }, { 0, 1 }, { 0, ', ' }, { 0, 3 }, { 0, ' , ' }, { 0, 5 }, { 0, ' , ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ' )' } }, { -1, 1, -1, 6, -1, 6, -1, 3, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'ReleaseWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'ReleaseAllWindows()' } }, { -1} , } ) + aAdd( aCommResults, { { { 0, 'EnableControl ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'ShowControl ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'HideControl ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'DisableControl ( ' }, { 0, 1 }, { 0, ' , ' }, { 0, 2 }, { 0, ' )' } }, { -1, 1, -1, 1, -1} , { NIL, NIL } } ) + aAdd( aCommResults, { { { 0, 'ActivateWindowx ( {' }, { 0, 1 }, { 0, '} )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'CenterWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'MaximizeWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'MinimizeWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'RestoreWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'ShowWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + aAdd( aCommResults, { { { 0, 'HideWindow ( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) + + RETURN .T. + + #include "MiniGui.prg" + + #endif + + //--------------------------------------------------------------// + #ifdef USE_C_BOOST + + #ifdef __XHARBOUR__ + #pragma BEGINDUMP + #define __XHARBOUR__ + #pragma ENDDUMP + #endif + + #pragma BEGINDUMP + + #include + + #include "hbapi.h" + #include "hbstack.h" + #include "hbapierr.h" + #include "hbapiitm.h" + #include "hbvm.h" + + #ifdef __XHARBOUR__ + #include "hbfast.h" + #endif + + static BOOL s_bArrayPrefix = FALSE; + + //----------------------------------------------------------------------------// + static HB_FUNC( SETARRAYPREFIX ) { - sReturn[0] = s2[0]; - sReturn[1] = s2[1]; - sReturn[2] = '\0'; + PHB_ITEM pbArrayPrefix = hb_param( 1, HB_IT_LOGICAL ); - goto Done; - } - else if( s2[0] == '[' && s2[1] == '[' ) - { - pTmp = strstr( sLine + 2, "]]" ); - if( pTmp == NULL ) + if( pbArrayPrefix != NULL ) { - sReturn[0] = '['; // Clipper does NOT consider '[[' a single token - sReturn[1] = '\0'; + s_bArrayPrefix = pbArrayPrefix->item.asLogical.value; + } + } + + //----------------------------------------------------------------------------// + static HB_FUNC( GETARRAYPREFIX ) + { + hb_retl( s_bArrayPrefix ); + } + + //----------------------------------------------------------------------------// + static HB_FUNC( NEXTTOKEN ) + { + PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); + PHB_ITEM pDontRecord = hb_param( 2, HB_IT_LOGICAL ); + char *sLine, *pTmp; + char sReturn[2048]; + char s2[3]; + BOOL lDontRecord; + size_t Counter, nLen; + + #ifdef DEBUG_TOKEN + char sProc[64]; + USHORT uiLine; + #endif + + if( pLine == NULL || pLine->item.asString.length == 0 ) + { + hb_ret(); + return; + } + + sLine = pLine->item.asString.value; + nLen = pLine->item.asString.length; + + #ifdef DEBUG_TOKEN + hb_procinfo( 1, (char *) &sProc, &uiLine ); + printf( "%s[%i] Processing: '%s'\n", (char *) sProc, uiLine, sLine ); + #endif + + if( pDontRecord == NULL ) + { + lDontRecord = FALSE; } else { - strncpy( sReturn, sLine, ( pTmp - sLine ) + 2 ); - sReturn[( pTmp - sLine ) + 2] = '\0'; + lDontRecord = pDontRecord->item.asLogical.value; } - goto Done; - } - } - - if( isalpha( sLine[0] ) || sLine[0] == '_' ) - { - sReturn[0] = sLine[0]; - Counter = 1; - while( isalnum( sLine[Counter] ) || sLine[Counter] == '_' || sLine[Counter] == '\\' ) - { - sReturn[Counter] = sLine[Counter]; - Counter++; - } - - sReturn[Counter] = '\0'; - goto Done; - } - else if( isdigit( sLine[0] ) ) - { - sReturn[0] = sLine[0]; - Counter = 1; - while( isdigit( sLine[Counter] ) || sLine[Counter] == '\\' ) - { - sReturn[Counter] = sLine[Counter]; - Counter++; - } - - // Consume the point (and subsequent digits) only if digits follow... - if( sLine[Counter] == '.' && isdigit( sLine[Counter + 1] ) ) - { - sReturn[Counter] = '.'; - Counter++; - sReturn[Counter] = sLine[Counter]; - Counter++; - while( isdigit( sLine[Counter] ) || sLine[Counter] == '\\' ) + // *** To be removed after final testing !!! + while( sLine[0] == ' ' ) { - sReturn[Counter] = sLine[Counter]; - Counter++; + sLine++; nLen--; } - } - // Either way we are done. - sReturn[Counter] = '\0'; - goto Done; - } - else if( sLine[0] == '.' && isdigit( sLine[1] ) ) - { - sReturn[0] = '.'; - sReturn[1] = sLine[1]; - Counter = 2; - while( isdigit( sLine[Counter] ) ) - { - sReturn[Counter] = sLine[Counter]; - Counter++; - } + sReturn[0] = '\0'; + s2[2] = '\0'; - sReturn[Counter] = '\0'; - goto Done; - } - else if( sLine[0] == '.' ) - { - if( nLen >= 5 && sLine[4] == '.' ) - { - if( toupper( sLine[1] ) == 'A' && toupper( sLine[2] ) == 'N' && toupper( sLine[3] ) == 'D' ) + if( nLen >= 2 ) { - sReturn[0] = '.'; - sReturn[1] = 'A'; - sReturn[2] = 'N'; - sReturn[3] = 'D'; - sReturn[4] = '.'; - sReturn[5] = '\0'; + s2[0] = sLine[0]; + s2[1] = sLine[1]; + if( strstr( "++\\--\\->\\:=\\==\\!=\\<>\\>=\\<=\\+=\\-=\\*=\\^=\\**\\/=\\%=", (char*) s2 ) ) + { + sReturn[0] = s2[0]; + sReturn[1] = s2[1]; + sReturn[2] = '\0'; + + goto Done; + } + else if( s2[0] == '[' && s2[1] == '[' ) + { + pTmp = strstr( sLine + 2, "]]" ); + if( pTmp == NULL ) + { + sReturn[0] = '['; // Clipper does NOT consider '[[' a single token + sReturn[1] = '\0'; + } + else + { + strncpy( sReturn, sLine, ( pTmp - sLine ) + 2 ); + sReturn[( pTmp - sLine ) + 2] = '\0'; + } + + goto Done; + } + } + + if( isalpha( sLine[0] ) || sLine[0] == '_' ) + { + sReturn[0] = sLine[0]; + Counter = 1; + + // Why did I have the '\\' is NOT clear - document if and when reinstating!!! + while( isalnum( sLine[Counter] ) || sLine[Counter] == '_' ) //|| sLine[Counter] == '\\' ) + { + sReturn[Counter] = sLine[Counter]; + Counter++; + } + + sReturn[Counter] = '\0'; goto Done; } - else if( toupper( sLine[1] ) == 'N' && toupper( sLine[2] ) == 'O' && toupper( sLine[3] ) == 'T' ) + else if( isdigit( sLine[0] ) ) { - sReturn[0] = '!'; + sReturn[0] = sLine[0]; + Counter = 1; + while( isdigit( sLine[Counter] ) || sLine[Counter] == '\\' ) + { + sReturn[Counter] = sLine[Counter]; + Counter++; + } + + // Consume the point (and subsequent digits) only if digits follow... + if( sLine[Counter] == '.' && isdigit( sLine[Counter + 1] ) ) + { + sReturn[Counter] = '.'; + Counter++; + sReturn[Counter] = sLine[Counter]; + Counter++; + while( isdigit( sLine[Counter] ) || sLine[Counter] == '\\' ) + { + sReturn[Counter] = sLine[Counter]; + Counter++; + } + } + + // Either way we are done. + sReturn[Counter] = '\0'; + goto Done; + } + else if( sLine[0] == '.' && isdigit( sLine[1] ) ) + { + sReturn[0] = '.'; + sReturn[1] = sLine[1]; + Counter = 2; + while( isdigit( sLine[Counter] ) ) + { + sReturn[Counter] = sLine[Counter]; + Counter++; + } + + sReturn[Counter] = '\0'; + goto Done; + } + else if( sLine[0] == '.' ) + { + if( nLen >= 5 && sLine[4] == '.' ) + { + if( toupper( sLine[1] ) == 'A' && toupper( sLine[2] ) == 'N' && toupper( sLine[3] ) == 'D' ) + { + sReturn[0] = '.'; + sReturn[1] = 'A'; + sReturn[2] = 'N'; + sReturn[3] = 'D'; + sReturn[4] = '.'; + sReturn[5] = '\0'; + + goto Done; + } + else if( toupper( sLine[1] ) == 'N' && toupper( sLine[2] ) == 'O' && toupper( sLine[3] ) == 'T' ) + { + sReturn[0] = '!'; + sReturn[1] = '\0'; + + /* Skip the unaccounted letters ( .NOT. <-> ! ) */ + sLine += 4; + + goto Done; + } + } + + if( nLen >= 4 && sLine[3] == '.' && toupper( sLine[1] ) == 'O' && toupper( sLine[2] ) == 'R' ) + { + sReturn[0] = '.'; + sReturn[1] = 'O'; + sReturn[2] = 'R'; + sReturn[3] = '.'; + sReturn[4] = '\0'; + + goto Done; + } + + if( nLen >= 3 && sLine[2] == '.' ) + { + if( toupper( sLine[1] ) == 'T' ) + { + sReturn[0] = '.'; + sReturn[1] = 'T'; + sReturn[2] = '.'; + sReturn[3] = '\0'; + + goto Done; + } + else if( toupper( sLine[1] ) == 'F' ) + { + sReturn[0] = '.'; + sReturn[1] = 'F'; + sReturn[2] = '.'; + sReturn[3] = '\0'; + + goto Done; + } + } + + sReturn[0] = '.'; sReturn[1] = '\0'; - /* Skip the unaccounted letters ( .NOT. <-> ! ) */ - sLine += 4; - goto Done; } - } - - if( nLen >= 4 && sLine[3] == '.' && toupper( sLine[1] ) == 'O' && toupper( sLine[2] ) == 'R' ) - { - sReturn[0] = '.'; - sReturn[1] = 'O'; - sReturn[2] = 'R'; - sReturn[3] = '.'; - sReturn[4] = '\0'; - - goto Done; - } - - if( nLen >= 3 && sLine[2] == '.' ) - { - if( toupper( sLine[1] ) == 'T' ) + else if( sLine[0] == '"' ) { - sReturn[0] = '.'; - sReturn[1] = 'T'; - sReturn[2] = '.'; - sReturn[3] = '\0'; - - goto Done; - } - else if( toupper( sLine[1] ) == 'F' ) - { - sReturn[0] = '.'; - sReturn[1] = 'F'; - sReturn[2] = '.'; - sReturn[3] = '\0'; - - goto Done; - } - } - - sReturn[0] = '.'; - sReturn[1] = '\0'; - - goto Done; - } - else if( sLine[0] == '"' ) - { - pTmp = strchr( sLine + 1, '"' ); - if( pTmp == NULL ) - { - sReturn[0] = '"'; - sReturn[1] = '\0'; - } - else - { - strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); - sReturn[( pTmp - sLine ) + 1] = '\0'; - } - - goto Done; - } - else if( sLine[0] == '\'' ) - { - pTmp = strchr( sLine + 1, '\'' ); - if( pTmp == NULL ) - { - sReturn[0] = '\''; - sReturn[1] = '\0'; - } - else - { - strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); - sReturn[( pTmp - sLine ) + 1] = '\0'; - - if( strchr( sReturn, '"' ) == NULL ) - { - sReturn[0] = '"'; - sReturn[( pTmp - sLine )] = '"'; - } - } - - goto Done; - } - else if( sLine[0] == '[' ) - { - if( s_bArrayPrefix ) - { - sReturn[0] = '['; - sReturn[1] = '\0'; - } - else - { - pTmp = strchr( sLine + 1, ']' ); - if( pTmp == NULL ) - { - sReturn[0] = '['; - sReturn[1] = '\0'; - } - else - { - strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); - sReturn[( pTmp - sLine ) + 1] = '\0'; - - if( strchr( sReturn, '"' ) == NULL ) + pTmp = strchr( sLine + 1, '"' ); + if( pTmp == NULL ) { sReturn[0] = '"'; - sReturn[( pTmp - sLine )] = '"'; + sReturn[1] = '\0'; } - else if( strchr( sReturn, '\'' ) == NULL ) + else + { + strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); + sReturn[( pTmp - sLine ) + 1] = '\0'; + } + + goto Done; + } + else if( sLine[0] == '\'' ) + { + pTmp = strchr( sLine + 1, '\'' ); + if( pTmp == NULL ) { sReturn[0] = '\''; - sReturn[( pTmp - sLine )] = '\''; + sReturn[1] = '\0'; + } + else + { + strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); + sReturn[( pTmp - sLine ) + 1] = '\0'; + + if( strchr( sReturn, '"' ) == NULL ) + { + sReturn[0] = '"'; + sReturn[( pTmp - sLine )] = '"'; + } + } + + goto Done; + } + else if( sLine[0] == '[' ) + { + if( s_bArrayPrefix ) + { + sReturn[0] = '['; + sReturn[1] = '\0'; + } + else + { + pTmp = strchr( sLine + 1, ']' ); + if( pTmp == NULL ) + { + sReturn[0] = '['; + sReturn[1] = '\0'; + } + else + { + strncpy( sReturn, sLine, ( pTmp - sLine ) + 1 ); + sReturn[( pTmp - sLine ) + 1] = '\0'; + + if( strchr( sReturn, '"' ) == NULL ) + { + sReturn[0] = '"'; + sReturn[( pTmp - sLine )] = '"'; + } + else if( strchr( sReturn, '\'' ) == NULL ) + { + sReturn[0] = '\''; + sReturn[( pTmp - sLine )] = '\''; + } + } + } + + goto Done; + } + else if( sLine[0] == '\\' ) + { + sReturn[0] = '\\'; + sReturn[1] = sLine[1]; + sReturn[2] = '\0'; + + goto Done; + } + else if ( strchr( "+-*/:=^!&()[]{}@,|<>#%?$~", sLine[0] ) ) + { + sReturn[0] = sLine[0]; + sReturn[1] = '\0'; + + goto Done; + } + else + { + // Todo Generic Error. + //printf( "\nUnexpected case: %s\n", sLine ); + //getchar(); + sReturn[0] = sLine[0]; + sReturn[1] = '\0'; + } + + Done: + + sLine += ( nLen = strlen( sReturn ) ); + + if( ! lDontRecord ) + { + if( sReturn[0] == '.' && nLen > 1 && sReturn[nLen - 1] == '.' ) + { + s_bArrayPrefix = FALSE; + } + else + { + s_bArrayPrefix = ( isalnum( sReturn[0] ) || strchr( "])}._", sReturn[0] ) ); + + if( nLen < 7 && toupper( sReturn[0] ) == 'R' && toupper( sReturn[1] ) == 'E' && + toupper( sReturn[2] ) == 'T' && toupper( sReturn[3] ) == 'U' ) + { + if( sReturn[4] == '\0' ) + { + s_bArrayPrefix = FALSE; + } + else if( toupper( sReturn[4] ) == 'R' ) + { + if( sReturn[5] == '\0' ) + { + s_bArrayPrefix = FALSE; + } + else if( toupper( sReturn[5] ) == 'N' && sReturn[6] == '\0' ) + { + s_bArrayPrefix = FALSE; + } + } + } } } + + while( sLine[0] == ' ' ) + { + sReturn[nLen] = sLine[0]; + sLine++; nLen++; + } + sReturn[nLen] = '\0'; + + if( ISBYREF( 1 ) ) + { + if( sLine[0] == '\0' ) + { + hb_itemPutC( pLine, NULL ); + } + else + { + hb_itemPutCPtr( pLine, hb_strdup( sLine ), strlen( sLine ) ); + } + //printf( "\nToken: '%s' value: '%s'\n", sReturn, pLine->item.asString.value ); + } + else + { + //printf( "\nToken: '%s' ***value: '%s'\n", sReturn, pLine->item.asString.value ); + } + + #ifdef DEBUG_TOKEN + printf( "Token: '%s'\n", sReturn ); + #endif + + hb_retclen( sReturn, nLen ); } - goto Done; - } - else if( sLine[0] == '\\' ) - { - sReturn[0] = '\\'; - sReturn[1] = sLine[1]; - sReturn[2] = '\0'; - - goto Done; - } - else if ( strchr( "+-*/:=^!&()[]{}@,|<>#%?$~", sLine[0] ) ) - { - sReturn[0] = sLine[0]; - sReturn[1] = '\0'; - - goto Done; - } - else - { - printf( "\nUnexpected case: %s\n", sLine ); - getchar(); - sReturn[0] = sLine[0]; - sReturn[1] = '\0'; - } - - Done: - - sLine += ( nLen = strlen( sReturn ) ); - - if( ! lDontRecord ) - { - if( sReturn[0] == '.' && nLen > 1 && sReturn[nLen - 1] == '.' ) + //----------------------------------------------------------------------------// + static HB_FUNC( NEXTIDENTIFIER ) { - s_bArrayPrefix = FALSE; - } - else - { - s_bArrayPrefix = ( isalnum( sReturn[0] ) || strchr( "])}._", sReturn[0] ) ); - } - } + PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); + PHB_ITEM pSkipped = hb_param( 2, HB_IT_ANY ); + char *sLine; + char cChar, cLastChar = ' '; + size_t nAt, nLen; + int nStart = -1; - while( sLine[0] == ' ' ) - { - sReturn[nLen] = sLine[0]; - sLine++; nLen++; - } - sReturn[nLen] = '\0'; + if( pLine == NULL || pLine->item.asString.length == 0 ) + { + hb_ret(); + } - if( ISBYREF( 1 ) ) - { - if( sLine[0] == '\0' ) - { - hb_itemPutC( pLine, NULL ); - } - else - { - hb_itemPutCPtr( pLine, hb_strdup( sLine ), strlen( sLine ) ); - } - //printf( "\nToken: '%s' value: '%s'\n", sReturn, pLine->item.asString.value ); - } - else - { - //printf( "\nToken: '%s' ***value: '%s'\n", sReturn, pLine->item.asString.value ); - } + sLine = pLine->item.asString.value; + nLen = pLine->item.asString.length; - //printf( "\nToken: '%s'\n", sReturn ); + for( nAt = 0; nAt < nLen; nAt++ ) + { + cChar = sLine[nAt]; - hb_retclen( sReturn, nLen ); -} + if( strchr( " ,([{|^*/+-=!#<>:&$", cChar ) ) + { + if( nStart >= 0 ) + { + break; + } + continue; // No need to record cLastChar + } + else if( strchr( ")]}", cChar ) ) + { + if( nStart >= 0 ) + { + break; + } + } + else if( strchr( "\"'", cChar ) ) + { + while( ( nAt < nLen ) && ( sLine[++nAt] != cChar ) ); -//----------------------------------------------------------------------------// -static HB_FUNC( NEXTIDENTIFIER ) -{ - PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); - PHB_ITEM pSkipped = hb_param( 2, HB_IT_ANY ); - char *sLine; - char cChar, cLastChar = ' '; - size_t nAt, nLen; - int nStart = -1; + continue; // No need to record cLastChar + } + else if( cChar == '[' ) + { + if( ! ( isalnum( cLastChar ) || strchr( "])}_.", cLastChar ) ) ) + { + while( nAt < nLen && sLine[++nAt] != ']' ); + } + cLastChar = ']'; - if( pLine == NULL || pLine->item.asString.length == 0 ) - { - hb_ret(); - } + continue; // Recorded cLastChar + } + else if( cChar == '.' ) + { + if( nStart >= 0 ) + { + break; + } + else if( toupper( sLine[nAt + 1] ) == 'T' && sLine[nAt + 2] == '.' ) + { + nAt += 2; + continue; + } + else if( toupper( sLine[nAt + 1] ) == 'F' && sLine[nAt + 2] == '.' ) + { + nAt += 2; + continue; + } + else if( toupper( sLine[nAt + 1] ) == 'O' && toupper( sLine[nAt + 2] ) == 'R' && sLine[nAt + 3] == '.' ) + { + nAt += 3; + continue; + } + else if( toupper( sLine[nAt + 1] ) == 'A' && toupper( sLine[nAt + 2] ) == 'N' && toupper( sLine[nAt + 3] ) == 'D' && sLine[nAt + 4] == '.' ) + { + nAt += 4; + continue; + } + else if( toupper( sLine[nAt + 1] ) == 'N' && toupper( sLine[nAt + 2] ) == 'O' && toupper( sLine[nAt + 3] ) == 'T' && sLine[nAt + 4] == '.' ) + { + nAt += 4; + continue; + } + } + else if( nStart == -1 && ( isalpha( cChar ) || cChar == '_' ) ) + { + nStart = nAt; + } - sLine = pLine->item.asString.value; - nLen = pLine->item.asString.length; + cLastChar = cChar; + } - for( nAt = 0; nAt < nLen; nAt++ ) - { - cChar = sLine[nAt]; + if( ISBYREF( 2 ) ) + { + if( nStart <= 0 ) + { + hb_itemPutC( pSkipped, NULL ); + //printf( "\nNot Skipped: \n" ); + } + else + { + hb_itemPutCL( pSkipped, sLine, nStart ); + //printf( "\nSkipped: '%s'\n", pSkipped->item.asString.value ); + } + } - if( strchr( " ,([{|^*/+-=!#<>:&$", cChar ) ) - { if( nStart >= 0 ) { - break; + char *sIdentifier = (char *) hb_xgrab( ( nAt - nStart ) + 1 ); + + strncpy( sIdentifier, sLine + nStart, ( nAt - nStart ) ); + sIdentifier[nAt - nStart] = '\0'; + + //printf( "\nLine: '%s' nStart: %i nAt: %i sIdentifier: '%s'\n", sLine, nStart, nAt, sIdentifier ); + + if( ISBYREF( 1 ) ) + { + hb_itemPutCPtr( pLine, hb_strdup( sLine + nAt ), strlen( sLine + nAt ) ); + } + + //printf( "\nIdentifier: '%s'\n", sIdentifier ); + + #ifdef __XHARBOUR__ + hb_retcAdopt( sIdentifier ); + #else + hb_retc( sIdentifier ); + hb_xfree( sIdentifier ); + #endif } - continue; // No need to record cLastChar - } - else if( strchr( ")]}", cChar ) ) - { - if( nStart >= 0 ) + else { - break; + hb_ret(); } - } - else if( strchr( "\"'", cChar ) ) - { - while( ( nAt < nLen ) && ( sLine[++nAt] != cChar ) ); - - continue; // No need to record cLastChar - } - else if( cChar == '[' ) - { - if( ! ( isalnum( cLastChar ) || strchr( "])}_.", cLastChar ) ) ) - { - while( nAt < nLen && sLine[++nAt] != ']' ); - } - cLastChar = ']'; - - continue; // Recorded cLastChar - } - else if( cChar == '.' ) - { - if( nStart >= 0 ) - { - break; - } - else if( toupper( sLine[nAt + 1] ) == 'T' && sLine[nAt + 2] == '.' ) - { - nAt += 2; - continue; - } - else if( toupper( sLine[nAt + 1] ) == 'F' && sLine[nAt + 2] == '.' ) - { - nAt += 2; - continue; - } - else if( toupper( sLine[nAt + 1] ) == 'O' && toupper( sLine[nAt + 2] ) == 'R' && sLine[nAt + 3] == '.' ) - { - nAt += 3; - continue; - } - else if( toupper( sLine[nAt + 1] ) == 'A' && toupper( sLine[nAt + 2] ) == 'N' && toupper( sLine[nAt + 3] ) == 'D' && sLine[nAt + 4] == '.' ) - { - nAt += 4; - continue; - } - else if( toupper( sLine[nAt + 1] ) == 'N' && toupper( sLine[nAt + 2] ) == 'O' && toupper( sLine[nAt + 3] ) == 'T' && sLine[nAt + 4] == '.' ) - { - nAt += 4; - continue; - } - } - else if( nStart == -1 && ( isalpha( cChar ) || cChar == '_' ) ) - { - nStart = nAt; - } - - cLastChar = cChar; - } - - if( ISBYREF( 2 ) ) - { - if( nStart <= 0 ) - { - hb_itemPutC( pSkipped, NULL ); - //printf( "\nNot Skipped: \n" ); - } - else - { - hb_itemPutCL( pSkipped, sLine, nStart ); - //printf( "\nSkipped: '%s'\n", pSkipped->item.asString.value ); - } - } - - if( nStart >= 0 ) - { - char *sIdentifier = (char *) hb_xgrab( ( nAt - nStart ) + 1 ); - - strncpy( sIdentifier, sLine + nStart, ( nAt - nStart ) ); - sIdentifier[nAt - nStart] = '\0'; - - //printf( "\nLine: '%s' nStart: %i nAt: %i sIdentifier: '%s'\n", sLine, nStart, nAt, sIdentifier ); - - if( ISBYREF( 1 ) ) - { - hb_itemPutCPtr( pLine, hb_strdup( sLine + nAt ), strlen( sLine + nAt ) ); - } - - //printf( "\nIdentifier: '%s'\n", sIdentifier ); - - #ifdef __XHARBOUR__ - hb_retcAdopt( sIdentifier ); - #else - hb_retc( sIdentifier ); - hb_xfree( sIdentifier ); - #endif - } - else - { - hb_ret(); - } -} - -//----------------------------------------------------------------------------// -HB_FUNC( EXTRACTLEADINGWS ) -{ - PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); - size_t iLen, i = 0; - char *pTmp; - - if( pLine == NULL ) - { - hb_retclen( "", 0 ); - return; - } - - iLen = pLine->item.asString.length; - - while( pLine->item.asString.value[i] == ' ' ) - { - i++; - } - - if( i > 0 ) - { - if( HB_IS_BYREF( * ( hb_stack.pBase + 1 + 1 ) ) ) - { - hb_itemPutCPtr( pLine, hb_strdup( pLine->item.asString.value + i ), iLen - i ); } - } - pTmp = ( char * ) hb_xgrab( i + 1 ); - memset( pTmp, ' ', i ); - - if( HB_IS_BYREF( * ( hb_stack.pBase + 2 + 1 ) ) ) - { - PHB_ITEM pWS = hb_itemUnRef( * ( hb_stack.pBase + 2 + 1 ) ); - hb_itemPutCL( pWS, pTmp, i ); - } - - #ifdef __XHARBOUR__ - hb_retclenAdopt( pTmp, i ); - #else - hb_retclen_buffer( pTmp, i ); - #endif -} - -//----------------------------------------------------------------------------// -HB_FUNC( DROPTRAILINGWS ) -{ - PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); - char *pString; - size_t iLen, i; - - if( pLine == NULL ) - { - hb_retclen( "", 0 ); - return; - } - - pString = hb_itemGetC( pLine ); - iLen = hb_itemGetCLen( pLine ); - - i = iLen - 1; - - while( pString[i] == ' ' ) - { - i--; - } - - if( ++i < iLen ) - { - pString[i] = '\0'; - } - - if( HB_IS_BYREF( * ( hb_stack.pBase + 1 + 1 ) ) ) - { - hb_itemPutCL( pLine, pString, i ); - } - - if( HB_IS_BYREF( * ( hb_stack.pBase + 2 + 1 ) ) ) - { - PHB_ITEM pWS = hb_itemUnRef( * ( hb_stack.pBase + 2 + 1 ) ); - char *pTmp = ( char * ) hb_xgrab( iLen - i + 1 ); - - memset( pTmp, ' ', iLen - i ); - hb_itemPutCPtr( pWS, pTmp, iLen - i ); - } - - #ifdef __XHARBOUR__ - hb_retclenAdopt( pString, i ); - #else - hb_retclen_buffer( pString, i ); - #endif -} - -//----------------------------------------------------------------------------// -HB_FUNC( DROPEXTRATRAILINGWS ) -{ - PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); - char *pString; - size_t iLen, i; - - if( pLine == NULL ) - { - hb_retclen( "", 0 ); - return; - } - - pString = hb_itemGetC( pLine ); - iLen = hb_itemGetCLen( pLine ); - - i = iLen - 1; - - while( i > 1 && pString[i] == ' ' && pString[i - 1] == ' ' ) - { - i--; - } - - if( ++i < iLen ) - { - pString[i] = '\0'; - } - - if( HB_IS_BYREF( * ( hb_stack.pBase + 1 + 1 ) ) ) - { - hb_itemPutCL( pLine, pString, i ); - } - - #ifdef __XHARBOUR__ - hb_retclenAdopt( pString, i ); - #else - hb_retclen_buffer( pString, i ); - #endif -} - -#pragma ENDDUMP - -//----------------------------------------------------------------------------// - -#ifdef WIN - -FUNCTION Alert( cMsg, aOptions ) - -RETURN MessageBox( 0, cMsg, "XBScript", 0 ); - -//----------------------------------------------------------------------------// - -CLASS TOleAuto - - DATA hObj - DATA cClassName - DATA bShowException INIT .T. - - METHOD New( uObj, cClass ) CONSTRUCTOR - METHOD End() - - METHOD Invoke( cMember, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - METHOD Set( cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - METHOD Get( cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - - ERROR HANDLER OnError( cMsg, nError ) - -ENDCLASS - -//-------------------------------------------------------------------- - -METHOD New( uObj, cClass ) CLASS TOleAuto - - IF ValType( uObj ) = 'C' - ::hObj := CreateOleObject( uObj ) - ::cClassName := uObj - ELSEIF ValType( uObj ) = 'N' - ::hObj := uObj - IF ValType( cClass ) == 'C' - ::cClassName := cClass - ELSE - ::cClassName := LTrim( Str( uObj ) ) - ENDIF - ELSE - Alert( "Invalid parameter type to constructor TOleAuto():New()!" ) - ::hObj := 0 - ENDIF - -RETURN Self - -//-------------------------------------------------------------------- - -METHOD End() CLASS TOleAuto - - ::hObj := NIL - - OLEUninitialize() - -RETURN NIL - -//-------------------------------------------------------------------- - -METHOD Invoke( cMethod, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) CLASS TOleAuto - - LOCAL uObj - - IF uParam6 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - ELSEIF uParam5 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1, uParam2, uParam3, uParam4, uParam5 ) - ELSEIF uParam4 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1, uParam2, uParam3, uParam4 ) - ELSEIF uParam3 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1, uParam2, uParam3 ) - ELSEIF uParam2 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1, uParam2 ) - ELSEIF uParam1 != NIL - uObj := OLEInvoke( ::hObj, cMethod, uParam1 ) - ELSE - uObj := OLEInvoke( ::hObj, cMethod ) - ENDIF - - IF OleIsObject() - RETURN TOleAuto():New( uObj ) - ELSEIF ::bShowException .AND. Ole2TxtError() == "DISP_E_EXCEPTION" - OLEShowException() - RETURN Self - ELSEIF ::bShowException .AND. OleError() != 0 - Alert( "Error! " + ::cClassName + ":" + cMethod + " " + Ole2TxtError() ) - ENDIF - -RETURN uObj - -//-------------------------------------------------------------------- - -METHOD Set( cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) CLASS TOleAuto - - LOCAL uObj - - IF uParam6 != NIL - OLESetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - ELSEIF uParam5 != NIL - OLESetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4, uParam5 ) - ELSEIF uParam4 != NIL - OLESetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4 ) - ELSEIF uParam3 != NIL - OLESetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3 ) - ELSEIF uParam2 != NIL - OLESetProperty( ::hObj, cProperty, uParam1, uParam2 ) - ELSEIF uParam1 != NIL - OLESetProperty( ::hObj, cProperty, uParam1 ) - ENDIF - - IF ::bShowException .AND. Ole2TxtError() == "DISP_E_EXCEPTION" - OLEShowException() - ELSEIF ::bShowException .AND. OleError() != 0 - Alert( "Error! " + ::cClassName + ":" + cProperty + " " + Ole2TxtError() ) - ENDIF - -RETURN nil - -//-------------------------------------------------------------------- - -METHOD Get( cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) CLASS TOleAuto - - LOCAL uObj - - IF uParam6 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - ELSEIF uParam5 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4, uParam5 ) - ELSEIF uParam4 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3, uParam4 ) - ELSEIF uParam3 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1, uParam2, uParam3 ) - ELSEIF uParam2 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1, uParam2 ) - ELSEIF uParam1 != NIL - uObj := OLEGetProperty( ::hObj, cProperty, uParam1 ) - ELSE - uObj := OLEGetProperty( ::hObj, cProperty ) - ENDIF - - IF OleIsObject() - RETURN TOleAuto():New( uObj ) - ELSEIF ::bShowException .AND. OleError() != 0 - Alert( "Error! " + ::cClassName + ":" + cProperty + " " + Ole2TxtError() ) - ENDIF - -RETURN uObj - -//-------------------------------------------------------------------- - -METHOD OnError( uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) CLASS TOleAuto - - LOCAL cMsg := __GetMessage() - LOCAL bPresetShowException := ::bShowException - LOCAL uObj - LOCAL cError - - //TraceLog( cMsg, PCount() ) - - IF LEFT( cMsg, 1 ) == '_' - ::Set( SUBS( cMsg, 2 ), uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - ELSE - ::bShowException := .F. - uObj := ::Invoke( cMsg, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - IF Ole2TxtError() != "S_OK" - uObj := ::Get( cMsg, uParam1, uParam2, uParam3, uParam4, uParam5, uParam6 ) - ENDIF - ::bShowException := bPresetShowException - ENDIF - - IF ::bShowException .AND. ( cError := Ole2TxtError() ) != "S_OK" - Alert( "Error! " + ::cClassName + ":" + cMsg + " " + cError ) - ENDIF - -RETURN uObj - -//-------------------------------------------------------------------- -#ifdef WIN - -#pragma BEGINDUMP - - #define __STDC__ 1 - #define CINTERFACE 1 - - #ifndef __FLAT__ - #define __FLAT__ 1 - #endif - - #include - #include - - #include - #include - #include - - //#include - //#include - //#include - - #include - #include "hbapi.h" - #include "hbstack.h" - #include "hbapierr.h" - #include "hbapiitm.h" - #include "hbvm.h" - #include "hboo.ch" - #include "HBdate.h" - - #undef WORD - #define WORD unsigned short - - // ----------------------------------------------------------------------- - - //extern void pascal _pushstring( char * cParam ); - //extern void pascal _pushint( int lParam ); - //extern void pascal _pushdouble( double ndParam ); - - static far VARIANTARG RetVal; - - static EXCEPINFO excep; - - static HRESULT nOleError = 0; - - static int nInitialized = 0; - - //---------------------------------------------------------------------------// - - static double DateToDbl( LPSTR cDate ) - { - double nDate; - - nDate = hb_dateEncStr( cDate ) - 0x0024d9abL; - - return ( nDate ); - } - - //---------------------------------------------------------------------------// - - static LPSTR DblToDate( double nDate ) - { - static char *cDate = "00000000"; - - hb_dateDecStr( cDate, (long) nDate + 0x0024d9abL ); - - return ( cDate ); - } - - //---------------------------------------------------------------------------// - - static LPSTR AnsiToWide( LPSTR cAnsi ) - { - WORD wLen; - LPSTR cString; - - wLen = MultiByteToWideChar( CP_ACP, MB_PRECOMPOSED, cAnsi, -1, 0, 0 ); - cString = ( char * ) hb_xgrab( wLen * 2 ); - MultiByteToWideChar( CP_ACP, MB_PRECOMPOSED, cAnsi, -1, ( LPWSTR ) cString, wLen ); - - return ( cString ); - } - - //---------------------------------------------------------------------------// - - static LPSTR WideToAnsi( LPSTR cWide ) - { - WORD wLen; - LPSTR cString = NULL; - - wLen = WideCharToMultiByte( CP_ACP, 0, ( LPWSTR ) cWide, -1, cString, 0, NULL, NULL ); - cString = (char *) hb_xgrab( wLen ); - WideCharToMultiByte( CP_ACP, 0, ( LPWSTR ) cWide, -1, cString, wLen, NULL, NULL ); - - return ( cString ); - } - - //---------------------------------------------------------------------------// - - static void GetParams(DISPPARAMS * dParams) - { - VARIANTARG * pArgs = NULL; - PHB_ITEM uParam; - int n, nArgs, nArg; - LPSTR cString; - - nArgs = hb_pcount() - 2; - - if( nArgs > 0 ) - { - pArgs = ( VARIANTARG * ) hb_xgrab( sizeof( VARIANTARG ) * nArgs ); - - for( n = 0; n < nArgs; n++ ) - { - // Los parametros en VARIANTARG[] hay que ponerlos en orden inverso - nArg = nArgs + 2 - n; - - VariantInit( &( pArgs[ n ] ) ); - - uParam = hb_param( nArg, 0xFFFF ); - - switch( uParam->type ) - { - case HB_IT_NIL: - pArgs[ n ].n1.n2.vt = VT_EMPTY; - break; - - case HB_IT_STRING: - case HB_IT_MEMO: - pArgs[ n ].n1.n2.vt = VT_BSTR; - cString = AnsiToWide( hb_parc( nArg ) ); - pArgs[ n ].n1.n2.n3.bstrVal = SysAllocString( (const unsigned short *) cString ); - hb_xfree( cString ); - break; - - case HB_IT_LOGICAL: - pArgs[ n ].n1.n2.vt = VT_BOOL; - pArgs[ n ].n1.n2.n3.boolVal = hb_parl( nArg ); - break; - - case HB_IT_INTEGER: - case HB_IT_LONG: - case HB_IT_NUMERIC: - pArgs[ n ].n1.n2.vt = VT_I4; - pArgs[ n ].n1.n2.n3.lVal = hb_parnl( nArg ); - break; - - case HB_IT_DOUBLE: - pArgs[ n ].n1.n2.vt = VT_R8; - pArgs[ n ].n1.n2.n3.dblVal = hb_parnd( nArg ); - break; - - case HB_IT_DATE: - pArgs[ n ].n1.n2.vt = VT_DATE; - pArgs[ n ].n1.n2.n3.dblVal = DateToDbl( hb_pards( nArg ) ); - break; - - case HB_IT_OBJECT: - { - PHB_DYNS pData; - pArgs[ n ].n1.n2.vt = VT_EMPTY; - if ( hb_stricmp( hb_objGetClsName( uParam ), "TOleAuto" ) == 0 ) - { - pData = hb_dynsymFindName( "hObj" ); - if( pData ) - { - hb_vmPush( uParam ); - hb_vmPushSymbol( pData->pSymbol ); - hb_vmDo( 0 ); - pArgs[ n ].n1.n2.vt = VT_DISPATCH; - pArgs[ n ].n1.n2.n3.pdispVal = ( IDispatch * ) hb_parnl( -1 ); - } - } - } - break; - } - } - } - - dParams->rgvarg = pArgs; - dParams->cArgs = nArgs; - dParams->rgdispidNamedArgs = 0; - dParams->cNamedArgs = 0; - - } - - //---------------------------------------------------------------------------// - - static void FreeParams(DISPPARAMS * dParams) - { - int n; - - if( dParams->cArgs > 0 ) - { - for( n = 0; n < ( int ) dParams->cArgs; n++ ) - VariantClear( &(dParams->rgvarg[ n ]) ); - - hb_xfree( ( LPVOID ) dParams->rgvarg ); - } - } - - //---------------------------------------------------------------------------// - - static void RetValue( void ) - { - LPSTR cString; - - switch( RetVal.n1.n2.vt ) - { - case VT_BSTR: - cString = WideToAnsi( ( LPSTR ) RetVal.n1.n2.n3.bstrVal ); - hb_retc( cString ); - #ifdef __FLAT__ - hb_xfree( cString ); - #endif - break; - - case VT_BOOL: - hb_retl( RetVal.n1.n2.n3.boolVal ); - break; - - case VT_DISPATCH: - hb_retnl( ( LONG ) RetVal.n1.n2.n3.pdispVal ); - break; - - case VT_I4: - hb_retnl( ( LONG ) RetVal.n1.n2.n3.iVal ); - break; - - case VT_R8: - hb_retnd( RetVal.n1.n2.n3.dblVal ); - break; - - case VT_DATE: - hb_retds( DblToDate( RetVal.n1.n2.n3.dblVal ) ); - break; - - case VT_EMPTY: - hb_ret(); - break; - - default: - if ( nOleError == S_OK ) - (LONG) nOleError = -1; - hb_ret(); - break; - } - - if( RetVal.n1.n2.vt != VT_DISPATCH ) - VariantClear( &RetVal ); - - } - - //---------------------------------------------------------------------------// - - HB_FUNC( CREATEOLEOBJECT ) // ( cOleName | cCLSID [, cIID ] ) - { - LPSTR cCLSID; - GUID ClassID, iid; - /*REFIID*/ struct _GUID *riid = (struct _GUID *) &IID_IDispatch; - IDispatch * pDisp = NULL; - - nOleError = S_OK; - - if ( nInitialized == 0 ) - nOleError = OleInitialize( NULL ); - - if ( (nOleError == S_OK) || (nOleError == (HRESULT) S_FALSE) ) - { - nInitialized++; - - cCLSID = AnsiToWide( hb_parc( 1 ) ); - if ( hb_parc( 1 )[ 0 ] == '{' ) - nOleError = CLSIDFromString( ( LPOLESTR ) cCLSID, &ClassID ); - else - nOleError = CLSIDFromProgID( ( LPCOLESTR ) cCLSID, &ClassID ); - - hb_xfree( cCLSID ); - - if ( hb_pcount() == 2 ) - { - if ( hb_parc( 2 )[ 0 ] == '{' ) - { - cCLSID = AnsiToWide( hb_parc( 2 ) ); - nOleError = CLSIDFromString( ( LPOLESTR ) cCLSID, &iid ); - hb_xfree( cCLSID ); - } - else - memcpy( ( LPVOID ) &iid, hb_parc( 2 ), sizeof( iid ) ); - - riid = &iid; - } - - if ( nOleError == S_OK ) - nOleError = CoCreateInstance( &ClassID, NULL, CLSCTX_SERVER, riid, (void **) &pDisp ); - } - - hb_retnl( ( LONG ) pDisp ); - - } - - //---------------------------------------------------------------------------// - - HARBOUR HB_FUN_OLESHOWEXCEPTION() - { - if ( (LONG) nOleError == DISP_E_EXCEPTION ) - { - LPSTR source, description; - - source = WideToAnsi( (char *) excep.bstrSource ); - description = WideToAnsi( (char *) excep.bstrDescription ); - MessageBox( NULL, description, source, MB_ICONHAND ); - hb_xfree( source ); - hb_xfree( description ); - } - } - - //---------------------------------------------------------------------------// - - HARBOUR HB_FUN_OLEINVOKE() // (hOleObject, szMethodName, uParams...) - { - IDispatch * pDisp = ( IDispatch * ) hb_parnl( 1 ); - LPSTR cMember; - DISPID lDispID; - DISPPARAMS dParams; - UINT uArgErr; - - VariantInit( &RetVal ); - memset( (LPBYTE) &excep, 0, sizeof( excep ) ); - - cMember = AnsiToWide( hb_parc( 2 ) ); - nOleError = pDisp->lpVtbl->GetIDsOfNames( pDisp, &IID_NULL, (unsigned short **) &cMember, 1, LOCALE_USER_DEFAULT, &lDispID ); - hb_xfree( cMember ); - - if ( nOleError == S_OK ) - { - GetParams( &dParams ); - nOleError = pDisp->lpVtbl->Invoke( pDisp, - lDispID, - &IID_NULL, - LOCALE_USER_DEFAULT, - DISPATCH_METHOD, - &dParams, - &RetVal, - &excep, - &uArgErr ) ; - FreeParams( &dParams ); - } - - RetValue(); - } - - //---------------------------------------------------------------------------// - - HARBOUR HB_FUN_OLESETPROPERTY() // (hOleObject, cPropName, uValue, uParams...) - { - IDispatch * pDisp = ( IDispatch * ) hb_parnl( 1 ); - LPSTR cMember; - DISPID lDispID, lPropPut = DISPID_PROPERTYPUT; - DISPPARAMS dParams; - UINT uArgErr; - - VariantInit( &RetVal ); - memset( (LPBYTE) &excep, 0, sizeof( excep ) ); - - cMember = AnsiToWide( hb_parc( 2 ) ); - nOleError = pDisp->lpVtbl->GetIDsOfNames( pDisp, &IID_NULL, (unsigned short **) &cMember, 1, LOCALE_USER_DEFAULT, &lDispID ); - hb_xfree( cMember ); - - if ( nOleError == S_OK ) - { - GetParams( &dParams ); - dParams.rgdispidNamedArgs = &lPropPut; - dParams.cNamedArgs = 1; - - nOleError = pDisp->lpVtbl->Invoke( pDisp, - lDispID, - &IID_NULL, - LOCALE_USER_DEFAULT, - DISPATCH_PROPERTYPUT, - &dParams, - NULL, // No return value - &excep, - &uArgErr ); - - FreeParams( &dParams ); - } - - hb_ret(); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEGETPROPERTY ) // (hOleObject, cPropName, uParams...) - { - IDispatch * pDisp = ( IDispatch * ) hb_parnl( 1 ); - LPSTR cMember; - DISPID lDispID; - DISPPARAMS dParams; - UINT uArgErr; - - VariantInit( &RetVal ); - memset( (LPBYTE) &excep, 0, sizeof( excep ) ); - - cMember = AnsiToWide( hb_parc( 2 ) ); - nOleError = pDisp->lpVtbl->GetIDsOfNames( pDisp, &IID_NULL, (unsigned short **) &cMember, 1, LOCALE_USER_DEFAULT, &lDispID ); - hb_xfree( cMember ); - - if ( nOleError == S_OK ) - { - GetParams( &dParams ); - - nOleError = pDisp->lpVtbl->Invoke( pDisp, - lDispID, - &IID_NULL, - LOCALE_USER_DEFAULT, - DISPATCH_PROPERTYGET, - &dParams, - &RetVal, - &excep, - &uArgErr ); - - FreeParams( &dParams ); - } - - RetValue(); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEQUERYINTERFACE ) // (hOleObject, cIID ) -> ppvObject - { - IUnknown * pUnk = ( IUnknown * ) hb_parnl( 1 ); - IUnknown * ppvObject = NULL; - GUID iid; - LPSTR ciid; - - nOleError = S_OK; - - if ( hb_parc( 2 )[ 0 ] == '{' ) - { - ciid = AnsiToWide( hb_parc( 2 ) ); - nOleError = CLSIDFromString( ( LPOLESTR ) ciid, &iid ); - hb_xfree( ciid ); - } - else - memcpy( ( LPVOID ) &iid, hb_parc( 2 ), sizeof( iid ) ); - - if ( nOleError == S_OK ) - nOleError = pUnk -> lpVtbl -> QueryInterface( pUnk, (const struct _GUID *const) &iid, (void **) &ppvObject ); - - hb_retnl( ( LONG ) ppvObject ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEADDREF ) // ( hOleObject ) - { - IUnknown * pUnk = ( IUnknown * ) hb_parnl( 1 ); - - hb_retnl( pUnk -> lpVtbl -> AddRef( pUnk ) ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLERELEASE ) // ( hOleObject ) - { - IUnknown * pUnk = ( IUnknown * ) hb_parnl( 1 ); - - hb_retnl( pUnk -> lpVtbl -> Release( pUnk ) ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( COMFUNCTION ) // ( hOleObject, nFunc, uParams... ) - { - typedef HRESULT ( STDMETHODCALLTYPE * COMFunc ) ( IUnknown * pUnk ); - - IUnknown * pUnk = ( IUnknown * ) hb_parnl( 1 ); - COMFunc pFunc; - COMFunc *vTbl; - int i, iParams = hb_pcount(); - double doubles[16]; - LPVOID ptros[16]; - - - vTbl = ( COMFunc * ) &( pUnk -> lpVtbl -> QueryInterface ); - vTbl += hb_parni( 2 ) + 2; - pFunc = *vTbl; - - for ( i = iParams; i > 2; i-- ) - { - char *sString; - int iInt; - double dDouble; - - switch ( ( hb_parinfo( i ) & ~HB_IT_BYREF) ) - { - case HB_IT_STRING: - case HB_IT_MEMO: - //_pusstring( hb_parc( i ) ); - sString = hb_parc( i ); - __asm push sString - break; - - case HB_IT_LOGICAL: - if ( ISBYREF( i ) ) - { - ptros[ i ] = (LPVOID) hb_parl( i ); - //_pushstring( (char *) &ptros[ i ] ); - sString = ( char * ) &ptros[ i ]; - __asm push sString - } - else - { - //_pushint( hb_parl( i ) ); - iInt = hb_parl( i ); - __asm push iInt - } - break; - - case HB_IT_INTEGER: - case HB_IT_LONG: - if ( ISBYREF( i ) ) - { - ptros[ i ] = (LPVOID) hb_parnl( i ); - //_pushstring( (char *) &ptros[ i ] ); - sString = ( char * ) &ptros[ i ]; - __asm push sString - } - else - { - //_pushint( hb_parnl( i ) ); - iInt = hb_parnl( i ); - __asm push iInt - } - break; - - case HB_IT_DOUBLE: - if ( ISBYREF( i ) ) - { - doubles[ i ] = hb_parnd( i ); - //_pushstring( (char *) &doubles[ i ] ); - sString = ( char * ) &doubles[ i ]; - __asm push sString - } - else - { - //_pushdouble( hb_parnd( i ) ); - dDouble = hb_parl( i ); - __asm push dDouble - } - break; - - case HB_IT_DATE: - if ( ISBYREF( i ) ) - { - doubles[ i ] = DateToDbl( hb_pards( i ) ); - //_pushstring( (char *) &doubles[ i ] ); - sString = ( char * ) &doubles[ i ]; - __asm push sString - } - else - { - //_pushdouble( DateToDbl( hb_pards( i ) ) ); - dDouble = DateToDbl( hb_pards( i ) ); - __asm push dDouble - } - break; - - default: - //_pushstring( NULL ); - sString = ( char * ) NULL; - __asm push sString - break; - } - } - - nOleError = pFunc( pUnk ); - - for ( i = 3; i <= iParams; i++ ) - { - if ( ISBYREF( i ) ) - { - switch ( (hb_parinfo( i ) & ~HB_IT_BYREF) ) - { - case HB_IT_STRING: - case HB_IT_MEMO: - hb_storc( (char *) hb_parc( i ), i ); - break; - - case HB_IT_LOGICAL: - hb_storl( (long) ptros[ i ], i ); - break; - - case HB_IT_INTEGER: - case HB_IT_LONG: - hb_stornl( (long) ptros[ i ], i ); - break; - - case HB_IT_DOUBLE: - hb_stornd( doubles[ i ], i ); - break; - - case HB_IT_DATE: - hb_stords( DblToDate( doubles[ i ] ), i ); - break; - } - } - } - - hb_ret(); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEERROR ) - { - hb_retnl( (LONG) nOleError ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEISOBJECT ) - { - hb_retl( RetVal.n1.n2.vt == VT_DISPATCH ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLEUNINITIALIZE ) - { - if ( nInitialized > 0 ) - { - nInitialized--; - if ( nInitialized == 0 ) - OleUninitialize(); - } - } - - //---------------------------------------------------------------------------// - - HB_FUNC( OLE2TXTERROR ) - { - switch ( (LONG) nOleError) - { - case S_OK: - hb_retc( "S_OK" ); - break; - - case CO_E_CLASSSTRING: - hb_retc( "CO_E_CLASSSTRING" ); - break; - - case OLE_E_WRONGCOMPOBJ: - hb_retc( "OLE_E_WRONGCOMPOBJ" ); - break; - - case REGDB_E_CLASSNOTREG: - hb_retc( "REGDB_E_CLASSNOTREG" ); - break; - - case REGDB_E_WRITEREGDB: - hb_retc( "REGDB_E_WRITEREGDB" ); - break; - - case E_OUTOFMEMORY: - hb_retc( "E_OUTOFMEMORY" ); - break; - - case E_INVALIDARG: - hb_retc( "E_INVALIDARG" ); - break; - - case E_UNEXPECTED: - hb_retc( "E_UNEXPECTED" ); - break; - - case DISP_E_UNKNOWNNAME: - hb_retc( "DISP_E_UNKNOWNNAME" ); - break; - - case DISP_E_UNKNOWNLCID: - hb_retc( "DISP_E_UNKNOWNLCID" ); - break; - - case DISP_E_BADPARAMCOUNT: - hb_retc( "DISP_E_BADPARAMCOUNT" ); - break; - - case DISP_E_BADVARTYPE: - hb_retc( "DISP_E_BADVARTYPE" ); - break; - - case DISP_E_EXCEPTION: - hb_retc( "DISP_E_EXCEPTION" ); - break; - - case DISP_E_MEMBERNOTFOUND: - hb_retc( "DISP_E_MEMBERNOTFOUND" ); - break; - - case DISP_E_NONAMEDARGS: - hb_retc( "DISP_E_NONAMEDARGS" ); - break; - - case DISP_E_OVERFLOW: - hb_retc( "DISP_E_OVERFLOW" ); - break; - - case DISP_E_PARAMNOTFOUND: - hb_retc( "DISP_E_PARAMNOTFOUND" ); - break; - - case DISP_E_TYPEMISMATCH: - hb_retc( "DISP_E_TYPEMISMATCH" ); - break; - - case DISP_E_UNKNOWNINTERFACE: - hb_retc( "DISP_E_UNKNOWNINTERFACE" ); - break; - - case DISP_E_PARAMNOTOPTIONAL: - hb_retc( "DISP_E_PARAMNOTOPTIONAL" ); - break; - - default: - hb_retc( "Unknown error" ); - break; - }; - } - - //---------------------------------------------------------------------------// - - HB_FUNC( ANSITOWIDE ) // ( cAnsiStr ) -> cWideStr - { - WORD wLen; - LPSTR cOut; - - wLen = MultiByteToWideChar( CP_ACP, MB_PRECOMPOSED, hb_parc( 1 ), -1, 0, 0 ); - cOut = ( char * ) hb_xgrab( wLen * 2 ); - MultiByteToWideChar( CP_ACP, MB_PRECOMPOSED, hb_parc( 1 ), -1, - ( LPWSTR ) cOut, wLen ); - - hb_retclen( cOut, wLen * 2 - 1 ); - hb_xfree( cOut ); - } - - //---------------------------------------------------------------------------// - - HB_FUNC( WIDETOANSI ) // ( cWideStr, nLen ) -> cAnsiStr - { - WORD wLen; - LPWSTR cWideStr; - LPSTR cOut = NULL; - - cWideStr = ( LPWSTR ) hb_parc( 1 ); - wLen = WideCharToMultiByte( CP_ACP, WC_COMPOSITECHECK, cWideStr, -1, cOut, 0, NULL, NULL ); - cOut = ( char * ) hb_xgrab( wLen ); - WideCharToMultiByte( CP_ACP, WC_COMPOSITECHECK, cWideStr, -1, - cOut, wLen, NULL, NULL ); - - hb_retc( cOut ); - hb_xfree( cOut ); - } - - /* - extern "C" - { - void pushstring( char * cParam ) - { - } - - void pushint( int lParam ) - { - } - - void pushdouble( double ndParam ) - { - } - } - */ - - //---------------------------------------------------------------------------// - - HB_FUNC( MESSAGEBOX ) - { - hb_retni( MessageBox( ( HWND ) hb_parnl( 1 ), hb_parc( 2 ), hb_parc( 3 ), hb_parni( 4 ) ) ); - } - - //---------------------------------------------------------------------------// - -#pragma ENDDUMP + //----------------------------------------------------------------------------// + HB_FUNC( EXTRACTLEADINGWS ) + { + PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); + size_t iLen, i = 0; + char *pTmp; + + if( pLine == NULL ) + { + hb_retclen( "", 0 ); + return; + } + + iLen = pLine->item.asString.length; + + while( pLine->item.asString.value[i] == ' ' ) + { + i++; + } + + if( i > 0 ) + { + if( HB_IS_BYREF( hb_stackItemFromBase( 1 ) ) ) + { + hb_itemPutCPtr( pLine, hb_strdup( pLine->item.asString.value + i ), iLen - i ); + } + } + + pTmp = ( char * ) hb_xgrab( i + 1 ); + memset( pTmp, ' ', i ); + + if( HB_IS_BYREF( hb_stackItemFromBase( 2 ) ) ) + { + PHB_ITEM pWS = hb_itemUnRef( hb_stackItemFromBase( 2 ) ); + hb_itemPutCL( pWS, pTmp, i ); + } + + #ifdef __XHARBOUR__ + hb_retclenAdopt( pTmp, i ); + #else + hb_retclen_buffer( pTmp, i ); + #endif + } + + //----------------------------------------------------------------------------// + HB_FUNC( DROPTRAILINGWS ) + { + PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); + char *pString; + size_t iLen, i; + + if( pLine == NULL ) + { + hb_retclen( "", 0 ); + return; + } + + pString = hb_itemGetC( pLine ); + iLen = hb_itemGetCLen( pLine ); + + i = iLen - 1; + + while( pString[i] == ' ' ) + { + i--; + } + + if( ++i < iLen ) + { + pString[i] = '\0'; + } + + if( HB_IS_BYREF( hb_stackItemFromBase( 1 ) ) ) + { + hb_itemPutCL( pLine, pString, i ); + } + + if( HB_IS_BYREF( hb_stackItemFromBase( 2 ) ) ) + { + PHB_ITEM pWS = hb_itemUnRef( hb_stackItemFromBase( 2 ) ); + char *pTmp = ( char * ) hb_xgrab( iLen - i + 1 ); + + memset( pTmp, ' ', iLen - i ); + hb_itemPutCPtr( pWS, pTmp, iLen - i ); + } + + #ifdef __XHARBOUR__ + hb_retclenAdopt( pString, i ); + #else + hb_retclen_buffer( pString, i ); + #endif + } + + //----------------------------------------------------------------------------// + HB_FUNC( DROPEXTRATRAILINGWS ) + { + PHB_ITEM pLine = hb_param( 1, HB_IT_STRING ); + char *pString; + size_t iLen, i; + + if( pLine == NULL ) + { + hb_retclen( "", 0 ); + return; + } + + pString = hb_itemGetC( pLine ); + iLen = hb_itemGetCLen( pLine ); + + i = iLen - 1; + + while( i > 1 && pString[i] == ' ' && pString[i - 1] == ' ' ) + { + i--; + } + + if( ++i < iLen ) + { + pString[i] = '\0'; + } + + if( HB_IS_BYREF( hb_stackItemFromBase( 1 ) ) ) + { + hb_itemPutCL( pLine, pString, i ); + } + + #ifdef __XHARBOUR__ + hb_retclenAdopt( pString, i ); + #else + hb_retclen_buffer( pString, i ); + #endif + } + + #pragma ENDDUMP + + #endif + //---------------------------------------------------------------------------// #endif - -#endif - -//----------------------------------------------------------------------------// -STATIC FUNCTION InitFWRules() - - /* Defines */ - aAdd( aDefRules, { '_FIVEWIN_CH' , , .T. } ) - aAdd( aDefRules, { 'FWCOPYRIGHT' , , .T. } ) - aAdd( aDefRules, { 'FWVERSION' , , .T. } ) - aAdd( aDefRules, { 'FWDESCRIPTION' , , .T. } ) - aAdd( aDefRules, { 'Browse' , , .T. } ) - aAdd( aDefRules, { '_DIALOG_CH' , , .T. } ) - aAdd( aDefRules, { '_FONT_CH' , , .T. } ) - aAdd( aDefRules, { 'LF_HEIGHT' , , .T. } ) - aAdd( aDefRules, { 'LF_WIDTH' , , .T. } ) - aAdd( aDefRules, { 'LF_ESCAPEMENT' , , .T. } ) - aAdd( aDefRules, { 'LF_ORIENTATION' , , .T. } ) - aAdd( aDefRules, { 'LF_WEIGHT' , , .T. } ) - aAdd( aDefRules, { 'LF_ITALIC' , , .T. } ) - aAdd( aDefRules, { 'LF_UNDERLINE' , , .T. } ) - aAdd( aDefRules, { 'LF_STRIKEOUT' , , .T. } ) - aAdd( aDefRules, { 'LF_CHARSET' , , .T. } ) - aAdd( aDefRules, { 'LF_OUTPRECISION' , , .T. } ) - aAdd( aDefRules, { 'LF_CLIPPRECISION' , , .T. } ) - aAdd( aDefRules, { 'LF_QUALITY' , , .T. } ) - aAdd( aDefRules, { 'LF_PITCHANDFAMILY' , , .T. } ) - aAdd( aDefRules, { 'LF_FACENAME' , , .T. } ) - aAdd( aDefRules, { '_INI_CH' , , .T. } ) - aAdd( aDefRules, { '_MENU_CH' , , .T. } ) - aAdd( aDefRules, { '_PRINT_CH' , , .T. } ) - aAdd( aDefRules, { '_COLORS_CH' , , .T. } ) - aAdd( aDefRules, { 'CLR_BLACK' , , .T. } ) - aAdd( aDefRules, { 'CLR_BLUE' , , .T. } ) - aAdd( aDefRules, { 'CLR_GREEN' , , .T. } ) - aAdd( aDefRules, { 'CLR_CYAN' , , .T. } ) - aAdd( aDefRules, { 'CLR_RED' , , .T. } ) - aAdd( aDefRules, { 'CLR_MAGENTA' , , .T. } ) - aAdd( aDefRules, { 'CLR_BROWN' , , .T. } ) - aAdd( aDefRules, { 'CLR_HGRAY' , , .T. } ) - aAdd( aDefRules, { 'CLR_LIGHTGRAY' , , .T. } ) - aAdd( aDefRules, { 'CLR_GRAY' , , .T. } ) - aAdd( aDefRules, { 'CLR_HBLUE' , , .T. } ) - aAdd( aDefRules, { 'CLR_HGREEN' , , .T. } ) - aAdd( aDefRules, { 'CLR_HCYAN' , , .T. } ) - aAdd( aDefRules, { 'CLR_HRED' , , .T. } ) - aAdd( aDefRules, { 'CLR_HMAGENTA' , , .T. } ) - aAdd( aDefRules, { 'CLR_YELLOW' , , .T. } ) - aAdd( aDefRules, { 'CLR_WHITE' , , .T. } ) - aAdd( aDefRules, { '_DLL_CH' , , .T. } ) - aAdd( aDefRules, { '_C_TYPES' , , .T. } ) - aAdd( aDefRules, { 'VOID' , , .T. } ) - aAdd( aDefRules, { 'BYTE' , , .T. } ) - aAdd( aDefRules, { 'CHAR' , , .T. } ) - aAdd( aDefRules, { 'WORD' , , .T. } ) - aAdd( aDefRules, { '_INT' , , .T. } ) - aAdd( aDefRules, { 'BOOL' , , .T. } ) - aAdd( aDefRules, { 'HDC' , , .T. } ) - aAdd( aDefRules, { 'LONG' , , .T. } ) - aAdd( aDefRules, { 'STRING' , , .T. } ) - aAdd( aDefRules, { 'LPSTR' , , .T. } ) - aAdd( aDefRules, { 'PTR' , , .T. } ) - aAdd( aDefRules, { '_DOUBLE' , , .T. } ) - aAdd( aDefRules, { 'DWORD' , , .T. } ) - aAdd( aDefRules, { '_FOLDER_CH' , , .T. } ) - aAdd( aDefRules, { '_OBJECTS_CH' , , .T. } ) - aAdd( aDefRules, { '_ODBC_CH' , , .T. } ) - aAdd( aDefRules, { '_DDE_CH' , , .T. } ) - aAdd( aDefRules, { 'WM_DDE_FIRST' , , .T. } ) - aAdd( aDefRules, { 'WM_DDE_INITIATE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_TERMINATE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_ADVISE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_UNADVISE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_ACK' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_DATA' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_REQUEST' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_POKE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_EXECUTE' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WM_DDE_LAST' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { '_VIDEO_CH' , , .T. } ) - aAdd( aDefRules, { 'VK_LBUTTON' , , .T. } ) - aAdd( aDefRules, { 'VK_RBUTTON' , , .T. } ) - aAdd( aDefRules, { 'VK_CANCEL' , , .T. } ) - aAdd( aDefRules, { 'VK_MBUTTON' , , .T. } ) - aAdd( aDefRules, { 'VK_BACK' , , .T. } ) - aAdd( aDefRules, { 'VK_TAB' , , .T. } ) - aAdd( aDefRules, { 'VK_CLEAR' , , .T. } ) - aAdd( aDefRules, { 'VK_RETURN' , , .T. } ) - aAdd( aDefRules, { 'VK_SHIFT' , , .T. } ) - aAdd( aDefRules, { 'VK_CONTROL' , , .T. } ) - aAdd( aDefRules, { 'VK_MENU' , , .T. } ) - aAdd( aDefRules, { 'VK_PAUSE' , , .T. } ) - aAdd( aDefRules, { 'VK_CAPITAL' , , .T. } ) - aAdd( aDefRules, { 'VK_ESCAPE' , , .T. } ) - aAdd( aDefRules, { 'VK_SPACE' , , .T. } ) - aAdd( aDefRules, { 'VK_PRIOR' , , .T. } ) - aAdd( aDefRules, { 'VK_NEXT' , , .T. } ) - aAdd( aDefRules, { 'VK_END' , , .T. } ) - aAdd( aDefRules, { 'VK_HOME' , , .T. } ) - aAdd( aDefRules, { 'VK_LEFT' , , .T. } ) - aAdd( aDefRules, { 'VK_UP' , , .T. } ) - aAdd( aDefRules, { 'VK_RIGHT' , , .T. } ) - aAdd( aDefRules, { 'VK_DOWN' , , .T. } ) - aAdd( aDefRules, { 'VK_SELECT' , , .T. } ) - aAdd( aDefRules, { 'VK_PRINT' , , .T. } ) - aAdd( aDefRules, { 'VK_EXECUTE' , , .T. } ) - aAdd( aDefRules, { 'VK_SNAPSHOT' , , .T. } ) - aAdd( aDefRules, { 'VK_INSERT' , , .T. } ) - aAdd( aDefRules, { 'VK_DELETE' , , .T. } ) - aAdd( aDefRules, { 'VK_HELP' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD0' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD1' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD2' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD3' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD4' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD5' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD6' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD7' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD8' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMPAD9' , , .T. } ) - aAdd( aDefRules, { 'VK_MULTIPLY' , , .T. } ) - aAdd( aDefRules, { 'VK_ADD' , , .T. } ) - aAdd( aDefRules, { 'VK_SEPARATOR' , , .T. } ) - aAdd( aDefRules, { 'VK_SUBTRACT' , , .T. } ) - aAdd( aDefRules, { 'VK_DECIMAL' , , .T. } ) - aAdd( aDefRules, { 'VK_DIVIDE' , , .T. } ) - aAdd( aDefRules, { 'VK_F1' , , .T. } ) - aAdd( aDefRules, { 'VK_F2' , , .T. } ) - aAdd( aDefRules, { 'VK_F3' , , .T. } ) - aAdd( aDefRules, { 'VK_F4' , , .T. } ) - aAdd( aDefRules, { 'VK_F5' , , .T. } ) - aAdd( aDefRules, { 'VK_F6' , , .T. } ) - aAdd( aDefRules, { 'VK_F7' , , .T. } ) - aAdd( aDefRules, { 'VK_F8' , , .T. } ) - aAdd( aDefRules, { 'VK_F9' , , .T. } ) - aAdd( aDefRules, { 'VK_F10' , , .T. } ) - aAdd( aDefRules, { 'VK_F11' , , .T. } ) - aAdd( aDefRules, { 'VK_F12' , , .T. } ) - aAdd( aDefRules, { 'VK_F13' , , .T. } ) - aAdd( aDefRules, { 'VK_F14' , , .T. } ) - aAdd( aDefRules, { 'VK_F15' , , .T. } ) - aAdd( aDefRules, { 'VK_F16' , , .T. } ) - aAdd( aDefRules, { 'VK_F17' , , .T. } ) - aAdd( aDefRules, { 'VK_F18' , , .T. } ) - aAdd( aDefRules, { 'VK_F19' , , .T. } ) - aAdd( aDefRules, { 'VK_F20' , , .T. } ) - aAdd( aDefRules, { 'VK_F21' , , .T. } ) - aAdd( aDefRules, { 'VK_F22' , , .T. } ) - aAdd( aDefRules, { 'VK_F23' , , .T. } ) - aAdd( aDefRules, { 'VK_F24' , , .T. } ) - aAdd( aDefRules, { 'VK_NUMLOCK' , , .T. } ) - aAdd( aDefRules, { 'VK_SCROLL' , , .T. } ) - aAdd( aDefRules, { 'ACC_NORMAL' , , .T. } ) - aAdd( aDefRules, { 'ACC_SHIFT' , , .T. } ) - aAdd( aDefRules, { 'ACC_CONTROL' , , .T. } ) - aAdd( aDefRules, { 'ACC_ALT' , , .T. } ) - aAdd( aDefRules, { '_TREE_CH' , , .T. } ) - aAdd( aDefRules, { '_WINAPI_CH' , , .T. } ) - aAdd( aDefRules, { 'FM_CLICK' , , .T. } ) - aAdd( aDefRules, { 'FM_SCROLLUP' , , .T. } ) - aAdd( aDefRules, { 'FM_SCROLLDOWN' , , .T. } ) - aAdd( aDefRules, { 'FM_SCROLLPGUP' , , .T. } ) - aAdd( aDefRules, { 'FM_SCROLLPGDN' , , .T. } ) - aAdd( aDefRules, { 'FM_CHANGE' , , .T. } ) - aAdd( aDefRules, { 'FM_COLOR' , , .T. } ) - aAdd( aDefRules, { 'FM_MEASURE' , , .T. } ) - aAdd( aDefRules, { 'FM_DRAW' , , .T. } ) - aAdd( aDefRules, { 'FM_LOSTFOCUS' , , .T. } ) - aAdd( aDefRules, { 'FM_THUMBPOS' , , .T. } ) - aAdd( aDefRules, { 'FM_CLOSEAREA' , , .T. } ) - aAdd( aDefRules, { 'FM_VBXEVENT' , , .T. } ) - aAdd( aDefRules, { 'FM_HELPF1' , , .T. } ) - aAdd( aDefRules, { 'FM_THUMBTRACK' , , .T. } ) - aAdd( aDefRules, { 'FM_DROPOVER' , , .T. } ) - aAdd( aDefRules, { 'FM_CHANGEFOCUS' , , .T. } ) - aAdd( aDefRules, { 'WM_ASYNCSELECT' , , .T. } ) - aAdd( aDefRules, { 'FM_CLOSEUP' , , .T. } ) - aAdd( aDefRules, { 'WM_TASKBAR' , , .T. } ) - aAdd( aDefRules, { 'IDOK' , , .T. } ) - aAdd( aDefRules, { 'ID_OK' , , .T. } ) - aAdd( aDefRules, { 'IDCANCEL' , , .T. } ) - aAdd( aDefRules, { 'BN_CLICKED' , , .T. } ) - aAdd( aDefRules, { 'CS_VREDRAW' , , .T. } ) - aAdd( aDefRules, { 'CS_HREDRAW' , , .T. } ) - aAdd( aDefRules, { 'CS_GLOBALCLASS' , , .T. } ) - aAdd( aDefRules, { 'CS_OWNDC' , , .T. } ) - aAdd( aDefRules, { 'CS_CLASSDC' , , .T. } ) - aAdd( aDefRules, { 'CS_PARENTDC' , , .T. } ) - aAdd( aDefRules, { 'CS_BYTEALIGNCLIENT' , , .T. } ) - aAdd( aDefRules, { 'CS_BYTEALIGNWINDOW' , , .T. } ) - aAdd( aDefRules, { 'WS_OVERLAPPED' , , .T. } ) - aAdd( aDefRules, { 'WS_POPUP' , , .T. } ) - aAdd( aDefRules, { 'WS_CHILD' , , .T. } ) - aAdd( aDefRules, { 'WS_CLIPSIBLINGS' , , .T. } ) - aAdd( aDefRules, { 'WS_CLIPCHILDREN' , , .T. } ) - aAdd( aDefRules, { 'WS_VISIBLE' , , .T. } ) - aAdd( aDefRules, { 'WS_DISABLED' , , .T. } ) - aAdd( aDefRules, { 'WS_MINIMIZE' , , .T. } ) - aAdd( aDefRules, { 'WS_MAXIMIZE' , , .T. } ) - aAdd( aDefRules, { 'WS_CAPTION' , , .T. } ) - aAdd( aDefRules, { 'WS_BORDER' , , .T. } ) - aAdd( aDefRules, { 'WS_DLGFRAME' , , .T. } ) - aAdd( aDefRules, { 'WS_VSCROLL' , , .T. } ) - aAdd( aDefRules, { 'WS_HSCROLL' , , .T. } ) - aAdd( aDefRules, { 'WS_SYSMENU' , , .T. } ) - aAdd( aDefRules, { 'WS_THICKFRAME' , , .T. } ) - aAdd( aDefRules, { 'WS_MINIMIZEBOX' , , .T. } ) - aAdd( aDefRules, { 'WS_MAXIMIZEBOX' , , .T. } ) - aAdd( aDefRules, { 'WS_GROUP' , , .T. } ) - aAdd( aDefRules, { 'WS_TABSTOP' , , .T. } ) - aAdd( aDefRules, { 'WS_OVERLAPPEDWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WS_POPUPWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'WS_CHILDWINDOW' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'ES_LEFT' , , .T. } ) - aAdd( aDefRules, { 'ES_RIGHT' , , .T. } ) - aAdd( aDefRules, { 'ES_MULTILINE' , , .T. } ) - aAdd( aDefRules, { 'ES_AUTOHSCROLL' , , .T. } ) - aAdd( aDefRules, { 'ES_READONLY' , , .T. } ) - aAdd( aDefRules, { 'ES_WANTRETURN' , , .T. } ) - aAdd( aDefRules, { 'WM_NULL' , , .T. } ) - aAdd( aDefRules, { 'WM_DESTROY' , , .T. } ) - aAdd( aDefRules, { 'WM_MOVE' , , .T. } ) - aAdd( aDefRules, { 'WM_SIZE' , , .T. } ) - aAdd( aDefRules, { 'WM_SETFOCUS' , , .T. } ) - aAdd( aDefRules, { 'WM_KILLFOCUS' , , .T. } ) - aAdd( aDefRules, { 'WM_PAINT' , , .T. } ) - aAdd( aDefRules, { 'WM_CLOSE' , , .T. } ) - aAdd( aDefRules, { 'WM_QUERYENDSESSION' , , .T. } ) - aAdd( aDefRules, { 'WM_QUIT' , , .T. } ) - aAdd( aDefRules, { 'WM_SYSCOLORCHANGE' , , .T. } ) - aAdd( aDefRules, { 'WM_ENDSESSION' , , .T. } ) - aAdd( aDefRules, { 'WM_SYSTEMERROR' , , .T. } ) - aAdd( aDefRules, { 'WM_WININICHANGE' , , .T. } ) - aAdd( aDefRules, { 'WM_DEVMODECHANGE' , , .T. } ) - aAdd( aDefRules, { 'WM_FONTCHANGE' , , .T. } ) - aAdd( aDefRules, { 'WM_TIMECHANGE' , , .T. } ) - aAdd( aDefRules, { 'WM_SPOOLERSTATUS' , , .T. } ) - aAdd( aDefRules, { 'WM_COMPACTING' , , .T. } ) - aAdd( aDefRules, { 'WM_GETDLGCODE' , , .T. } ) - aAdd( aDefRules, { 'WM_CHAR' , , .T. } ) - aAdd( aDefRules, { 'WM_COMMAND' , , .T. } ) - aAdd( aDefRules, { 'WM_MOUSEMOVE' , , .T. } ) - aAdd( aDefRules, { 'WM_LBUTTONDOWN' , , .T. } ) - aAdd( aDefRules, { 'WM_LBUTTONUP' , , .T. } ) - aAdd( aDefRules, { 'WM_RBUTTONDOWN' , , .T. } ) - aAdd( aDefRules, { 'WM_RBUTTONUP' , , .T. } ) - aAdd( aDefRules, { 'WM_KEYDOWN' , , .T. } ) - aAdd( aDefRules, { 'WM_KEYUP' , , .T. } ) - aAdd( aDefRules, { 'WM_INITDIALOG' , , .T. } ) - aAdd( aDefRules, { 'WM_TIMER' , , .T. } ) - aAdd( aDefRules, { 'WM_HSCROLL' , , .T. } ) - aAdd( aDefRules, { 'WM_VSCROLL' , , .T. } ) - aAdd( aDefRules, { 'WM_QUERYNEWPALETTE' , , .T. } ) - aAdd( aDefRules, { 'WM_PALETTEISCHANGING' , , .T. } ) - aAdd( aDefRules, { 'WM_PALETTECHANGED' , , .T. } ) - aAdd( aDefRules, { 'WM_USER' , , .T. } ) - aAdd( aDefRules, { 'DS_SYSMODAL' , , .T. } ) - aAdd( aDefRules, { 'DS_MODALFRAME' , , .T. } ) - aAdd( aDefRules, { 'DLGC_WANTARROWS' , , .T. } ) - aAdd( aDefRules, { 'DLGC_WANTTAB' , , .T. } ) - aAdd( aDefRules, { 'DLGC_WANTALLKEYS' , , .T. } ) - aAdd( aDefRules, { 'DLGC_WANTCHARS' , , .T. } ) - aAdd( aDefRules, { 'LBS_NOTIFY' , , .T. } ) - aAdd( aDefRules, { 'LBS_SORT' , , .T. } ) - aAdd( aDefRules, { 'LBS_OWNERDRAWFIXED' , , .T. } ) - aAdd( aDefRules, { 'LBS_USETABSTOPS' , , .T. } ) - aAdd( aDefRules, { 'LBS_NOINTEGRALHEIGHT' , , .T. } ) - aAdd( aDefRules, { 'LBS_WANTKEYBOARDINPUT' , , .T. } ) - aAdd( aDefRules, { 'LBS_DISABLENOSCROLL' , , .T. } ) - aAdd( aDefRules, { 'LBS_STANDARD' , , .T. } ) - aAdd( aDefRules, { 'CBS_SIMPLE' , , .T. } ) - aAdd( aDefRules, { 'CBS_DROPDOWN' , , .T. } ) - aAdd( aDefRules, { 'CBS_DROPDOWNLIST' , , .T. } ) - aAdd( aDefRules, { 'CBS_OWNERDRAWFIXED' , , .T. } ) - aAdd( aDefRules, { 'CBS_AUTOHSCROLL' , , .T. } ) - aAdd( aDefRules, { 'CBS_OEMCONVERT' , , .T. } ) - aAdd( aDefRules, { 'CBS_SORT' , , .T. } ) - aAdd( aDefRules, { 'CBS_DISABLENOSCROLL' , , .T. } ) - aAdd( aDefRules, { 'SB_LINEUP' , , .T. } ) - aAdd( aDefRules, { 'SB_LINELEFT' , , .T. } ) - aAdd( aDefRules, { 'SB_LINEDOWN' , , .T. } ) - aAdd( aDefRules, { 'SB_LINERIGHT' , , .T. } ) - aAdd( aDefRules, { 'SB_PAGEUP' , , .T. } ) - aAdd( aDefRules, { 'SB_PAGELEFT' , , .T. } ) - aAdd( aDefRules, { 'SB_PAGEDOWN' , , .T. } ) - aAdd( aDefRules, { 'SB_PAGERIGHT' , , .T. } ) - aAdd( aDefRules, { 'SB_THUMBPOSITION' , , .T. } ) - aAdd( aDefRules, { 'SB_THUMBTRACK' , , .T. } ) - aAdd( aDefRules, { 'SB_TOP' , , .T. } ) - aAdd( aDefRules, { 'SB_LEFT' , , .T. } ) - aAdd( aDefRules, { 'SB_BOTTOM' , , .T. } ) - aAdd( aDefRules, { 'SB_RIGHT' , , .T. } ) - aAdd( aDefRules, { 'SB_ENDSCROLL' , , .T. } ) - aAdd( aDefRules, { 'SBS_HORZ' , , .T. } ) - aAdd( aDefRules, { 'SBS_VERT' , , .T. } ) - aAdd( aDefRules, { 'BS_PUSHBUTTON' , , .T. } ) - aAdd( aDefRules, { 'BS_DEFPUSHBUTTON' , , .T. } ) - aAdd( aDefRules, { 'BS_CHECKBOX' , , .T. } ) - aAdd( aDefRules, { 'BS_AUTOCHECKBOX' , , .T. } ) - aAdd( aDefRules, { 'BS_GROUPBOX' , , .T. } ) - aAdd( aDefRules, { 'BS_AUTORADIOBUTTON' , , .T. } ) - aAdd( aDefRules, { 'PS_SOLID' , , .T. } ) - aAdd( aDefRules, { 'PS_DASH' , , .T. } ) - aAdd( aDefRules, { 'PS_DOT' , , .T. } ) - aAdd( aDefRules, { 'PS_DASHDOT' , , .T. } ) - aAdd( aDefRules, { 'PS_DASHDOTDOT' , , .T. } ) - aAdd( aDefRules, { 'PS_NULL' , , .T. } ) - aAdd( aDefRules, { 'PS_INSIDEFRAME' , , .T. } ) - aAdd( aDefRules, { 'SS_BLACKRECT' , , .T. } ) - aAdd( aDefRules, { 'SS_WHITERECT' , , .T. } ) - aAdd( aDefRules, { 'SS_WHITEFRAME' , , .T. } ) - aAdd( aDefRules, { 'SS_LEFT' , , .T. } ) - aAdd( aDefRules, { 'SS_SIMPLE' , , .T. } ) - aAdd( aDefRules, { 'DLGINIT' , , .T. } ) - aAdd( aDefRules, { 'FN_UNZIP' , , .T. } ) - aAdd( aDefRules, { 'Set3dLook' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aDefRules, { 'CRLF' , , .T. } ) - aAdd( aDefRules, { 'bSETGET' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - - /* Translates */ - aAdd( aTransRules, { 'RGB' , { { 1, 0, '(', '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, ',', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) - aAdd( aTransRules, { 'NOREF' , { { 0, 0, '(', NIL, NIL }, { 0, 1, '@', NIL, NIL }, { 1, 0, NIL, '<', NIL }, { 0, 0, ')', NIL, NIL } } , .F. } ) - aAdd( aTransRules, { 'DLL32' , , .F. } ) - aAdd( aTransRules, { '_PARM_BLOCK_10_' , { { 1, 0, '(', '<', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - - /* Commands */ - aAdd( aCommRules, { 'SET' , { { 1, 0, NIL, ':', { '_3DLOOK', '3DLOOK', 'LOOK3D', 'LOOK 3D', '3D LOOK' } }, { 2, 0, NIL, ':', { 'ON', 'OFF', '&' } } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'RESOURCES', NIL, NIL }, { 1, 0, 'TO', '<', NIL }, { 1002, 1, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'RESOURCES', NIL, NIL }, { 0, 0, 'TO', NIL, NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'HELPFILE', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'HELP', NIL, NIL }, { 0, 0, 'TOPIC', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 1, 0, NIL, '<', NIL }, { 1002, 1, 'AS', ':', { 'CHARACTER', 'NUMERIC', 'LOGICAL', 'DATE' } }, { 3, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 4, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'DIALOG', '<', NIL }, { 2, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'TITLE', '<', NIL }, { 5, 1, 'FROM', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, -1, 'TO', '<', NIL }, { 8, -1, ',', '<', NIL }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'LIBRARY', 'DLL' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'VBX' } }, { 14, 1, 'STYLE', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, 'BRUSH', '<', NIL }, { 19, 1, NIL, ':', { 'WINDOW', 'DIALOG', 'OF' } }, { 20, -1, NIL, '<', NIL }, { 21, 1, NIL, ':', { 'PIXEL' } }, { 22, 1, 'ICON', '<', NIL }, { 23, 1, 'FONT', '<', NIL }, { 24, 1, NIL, ':', { 'HELP', 'HELPID' } }, { 25, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'DIALOG', '<', NIL }, { 2, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 1003, 1, NIL, ':', { 'NOWAIT', 'NOMODAL' } }, { 1004, 1, 'WHEN', '<', NIL }, { 1005, 1, 'VALID', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1006, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1007, -1, 'INIT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'MOVE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1009, -1, 'PAINT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1010, -1, 'CLICK', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'FONT', '<', NIL }, { 2, 1, 'NAME', '<', NIL }, { 3, 1, 'SIZE', '<', NIL }, { 4, -1, ',', '<', NIL }, { 1005, 1, NIL, ':', { 'FROM USER' } }, { 1006, 1, NIL, ':', { 'BOLD' } }, { 1007, 1, NIL, ':', { 'ITALIC' } }, { 1008, 1, NIL, ':', { 'UNDERLINE' } }, { 1009, 1, 'WEIGHT', '<', NIL }, { 1010, 1, 'OF', '<', NIL }, { 1011, 1, 'NESCAPEMENT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEACTIVATE' , { { 1, 0, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'FONT', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'INI' , { { 1, 0, NIL, '<', NIL }, { 2, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 3, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'GET' , { { 1, 0, NIL, '<', NIL }, { 2, 1, 'SECTION', '<', NIL }, { 3, 1, 'ENTRY', '<', NIL }, { 4, 1, 'DEFAULT', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'INI' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 1, 1, 'SECTION', '<', NIL }, { 2, 1, 'ENTRY', '<', NIL }, { 3, 1, 'TO', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'INI' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ENDINI' , , .T. } ) - aAdd( aCommRules, { 'MENU' , { { 1001, 1, NIL, '<', { 'POPUP' } }, { 2, 1, NIL, ':', { 'POPUP' } } } , .T. } ) - aAdd( aCommRules, { 'MENUITEM' , { { 1001, 1, NIL, '<', { 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACTION', 'BLOCK', 'OF', 'MENU', 'SYSMENU', 'ACCELERATOR', 'HELP', 'HELP ID', 'HELPID', 'WHEN', 'BREAK' } }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 1, NIL, '<', { 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACTION', 'BLOCK', 'OF', 'MENU', 'SYSMENU', 'ACCELERATOR', 'HELP', 'HELP ID', 'HELPID', 'WHEN', 'BREAK' } }, { 3, 1, 'MESSAGE', '<', NIL }, { 4, 1, NIL, ':', { 'CHECK', 'CHECKED', 'MARK' } }, { 1005, 1, NIL, ':', { 'ENABLED', 'DISABLED' } }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 9, -1, NIL, '<', NIL }, { 1010, 1, 'ACTION', 'A', NIL }, { 11, 1, 'BLOCK', '<', NIL }, { 12, 1, NIL, ':', { 'OF', 'MENU', 'SYSMENU' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'ACCELERATOR', '<', NIL }, { 15, -1, ',', '<', NIL }, { 16, 1, NIL, ':', { 'HELP' } }, { 17, 1, NIL, ':', { 'HELP ID', 'HELPID' } }, { 18, -1, NIL, '<', NIL }, { 1019, 1, 'WHEN', '<', NIL }, { 20, 1, NIL, ':', { 'BREAK' } } } , .T. } ) - aAdd( aCommRules, { 'MRU' , { { 1, 0, NIL, '<', NIL }, { 2, 1, NIL, ':', { 'INI', 'ININAME', 'FILENAME', 'NAME', 'DISK' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'SECTION', '<', NIL }, { 5, 1, NIL, ':', { 'SIZE', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'MESSAGE', '<', NIL }, { 1008, 1, 'ACTION', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SEPARATOR' , { { 1001, 1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ENDMENU' , , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'MENU', '<', NIL }, { 2, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'POPUP' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'MENUITEM', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'ACTION', 'BLOCK', 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACCELERATOR', 'HELP ID', 'HELPID', 'WHEN' } }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 1, NIL, '<', { 'ID', 'ACTION', 'BLOCK', 'MESSAGE', 'CHECK', 'CHECKED', 'MARK', 'ENABLED', 'DISABLED', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'RESNAME', 'NAME', 'ACCELERATOR', 'HELP ID', 'HELPID', 'WHEN' } }, { 3, 1, 'ID', '<', NIL }, { 4, -1, NIL, ':', { 'OF', 'MENU' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, 'ACTION', '<', NIL }, { 7, 1, 'BLOCK', '<', NIL }, { 8, 1, 'MESSAGE', '<', NIL }, { 9, 1, NIL, ':', { 'CHECK', 'CHECKED', 'MARK' } }, { 1010, 1, NIL, ':', { 'ENABLED', 'DISABLED' } }, { 11, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 14, -1, NIL, '<', NIL }, { 15, 1, 'ACCELERATOR', '<', NIL }, { 16, -1, ',', '<', NIL }, { 17, 1, NIL, ':', { 'HELP ID', 'HELPID' } }, { 18, -1, NIL, '<', NIL }, { 1019, 1, 'WHEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'MENU', '<', NIL }, { 2, 0, 'OF', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'MENU', NIL, NIL }, { 1, 0, 'OF', '<', NIL }, { 2, 0, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, NIL, ':', { 'POPUP', 'MENU' } }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'AT', '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SYSMENU', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 3, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ENDSYSMENU' , , .T. } ) - aAdd( aCommRules, { 'PRINT' , { { 1001, 1, NIL, '<', { 'NAME', 'TITLE', 'DOC', 'FROM USER', 'PREVIEW', 'TO' } }, { 1002, 1, NIL, ':', { 'NAME', 'TITLE', 'DOC' } }, { 1003, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FROM USER' } }, { 5, 1, NIL, ':', { 'PREVIEW' } }, { 6, 2, NIL, ':', { 'MODAL' } }, { 7, 1, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'PRINTER' , { { 1001, 1, NIL, '<', { 'NAME', 'DOC', 'FROM USER', 'PREVIEW', 'TO' } }, { 1002, 1, NIL, ':', { 'NAME', 'DOC' } }, { 1003, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FROM USER' } }, { 5, 1, NIL, ':', { 'PREVIEW' } }, { 6, 2, NIL, ':', { 'MODAL' } }, { 7, 1, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'PAGE' , , .T. } ) - aAdd( aCommRules, { 'ENDPAGE' , , .T. } ) - aAdd( aCommRules, { 'ENDPRINT' , , .T. } ) - aAdd( aCommRules, { 'ENDPRINTER' , , .T. } ) - aAdd( aCommRules, { 'DLL' , { { 1001, 1, NIL, ':', { 'STATIC' } }, { 2, 0, 'FUNCTION', '<', NIL }, { 0, 0, '(', NIL, NIL }, { 1003, 1, NIL, '<', { ',', ')' } }, { 1004, -1, 'AS', '<', NIL }, { 1005, 1, ',', '<', NIL }, { 1006, -1, 'AS', '<', NIL }, { 0, 0, ')', NIL, NIL }, { 7, 0, 'AS', '<', NIL }, { 1008, 1, NIL, ':', { 'PASCAL' } }, { 1009, 1, 'FROM', '<', NIL }, { 10, 0, 'LIB', '*', NIL } } , .T. } ) - aAdd( aCommRules, { 'DLL32' , { { 1001, 1, NIL, ':', { 'STATIC' } }, { 2, 0, 'FUNCTION', '<', NIL }, { 0, 0, '(', NIL, NIL }, { 1003, 1, NIL, '<', { ',', ')' } }, { 1004, -1, 'AS', '<', NIL }, { 1005, 1, ',', '<', NIL }, { 1006, -1, 'AS', '<', NIL }, { 0, 0, ')', NIL, NIL }, { 7, 0, 'AS', '<', NIL }, { 1008, 1, NIL, ':', { 'PASCAL' } }, { 1009, 1, 'FROM', '<', NIL }, { 10, 0, 'LIB', '*', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'FOLDER', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES', 'PIXEL', 'DESIGN', 'COLOR', 'COLORS', 'OPTION', 'SIZE', 'MESSAGE', 'ADJUST', 'FONT' } }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1007, -1, NIL, 'A', NIL }, { 8, 1, NIL, ':', { 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES' } }, { 9, -1, NIL, '<', NIL }, { 1010, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'PIXEL' } }, { 12, 1, NIL, ':', { 'DESIGN' } }, { 13, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 14, -1, NIL, '<', NIL }, { 15, 2, ',', '<', NIL }, { 16, 1, 'OPTION', '<', NIL }, { 17, 1, 'SIZE', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, 'MESSAGE', '<', NIL }, { 20, 1, NIL, ':', { 'ADJUST' } }, { 21, 1, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'FOLDER', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES', 'COLOR', 'COLORS', 'OPTION', 'ON', 'ADJUST' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1006, -1, NIL, 'A', NIL }, { 7, 1, NIL, ':', { 'DIALOG', 'DIALOGS', 'PAGE', 'PAGES' } }, { 8, -1, NIL, '<', NIL }, { 1009, 2, ',', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL }, { 13, 1, 'OPTION', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'CHANGE', '<', NIL }, { 15, 1, NIL, ':', { 'ADJUST' } } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'TABS', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'ACTION', 'EXECUTE', 'ON CHANGE', 'PIXEL', 'DESIGN', 'COLOR', 'COLORS', 'OPTION', 'SIZE', 'MESSAGE' } }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1007, -1, NIL, 'A', NIL }, { 1008, 1, NIL, ':', { 'ACTION', 'EXECUTE', 'ON CHANGE' } }, { 1009, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'PIXEL' } }, { 11, 1, NIL, ':', { 'DESIGN' } }, { 12, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 13, -1, NIL, '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, 'OPTION', '<', NIL }, { 16, 1, 'SIZE', '<', NIL }, { 17, -1, ',', '<', NIL }, { 18, 1, 'MESSAGE', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'TABS', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'PROMPT', 'PROMPTS', 'ITEMS', 'ACTION', 'EXECUTE', 'COLOR', 'COLORS', 'OPTION' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'PROMPT', 'PROMPTS', 'ITEMS' } }, { 1006, -1, NIL, 'A', NIL }, { 1007, 1, NIL, ':', { 'ACTION', 'EXECUTE' } }, { 1008, -1, NIL, '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'OPTION', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 1, 0, 'PAGES', '<', NIL }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'OF', '<', NIL }, { 1004, 1, 'DIALOGS', 'A', NIL }, { 5, 1, 'OPTION', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1006, -1, 'CHANGE', '<', NIL }, { 7, 1, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'ODBC', '<', NIL }, { 2, 1, 'NAME', '<', NIL }, { 3, 1, 'USER', '<', NIL }, { 4, 1, 'PASSWORD', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ODBC' , { { 1, 0, NIL, '<', NIL }, { 2, 0, NIL, ':', { 'SQL', 'EXECUTE' } }, { 3, 0, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, NIL, ':', { 'DDE', 'LINK' } }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'SERVICE', '<', NIL }, { 4, 1, 'TOPIC', '<', NIL }, { 5, 1, 'ITEM', '<', NIL }, { 1006, 1, 'ACTION', '<', NIL }, { 1007, 1, 'VALID', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, NIL, ':', { 'DDE', 'LINK' } }, { 2, 0, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'VIDEO', NIL, NIL }, { 1001, 1, NIL, '<', { 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'VIDEO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'PLAY' , { { 1, 0, 'VIDEO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'VIDEO', NIL, NIL }, { 1003, 1, NIL, '<', { 'SIZE', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'NOBORDER' } }, { 4, 1, 'SIZE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'VIDEO', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'WHEN', 'VALID', 'FILE', 'FILENAME', 'DISK' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, 'WHEN', '<', NIL }, { 6, 1, 'VALID', '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'TREE' , { { 1001, 1, NIL, '<', { 'BITMAPS' } }, { 2, 1, 'BITMAPS', '<', NIL }, { 3, -1, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'TREEITEM' , { { 1001, 1, NIL, '<', NIL }, { 0, -1, 'PROMPT', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'RESOURCE', '<', NIL }, { 4, 2, ',', '<', NIL }, { 5, 1, 'FILENAME', '<', NIL }, { 6, 2, ',', '<', NIL }, { 7, 1, NIL, ':', { 'OPENED', 'OPEN' } } } , .T. } ) - aAdd( aCommRules, { 'ENDTREE' , , .T. } ) - aAdd( aCommRules, { 'SET' , { { 1, 0, 'MULTIPLE', ':', { 'ON', 'OFF' } } } , .T. } ) - aAdd( aCommRules, { 'DEFAULT' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ':=', '<', NIL }, { 1003, 1, ',', '<', NIL }, { 1004, -1, ':=', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DO' , , .T. } ) - aAdd( aCommRules, { 'UNTIL' , { { 1, 0, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'IDLEACTION', NIL, NIL }, { 1, 0, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DATABASE' , { { 1, 0, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'RELEASE' , { { 1, 0, NIL, '<', NIL }, { 2, 0, NIL, '<', NIL }, { 1003, 1, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BRUSH', NIL, NIL }, { 1001, 1, NIL, '<', { 'STYLE', 'COLOR', 'FILE', 'FILENAME', 'DISK', 'RESOURCE', 'NAME', 'RESNAME' } }, { 1002, 1, 'STYLE', '<', NIL }, { 3, 1, 'COLOR', '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 7, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'BRUSH', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'PEN', '<', NIL }, { 2, 1, 'STYLE', '<', NIL }, { 3, 1, 'WIDTH', '<', NIL }, { 4, 1, 'COLOR', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'PEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BUTTONBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'SIZE', 'BUTTONSIZE', 'SIZEBUTTON', '_3D', '3D', '3DLOOK', '_3DLOOK', 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT', 'OF', 'WINDOW', 'DIALOG', 'CURSOR' } }, { 2, 1, NIL, ':', { 'SIZE', 'BUTTONSIZE', 'SIZEBUTTON' } }, { 3, -1, NIL, '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, NIL, ':', { '_3D', '3D', '3DLOOK', '_3DLOOK' } }, { 1006, 1, NIL, ':', { 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT' } }, { 7, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, 'CURSOR', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BUTTONBAR', NIL, NIL }, { 1003, 1, NIL, '<', { 'SIZE', 'BUTTONSIZE', '3D', '3DLOOK', '_3DLOOK', 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT', 'OF', 'WINDOW', 'DIALOG', 'CURSOR' } }, { 4, 1, 'SIZE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'BUTTONSIZE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, NIL, ':', { '3D', '3DLOOK', '_3DLOOK' } }, { 1009, 1, NIL, ':', { 'TOP', 'LEFT', 'RIGHT', 'BOTTOM', 'FLOAT' } }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, 'CURSOR', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BUTTON', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'BUTTONBAR', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ACTION', 'EXEC', 'GROUP', 'MESSAGE', 'ADJUST', 'WHEN', 'TOOLTIP', 'PRESSED', 'ON', 'AT', 'PROMPT', 'FONT', 'NOBORDER', 'FLAT', 'MENU' } }, { 2, 1, NIL, ':', { 'OF', 'BUTTONBAR' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 2, ',', '<', NIL }, { 1007, 3, ',', '<', NIL }, { 8, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 3, ',', '<', NIL }, { 1012, 1, NIL, ':', { 'ACTION', 'EXEC' } }, { 1013, -1, NIL, 'A', NIL }, { 14, 1, NIL, ':', { 'GROUP' } }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'ADJUST' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'TOOLTIP', '<', NIL }, { 19, 1, NIL, ':', { 'PRESSED' } }, { 1000, 1, 'ON', NIL, NIL }, { 1020, -1, 'DROP', '<', NIL }, { 21, 1, 'AT', '<', NIL }, { 22, 1, 'PROMPT', '<', NIL }, { 23, 1, 'FONT', '<', NIL }, { 1024, 1, NIL, ':', { 'NOBORDER', 'FLAT' } }, { 1025, 1, 'MENU', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BTNBMP', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'BUTTONBAR', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ACTION', 'EXEC', 'ON CLICK', 'MESSAGE', 'ADJUST', 'WHEN', 'UPDATE', 'TOOLTIP', 'PROMPT', 'FONT', 'NOBORDER' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'BUTTONBAR' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 6, -1, NIL, '<', NIL }, { 7, 2, ',', '<', NIL }, { 1008, 3, ',', '<', NIL }, { 9, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 1012, 3, ',', '<', NIL }, { 1013, 1, NIL, ':', { 'ACTION', 'EXEC', 'ON CLICK' } }, { 1014, -1, NIL, 'A', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'ADJUST' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, NIL, ':', { 'UPDATE' } }, { 19, 1, 'TOOLTIP', '<', NIL }, { 20, 1, 'PROMPT', '<', NIL }, { 21, 1, 'FONT', '<', NIL }, { 1022, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BTNBMP', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'SIZE', 'ACTION', 'OF', 'WINDOW', 'DIALOG', 'MESSAGE', 'WHEN', 'ADJUST', 'UPDATE', 'PROMPT', 'FONT', 'NOBORDER' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 2, ',', '<', NIL }, { 1007, 3, ',', '<', NIL }, { 8, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 3, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 1014, 1, 'ACTION', 'A', NIL }, { 15, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 16, -1, NIL, '<', NIL }, { 17, 1, 'MESSAGE', '<', NIL }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, NIL, ':', { 'ADJUST' } }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, 'PROMPT', '<', NIL }, { 22, 1, 'FONT', '<', NIL }, { 23, 1, NIL, ':', { 'NOBORDER' } } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'ICON', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESOURCE', 'RESNAME', 'FILE', 'FILENAME', 'DISK', 'BORDER', 'ON', 'OF', 'WINDOW', 'DIALOG', 'UPDATE', 'WHEN', 'COLOR' } }, { 4, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'BORDER' } }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CLICK', '<', NIL }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, NIL, ':', { 'UPDATE' } }, { 13, 1, 'WHEN', '<', NIL }, { 14, 1, 'COLOR', '<', NIL }, { 15, 2, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 1001, 1, 'ICON', '<', NIL }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 6, -1, NIL, '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 7, -1, 'CLICK', '<', NIL }, { 8, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, NIL, ':', { 'UPDATE' } }, { 11, 1, 'WHEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'ICON', '<', NIL }, { 2, 1, NIL, ':', { 'NAME', 'RESOURCE', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, 'WHEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BUTTON', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'PROMPT', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, 'SIZE', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, 1, 'ACTION', '<', NIL }, { 8, 1, NIL, ':', { 'DEFAULT' } }, { 9, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 10, -1, NIL, '<', NIL }, { 11, 1, NIL, ':', { 'HELP', 'HELPID', 'HELP ID' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, NIL, ':', { 'PIXEL' } }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, NIL, ':', { 'UPDATE' } }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, 'VALID', '<', NIL }, { 20, 1, NIL, ':', { 'CANCEL' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BUTTON', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'ACTION', 'HELP', 'HELPID', 'HELP ID', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'PROMPT', 'CANCEL' } }, { 2, 1, 'ID', '<', NIL }, { 3, 2, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -2, NIL, '<', NIL }, { 1005, 1, 'ACTION', 'A', NIL }, { 6, 1, NIL, ':', { 'HELP', 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'MESSAGE', '<', NIL }, { 9, 1, NIL, ':', { 'UPDATE' } }, { 10, 1, 'WHEN', '<', NIL }, { 11, 1, 'VALID', '<', NIL }, { 12, 1, 'PROMPT', '<', NIL }, { 13, 1, NIL, ':', { 'CANCEL' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'CHECKBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'ID', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 1008, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 1009, -1, NIL, '<', NIL }, { 10, 1, 'VALID', '<', NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 14, 1, 'MESSAGE', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'WHEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'CHECKBOX', NIL, NIL }, { 1003, 1, NIL, '<', { 'PROMPT', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'HELPID', 'HELP ID', 'FONT', 'ON CLICK', 'ON CHANGE', 'VALID', 'COLOR', 'COLORS', 'DESIGN', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN' } }, { 0, -1, 'VAR', NIL, NIL }, { 1004, 1, NIL, '<', { 'PROMPT', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'HELPID', 'HELP ID', 'FONT', 'ON CLICK', 'ON CHANGE', 'VALID', 'COLOR', 'COLORS', 'DESIGN', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN' } }, { 5, 1, 'PROMPT', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'SIZE', '<', NIL }, { 9, -1, ',', '<', NIL }, { 10, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, 'FONT', '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 1014, -1, NIL, '<', NIL }, { 15, 1, 'VALID', '<', NIL }, { 16, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 17, -1, NIL, '<', NIL }, { 18, 2, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'COMBOBOX', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'SIZE', '<', NIL }, { 8, -1, ',', '<', NIL }, { 9, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 10, -1, NIL, '<', NIL }, { 11, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 12, -1, NIL, '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1013, -1, 'CHANGE', '<', NIL }, { 14, 1, 'VALID', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, NIL, ':', { 'PIXEL' } }, { 19, 1, 'FONT', '<', NIL }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, NIL, ':', { 'DESIGN' } }, { 24, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1025, -1, 'DRAWITEM', '<', NIL }, { 26, 1, 'STYLE', '<', NIL }, { 27, 1, 'PICTURE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'EDIT', NIL, NIL }, { 1028, -1, 'CHANGE', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'COMBOBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, 'ID', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 9, -1, NIL, '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1010, -1, 'CHANGE', '<', NIL }, { 11, 1, 'VALID', '<', NIL }, { 12, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 13, -1, NIL, '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'DRAWITEM', '<', NIL }, { 20, 1, 'STYLE', '<', NIL }, { 21, 1, 'PICTURE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'EDIT', NIL, NIL }, { 1022, -1, 'CHANGE', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'LISTBOX', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'FILES', 'FILESPEC' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'ID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'CHANGE', 'A', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 9, -1, 'DBLCLICK', '<', NIL }, { 10, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 11, -1, NIL, '<', NIL }, { 12, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'VALID', '<', NIL }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1022, -1, 'DRAWITEM', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'LISTBOX', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'PROMPTS', 'ITEMS' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'SIZE', '<', NIL }, { 8, -1, ',', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 9, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 10, -1, 'DBLCLICK', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'VALID', '<', NIL }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, 2, ',', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, NIL, ':', { 'DESIGN' } }, { 19, 1, 'FONT', '<', NIL }, { 20, 1, 'MESSAGE', '<', NIL }, { 21, 1, NIL, ':', { 'UPDATE' } }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, 'BITMAPS', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1024, -1, 'DRAWITEM', '<', NIL }, { 25, 1, NIL, ':', { 'MULTI', 'MULTIPLE', 'MULTISEL' } }, { 26, 1, NIL, ':', { 'SORT' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'LISTBOX', NIL, NIL }, { 1001, 1, NIL, '<', { 'FIELDS' } }, { 0, 0, 'FIELDS', NIL, NIL }, { 1002, 1, NIL, 'A', { 'ALIAS', 'ID', 'OF', 'DIALOG', 'FIELDSIZES', 'SIZES', 'COLSIZES', 'HEAD', 'HEADER', 'HEADERS', 'TITLE', 'SELECT', 'ON', 'ON', 'ON', 'ON', 'FONT', 'CURSOR', 'COLOR', 'COLORS', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'ACTION' } }, { 3, 1, 'ALIAS', '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 1007, 1, NIL, ':', { 'FIELDSIZES', 'SIZES', 'COLSIZES' } }, { 1008, -1, NIL, 'A', NIL }, { 1009, 1, NIL, ':', { 'HEAD', 'HEADER', 'HEADERS', 'TITLE' } }, { 1010, -1, NIL, 'A', NIL }, { 11, 1, 'SELECT', '<', NIL }, { 12, -1, 'FOR', '<', NIL }, { 13, 2, 'TO', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1015, -1, 'CLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1016, -1, 'DBLCLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1017, -1, 'CLICK', '<', NIL }, { 18, 1, 'FONT', '<', NIL }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 21, -1, NIL, '<', NIL }, { 22, 2, ',', '<', NIL }, { 23, 1, 'MESSAGE', '<', NIL }, { 24, 1, NIL, ':', { 'UPDATE' } }, { 25, 1, 'WHEN', '<', NIL }, { 26, 1, 'VALID', '<', NIL }, { 1027, 1, 'ACTION', 'A', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'LISTBOX', NIL, NIL }, { 1003, 1, NIL, '<', { 'FIELDS' } }, { 0, 0, 'FIELDS', NIL, NIL }, { 1004, 1, NIL, 'A', { 'ALIAS', 'FIELDSIZES', 'SIZES', 'COLSIZES', 'HEAD', 'HEADER', 'HEADERS', 'TITLE', 'SIZE', 'OF', 'DIALOG', 'SELECT', 'ON', 'ON', 'ON', 'ON', 'FONT', 'CURSOR', 'COLOR', 'COLORS', 'MESSAGE', 'UPDATE', 'PIXEL', 'WHEN', 'DESIGN', 'VALID', 'ACTION' } }, { 5, 1, 'ALIAS', '<', NIL }, { 1006, 1, NIL, ':', { 'FIELDSIZES', 'SIZES', 'COLSIZES' } }, { 1007, -1, NIL, 'A', NIL }, { 1008, 1, NIL, ':', { 'HEAD', 'HEADER', 'HEADERS', 'TITLE' } }, { 1009, -1, NIL, 'A', NIL }, { 10, 1, 'SIZE', '<', NIL }, { 11, -1, ',', '<', NIL }, { 12, 1, NIL, ':', { 'OF', 'DIALOG' } }, { 13, -1, NIL, '<', NIL }, { 14, 1, 'SELECT', '<', NIL }, { 15, -1, 'FOR', '<', NIL }, { 16, 2, 'TO', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1017, -1, 'CHANGE', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 0, 2, 'LEFT', NIL, NIL }, { 18, -1, 'CLICK', '<', NIL }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1019, -1, 'DBLCLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1020, -1, 'CLICK', '<', NIL }, { 21, 1, 'FONT', '<', NIL }, { 22, 1, 'CURSOR', '<', NIL }, { 23, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 24, -1, NIL, '<', NIL }, { 25, 2, ',', '<', NIL }, { 26, 1, 'MESSAGE', '<', NIL }, { 27, 1, NIL, ':', { 'UPDATE' } }, { 28, 1, NIL, ':', { 'PIXEL' } }, { 29, 1, 'WHEN', '<', NIL }, { 30, 1, NIL, ':', { 'DESIGN' } }, { 31, 1, 'VALID', '<', NIL }, { 1032, 1, 'ACTION', 'A', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'RADIO', NIL, NIL }, { 1003, 1, NIL, '<', { 'PROMPT', 'ITEMS', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CLICK', 'ON CHANGE', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'SIZE', 'VALID', 'DESIGN', '3D', '_3D', 'PIXEL' } }, { 0, -1, 'VAR', NIL, NIL }, { 1004, 1, NIL, '<', { 'PROMPT', 'ITEMS', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CLICK', 'ON CHANGE', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'SIZE', 'VALID', 'DESIGN', '3D', '_3D', 'PIXEL' } }, { 5, 1, NIL, ':', { 'PROMPT', 'ITEMS' } }, { 6, -1, NIL, 'A', NIL }, { 7, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 8, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 1010, -1, NIL, 'A', NIL }, { 11, 1, NIL, ':', { 'ON CLICK', 'ON CHANGE' } }, { 12, -1, NIL, '<', NIL }, { 13, 1, 'COLOR', '<', NIL }, { 14, 2, ',', '<', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'UPDATE' } }, { 17, 1, 'WHEN', '<', NIL }, { 18, 1, 'SIZE', '<', NIL }, { 19, -1, ',', '<', NIL }, { 20, 1, 'VALID', '<', NIL }, { 21, 1, NIL, ':', { 'DESIGN' } }, { 22, 1, NIL, ':', { '3D', '_3D' } }, { 23, 1, NIL, ':', { 'PIXEL' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'RADIO', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CHANGE', 'ON CLICK', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 0, -1, 'VAR', NIL, NIL }, { 1002, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'HELPID', 'HELP ID', 'ON CHANGE', 'ON CLICK', 'COLOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 3, 1, 'ID', 'A', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 1006, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 1007, -1, NIL, 'A', NIL }, { 8, 1, NIL, ':', { 'ON CHANGE', 'ON CLICK' } }, { 9, -1, NIL, '<', NIL }, { 10, 1, 'COLOR', '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'MESSAGE', '<', NIL }, { 13, 1, NIL, ':', { 'UPDATE' } }, { 14, 1, 'WHEN', '<', NIL }, { 15, 1, 'VALID', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'BITMAP', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILENAME', 'FILE', 'DISK', 'NOBORDER', 'NO BORDER', 'SIZE', 'OF', 'WINDOW', 'DIALOG', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'NOBORDER', 'NO BORDER' } }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'SCROLL' } }, { 18, 1, NIL, ':', { 'ADJUST' } }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL }, { 24, 1, 'VALID', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'IMAGE', NIL, NIL }, { 1003, 1, NIL, '<', { 'NAME', 'RESNAME', 'RESOURCE', 'FILENAME', 'FILE', 'DISK', 'NOBORDER', 'NO BORDER', 'SIZE', 'OF', 'WINDOW', 'DIALOG', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'PIXEL', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'FILENAME', 'FILE', 'DISK' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'NOBORDER', 'NO BORDER' } }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 11, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 12, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'SCROLL' } }, { 18, 1, NIL, ':', { 'ADJUST' } }, { 19, 1, 'CURSOR', '<', NIL }, { 20, 1, NIL, ':', { 'PIXEL' } }, { 21, 1, 'MESSAGE', '<', NIL }, { 22, 1, NIL, ':', { 'UPDATE' } }, { 23, 1, 'WHEN', '<', NIL }, { 24, 1, 'VALID', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'BITMAP', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'WINDOW', 'DIALOG', 'NAME', 'RESNAME', 'RESOURCE', 'FILE', 'FILENAME', 'DISK', 'ON CLICK', 'ON LEFT CLICK', 'ON RIGHT CLICK', 'SCROLL', 'ADJUST', 'CURSOR', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'TRANSPAREN' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'NAME', 'RESNAME', 'RESOURCE' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'ON CLICK', 'ON LEFT CLICK' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 1, NIL, ':', { 'ON RIGHT CLICK' } }, { 1012, -1, NIL, '<', NIL }, { 13, 1, NIL, ':', { 'SCROLL' } }, { 14, 1, NIL, ':', { 'ADJUST' } }, { 15, 1, 'CURSOR', '<', NIL }, { 16, 1, 'MESSAGE', '<', NIL }, { 17, 1, NIL, ':', { 'UPDATE' } }, { 18, 1, 'WHEN', '<', NIL }, { 19, 1, 'VALID', '<', NIL }, { 20, 1, NIL, ':', { 'TRANSPAREN' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'BITMAP', NIL, NIL }, { 1001, 1, NIL, '<', { 'RESOURCE', 'NAME', 'RESNAME', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, NIL, ':', { 'RESOURCE', 'NAME', 'RESNAME' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SAY', NIL, NIL }, { 1001, 1, NIL, '<', { 'PROMPT', 'VAR', 'PICTURE', 'ID', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'COLORS', 'UPDATE', 'FONT' } }, { 2, 1, NIL, ':', { 'PROMPT', 'VAR' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'PICTURE', '<', NIL }, { 5, 1, 'ID', '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'UPDATE' } }, { 12, 1, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'SAY', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 4, -1, NIL, ':', { 'PROMPT', 'VAR' } }, { 5, 0, NIL, '<', NIL }, { 1006, 1, 'PICTURE', '<', NIL }, { 1007, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1008, -1, NIL, '<', NIL }, { 9, 1, 'FONT', '<', NIL }, { 10, 1, NIL, ':', { 'CENTERED', 'CENTER' } }, { 11, 1, NIL, ':', { 'RIGHT' } }, { 12, 1, NIL, ':', { 'BORDER' } }, { 13, 1, NIL, ':', { 'PIXEL', 'PIXELS' } }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, 2, ',', '<', NIL }, { 17, 1, 'SIZE', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } }, { 20, 1, NIL, ':', { 'UPDATE' } }, { 21, 1, NIL, ':', { 'SHADED', 'SHADOW' } }, { 22, 1, NIL, ':', { 'BOX' } }, { 23, 1, NIL, ':', { 'RAISED' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GET', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, NIL, ':', { 'MULTILINE', 'MEMO', 'TEXT' } }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'FONT', '<', NIL }, { 13, 1, 'CURSOR', '<', NIL }, { 14, 1, 'MESSAGE', '<', NIL }, { 15, 1, NIL, ':', { 'UPDATE' } }, { 16, 1, 'WHEN', '<', NIL }, { 17, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 18, 1, 'VALID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'CHANGE', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GET', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'ID', '<', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, 'PICTURE', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, 'CURSOR', '<', NIL }, { 15, 1, 'MESSAGE', '<', NIL }, { 16, 1, NIL, ':', { 'UPDATE' } }, { 17, 1, 'WHEN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1018, -1, 'CHANGE', '<', NIL }, { 19, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 20, 1, NIL, ':', { 'SPINNER' } }, { 0, 2, 'ON', NIL, NIL }, { 21, -2, 'UP', '<', NIL }, { 0, 2, 'ON', NIL, NIL }, { 22, -2, 'DOWN', '<', NIL }, { 23, 2, 'MIN', '<', NIL }, { 24, 2, 'MAX', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'MULTILINE', 'MEMO', 'TEXT' } }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, 'SIZE', '<', NIL }, { 12, -1, ',', '<', NIL }, { 13, 1, 'FONT', '<', NIL }, { 14, 1, NIL, ':', { 'HSCROLL' } }, { 15, 1, 'CURSOR', '<', NIL }, { 16, 1, NIL, ':', { 'PIXEL' } }, { 17, 1, 'MESSAGE', '<', NIL }, { 18, 1, NIL, ':', { 'UPDATE' } }, { 19, 1, 'WHEN', '<', NIL }, { 20, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 21, 1, NIL, ':', { 'RIGHT' } }, { 22, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 23, 1, 'VALID', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1024, -1, 'CHANGE', '<', NIL }, { 25, 1, NIL, ':', { 'DESIGN' } }, { 1026, 1, NIL, ':', { 'NO BORDER', 'NOBORDER' } }, { 1027, 1, NIL, ':', { 'NO VSCROLL' } } } , .F. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, 'PICTURE', '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 14, 1, 'FONT', '<', NIL }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'CURSOR', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 22, 1, NIL, ':', { 'RIGHT' } }, { 1000, 1, 'ON', NIL, NIL }, { 1023, -1, 'CHANGE', '<', NIL }, { 24, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 25, 1, NIL, ':', { 'PASSWORD' } }, { 1026, 1, NIL, ':', { 'NO BORDER', 'NOBORDER' } }, { 27, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 28, -1, NIL, '<', NIL } } , .F. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'GET', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 1005, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 1006, -1, NIL, '<', NIL }, { 7, 1, 'PICTURE', '<', NIL }, { 8, 1, 'VALID', '<', NIL }, { 9, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 10, -1, NIL, '<', NIL }, { 11, 2, ',', '<', NIL }, { 12, 1, 'SIZE', '<', NIL }, { 13, -1, ',', '<', NIL }, { 14, 1, 'FONT', '<', NIL }, { 15, 1, NIL, ':', { 'DESIGN' } }, { 16, 1, 'CURSOR', '<', NIL }, { 17, 1, NIL, ':', { 'PIXEL' } }, { 18, 1, 'MESSAGE', '<', NIL }, { 19, 1, NIL, ':', { 'UPDATE' } }, { 20, 1, 'WHEN', '<', NIL }, { 21, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 22, 1, NIL, ':', { 'RIGHT' } }, { 1000, 1, 'ON', NIL, NIL }, { 1023, -1, 'CHANGE', '<', NIL }, { 24, 1, NIL, ':', { 'READONLY', 'NO MODIFY' } }, { 25, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 26, -1, NIL, '<', NIL }, { 27, 1, NIL, ':', { 'SPINNER' } }, { 0, 2, 'ON', NIL, NIL }, { 28, -2, 'UP', '<', NIL }, { 0, 2, 'ON', NIL, NIL }, { 29, -2, 'DOWN', '<', NIL }, { 30, 2, 'MIN', '<', NIL }, { 31, 2, 'MAX', '<', NIL } } , .F. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1003, 1, NIL, '<', { 'HORIZONTAL', 'VERTICAL', 'RANGE', 'PAGESTEP', 'SIZE', 'UP', 'ON UP', 'DOWN', 'ON DOWN', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'PIXEL', 'COLOR', 'COLORS', 'OF', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID', 'DESIGN' } }, { 4, 1, NIL, ':', { 'HORIZONTAL' } }, { 1005, 1, NIL, ':', { 'VERTICAL' } }, { 6, 1, 'RANGE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, 'PAGESTEP', '<', NIL }, { 9, 1, 'SIZE', '<', NIL }, { 10, -1, ',', '<', NIL }, { 1011, 1, NIL, ':', { 'UP', 'ON UP' } }, { 1012, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'DOWN', 'ON DOWN' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1016, -1, NIL, '<', NIL }, { 1017, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1018, -1, NIL, '<', NIL }, { 1019, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1020, -1, NIL, '<', NIL }, { 1021, 1, NIL, ':', { 'PIXEL' } }, { 22, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 23, -1, NIL, '<', NIL }, { 24, 2, ',', '<', NIL }, { 25, 1, 'OF', '<', NIL }, { 26, 1, 'MESSAGE', '<', NIL }, { 27, 1, NIL, ':', { 'UPDATE' } }, { 28, 1, 'WHEN', '<', NIL }, { 29, 1, 'VALID', '<', NIL }, { 30, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'HORIZONTAL', 'VERTICAL', 'RANGE', 'PAGESTEP', 'UP', 'ON UP', 'DOWN', 'ON DOWN', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'COLOR', 'COLORS', 'OF', 'WINDOW', 'DIALOG', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 2, 1, NIL, ':', { 'HORIZONTAL' } }, { 1003, 1, NIL, ':', { 'VERTICAL' } }, { 4, 1, 'RANGE', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'PAGESTEP', '<', NIL }, { 1007, 1, NIL, ':', { 'UP', 'ON UP' } }, { 1008, -1, NIL, '<', NIL }, { 1009, 1, NIL, ':', { 'DOWN', 'ON DOWN' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1012, -1, NIL, '<', NIL }, { 1013, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1014, -1, NIL, '<', NIL }, { 1015, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1016, -1, NIL, '<', NIL }, { 17, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 18, -1, NIL, '<', NIL }, { 19, 2, ',', '<', NIL }, { 20, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 21, -1, NIL, '<', NIL }, { 22, 1, 'MESSAGE', '<', NIL }, { 23, 1, NIL, ':', { 'UPDATE' } }, { 24, 1, 'WHEN', '<', NIL }, { 25, 1, 'VALID', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'SCROLLBAR', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'RANGE', 'PAGESTEP', 'UP', 'ON UP', 'ON LEFT', 'DOWN', 'ON DOWN', 'ON RIGHT', 'PAGEUP', 'ON PAGEUP', 'PAGEDOWN', 'ON PAGEDOWN', 'ON THUMBPOS', 'COLOR', 'COLORS', 'OF', 'MESSAGE', 'UPDATE', 'WHEN', 'VALID' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'RANGE', '<', NIL }, { 4, -1, ',', '<', NIL }, { 5, 1, 'PAGESTEP', '<', NIL }, { 1006, 1, NIL, ':', { 'UP', 'ON UP', 'ON LEFT' } }, { 1007, -1, NIL, '<', NIL }, { 1008, 1, NIL, ':', { 'DOWN', 'ON DOWN', 'ON RIGHT' } }, { 1009, -1, NIL, '<', NIL }, { 1010, 1, NIL, ':', { 'PAGEUP', 'ON PAGEUP' } }, { 1011, -1, NIL, '<', NIL }, { 1012, 1, NIL, ':', { 'PAGEDOWN', 'ON PAGEDOWN' } }, { 1013, -1, NIL, '<', NIL }, { 1014, 1, NIL, ':', { 'ON THUMBPOS' } }, { 1015, -1, NIL, '<', NIL }, { 16, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 17, -1, NIL, '<', NIL }, { 18, 2, ',', '<', NIL }, { 19, 1, 'OF', '<', NIL }, { 20, 1, 'MESSAGE', '<', NIL }, { 21, 1, NIL, ':', { 'UPDATE' } }, { 22, 1, 'WHEN', '<', NIL }, { 23, 1, 'VALID', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 1003, 1, 'GROUP', '<', NIL }, { 4, 0, 'TO', '<', NIL }, { 5, 0, ',', '<', NIL }, { 6, 1, NIL, ':', { 'LABEL', 'PROMPT' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'OF', '<', NIL }, { 9, 1, 'COLOR', '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, NIL, ':', { 'PIXEL' } }, { 1012, 1, NIL, ':', { 'DESIGN' } }, { 1013, 1, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'GROUP', NIL, NIL }, { 1001, 1, NIL, '<', { 'LABEL', 'PROMPT', 'ID', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'FONT' } }, { 2, 1, NIL, ':', { 'LABEL', 'PROMPT' } }, { 3, -1, NIL, '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, 'COLOR', '<', NIL }, { 8, 2, ',', '<', NIL }, { 1009, 1, 'FONT', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'METER', NIL, NIL }, { 1003, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 4, 0, NIL, '<', NIL }, { 5, 1, 'TOTAL', '<', NIL }, { 6, 1, 'SIZE', '<', NIL }, { 7, -1, ',', '<', NIL }, { 8, 1, 'OF', '<', NIL }, { 9, 1, NIL, ':', { 'UPDATE' } }, { 10, 1, NIL, ':', { 'PIXEL' } }, { 11, 1, 'FONT', '<', NIL }, { 12, 1, 'PROMPT', '<', NIL }, { 13, 1, NIL, ':', { 'NOPERCENTAGE' } }, { 14, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 15, -1, NIL, '<', NIL }, { 16, -1, ',', '<', NIL }, { 17, 1, 'BARCOLOR', '<', NIL }, { 18, -1, ',', '<', NIL }, { 19, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'METER', NIL, NIL }, { 1001, 1, NIL, '<', NIL }, { 0, -1, 'VAR', NIL, NIL }, { 2, 0, NIL, '<', NIL }, { 3, 1, 'TOTAL', '<', NIL }, { 4, 1, 'ID', '<', NIL }, { 5, 1, 'OF', '<', NIL }, { 6, 1, NIL, ':', { 'UPDATE' } }, { 7, 1, 'FONT', '<', NIL }, { 8, 1, 'PROMPT', '<', NIL }, { 9, 1, NIL, ':', { 'NOPERCENTAGE' } }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, -1, ',', '<', NIL }, { 13, 1, 'BARCOLOR', '<', NIL }, { 14, -1, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'METAFILE', NIL, NIL }, { 1003, 1, NIL, '<', { 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'SIZE', 'COLOR', 'COLORS' } }, { 4, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 7, -1, NIL, '<', NIL }, { 8, 1, 'SIZE', '<', NIL }, { 9, -1, ',', '<', NIL }, { 10, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 11, -1, NIL, '<', NIL }, { 12, 2, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'METAFILE', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'FILE', 'FILENAME', 'DISK', 'OF', 'WINDOW', 'DIALOG', 'COLOR', 'COLORS' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 4, -1, NIL, '<', NIL }, { 5, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 6, -1, NIL, '<', NIL }, { 7, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 8, -1, NIL, '<', NIL }, { 9, 2, ',', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'CURSOR', '<', NIL }, { 2, 1, NIL, ':', { 'RESOURCE', 'RESNAME', 'NAME' } }, { 3, -1, NIL, '<', NIL }, { 1004, 1, NIL, ':', { 'ARROW', 'ICON', 'SIZENS', 'SIZEWE', 'SIZENWSE', 'SIZENESW', 'IBEAM', 'CROSS', 'SIZE', 'UPARROW', 'WAIT', 'HAND' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'WINDOW', NIL, NIL }, { 1001, 1, NIL, '<', { 'MDICHILD', 'FROM', 'TITLE', 'BRUSH', 'CURSOR', 'MENU', 'MENUINFO', 'ICON', 'OF', 'VSCROLL', 'VERTICAL SCROLL', 'HSCROLL', 'HORIZONTAL SCROLL', 'COLOR', 'COLORS', 'PIXEL', 'STYLE', 'HELPID', 'HELP ID', 'BORDER', 'NOSYSMENU', 'NO SYSMENU', 'NOCAPTION', 'NO CAPTION', 'NO TITLE', 'NOICONIZE', 'NOMINIMIZE', 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } }, { 0, 1, 'MDICHILD', NIL, NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 7, 1, 'BRUSH', '<', NIL }, { 8, 1, 'CURSOR', '<', NIL }, { 9, 1, 'MENU', '<', NIL }, { 1010, 1, 'MENUINFO', '<', NIL }, { 11, 1, 'ICON', '<', NIL }, { 12, 1, 'OF', '<', NIL }, { 13, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 14, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } }, { 15, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 16, -1, NIL, '<', NIL }, { 17, 2, ',', '<', NIL }, { 18, 1, NIL, ':', { 'PIXEL' } }, { 19, 1, 'STYLE', '<', NIL }, { 20, 1, NIL, ':', { 'HELPID', 'HELP ID' } }, { 21, -1, NIL, '<', NIL }, { 1022, 1, 'BORDER', ':', { 'NONE', 'SINGLE' } }, { 23, 1, NIL, ':', { 'NOSYSMENU', 'NO SYSMENU' } }, { 24, 1, NIL, ':', { 'NOCAPTION', 'NO CAPTION', 'NO TITLE' } }, { 25, 1, NIL, ':', { 'NOICONIZE', 'NOMINIMIZE' } }, { 26, 1, NIL, ':', { 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 1, 'TITLE', '<', NIL }, { 7, 1, 'STYLE', '<', NIL }, { 8, 1, 'MENU', '<', NIL }, { 9, 1, 'BRUSH', '<', NIL }, { 10, 1, 'ICON', '<', NIL }, { 0, 1, 'MDI', NIL, NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 1014, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 1015, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } }, { 16, 1, 'MENUINFO', '<', NIL }, { 1000, 2, 'BORDER', NIL, NIL }, { 1017, -1, NIL, ':', { 'NONE', 'SINGLE' } }, { 18, 1, 'OF', '<', NIL }, { 1019, 1, NIL, ':', { 'PIXEL' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'WINDOW', '<', NIL }, { 2, 1, 'FROM', '<', NIL }, { 3, -1, ',', '<', NIL }, { 4, -1, 'TO', '<', NIL }, { 5, -1, ',', '<', NIL }, { 6, 2, NIL, ':', { 'PIXEL' } }, { 7, 1, 'TITLE', '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 11, 1, 'OF', '<', NIL }, { 12, 1, 'BRUSH', '<', NIL }, { 13, 1, 'CURSOR', '<', NIL }, { 14, 1, 'ICON', '<', NIL }, { 15, 1, 'MENU', '<', NIL }, { 16, 1, 'STYLE', '<', NIL }, { 1017, 1, 'BORDER', ':', { 'NONE', 'SINGLE' } }, { 18, 1, NIL, ':', { 'NOSYSMENU', 'NO SYSMENU' } }, { 19, 1, NIL, ':', { 'NOCAPTION', 'NO CAPTION', 'NO TITLE' } }, { 20, 1, NIL, ':', { 'NOICONIZE', 'NOMINIMIZE' } }, { 21, 1, NIL, ':', { 'NOZOOM', 'NO ZOOM', 'NOMAXIMIZE', 'NO MAXIMIZE' } }, { 1022, 1, NIL, ':', { 'VSCROLL', 'VERTICAL SCROLL' } }, { 1023, 1, NIL, ':', { 'HSCROLL', 'HORIZONTAL SCROLL' } } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'WINDOW', '<', NIL }, { 1002, 1, NIL, ':', { 'ICONIZED', 'NORMAL', 'MAXIMIZED' } }, { 0, 1, 'ON', NIL, NIL }, { 1000, 2, 'LEFT', NIL, NIL }, { 1003, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1004, -1, 'LBUTTONUP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1000, -1, 'RIGHT', NIL, NIL }, { 1005, -1, 'CLICK', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1006, -1, 'MOVE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1007, -1, 'RESIZE', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1008, -1, 'PAINT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1009, -1, 'KEYDOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1010, -1, 'INIT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1011, -1, 'UP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1012, -1, 'DOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1013, -1, 'PAGEUP', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1014, -1, 'PAGEDOWN', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1015, -1, 'LEFT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1016, -1, 'RIGHT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1017, -1, 'PAGELEFT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1018, -1, 'PAGERIGHT', '<', NIL }, { 1000, 1, 'ON', NIL, NIL }, { 1019, -1, 'DROPFILES', '<', NIL }, { 1020, 1, 'VALID', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SET' , { { 0, 0, 'MESSAGE', NIL, NIL }, { 1, 1, 'OF', '<', NIL }, { 2, 1, 'TO', '<', NIL }, { 3, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 4, 1, NIL, ':', { 'CLOCK', 'TIME' } }, { 5, 1, NIL, ':', { 'DATE' } }, { 6, 1, NIL, ':', { 'KEYBOARD' } }, { 7, 1, 'FONT', '<', NIL }, { 8, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 9, -1, NIL, '<', NIL }, { 10, 2, ',', '<', NIL }, { 1011, 1, NIL, ':', { 'NO INSET', 'NOINSET' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, NIL, ':', { 'MESSAGE', 'MESSAGE BAR', 'MSGBAR' } }, { 1002, 1, NIL, '<', { 'OF', 'PROMPT', 'TITLE', 'CENTER', 'CENTERED', 'CLOCK', 'TIME', 'DATE', 'KEYBOARD', 'FONT', 'COLOR', 'COLORS', 'NO INSET', 'NOINSET' } }, { 3, 1, 'OF', '<', NIL }, { 4, 1, NIL, ':', { 'PROMPT', 'TITLE' } }, { 5, -1, NIL, '<', NIL }, { 6, 1, NIL, ':', { 'CENTER', 'CENTERED' } }, { 7, 1, NIL, ':', { 'CLOCK', 'TIME' } }, { 8, 1, NIL, ':', { 'DATE' } }, { 9, 1, NIL, ':', { 'KEYBOARD' } }, { 10, 1, 'FONT', '<', NIL }, { 11, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 12, -1, NIL, '<', NIL }, { 13, 2, ',', '<', NIL }, { 1014, 1, NIL, ':', { 'NO INSET', 'NOINSET' } } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'MSGITEM', NIL, NIL }, { 1001, 1, NIL, '<', { 'OF', 'PROMPT', 'SIZE', 'FONT', 'COLOR', 'COLORS', 'BITMAP', 'BITMAPS', 'ACTION', 'TOOLTIP' } }, { 2, 1, 'OF', '<', NIL }, { 3, 1, 'PROMPT', '<', NIL }, { 4, 1, 'SIZE', '<', NIL }, { 5, 1, 'FONT', '<', NIL }, { 6, 1, NIL, ':', { 'COLOR', 'COLORS' } }, { 7, -1, NIL, '<', NIL }, { 8, 2, ',', '<', NIL }, { 1009, 1, NIL, ':', { 'BITMAP', 'BITMAPS' } }, { 1010, -1, NIL, '<', NIL }, { 1011, 2, ',', '<', NIL }, { 1012, 1, 'ACTION', '<', NIL }, { 1013, 1, 'TOOLTIP', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 1, 0, 'CLIPBOARD', '<', NIL }, { 1002, 1, 'FORMAT', ':', { 'TEXT', 'OEMTEXT', 'BITMAP', 'DIF' } }, { 3, 1, 'OF', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'CLIPBOARD', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'DEFINE' , { { 0, 0, 'TIMER', NIL, NIL }, { 1001, 1, NIL, '<', { 'INTERVAL', 'ACTION', 'OF', 'WINDOW', 'DIALOG' } }, { 2, 1, 'INTERVAL', '<', NIL }, { 1003, 1, 'ACTION', 'A', NIL }, { 4, 1, NIL, ':', { 'OF', 'WINDOW', 'DIALOG' } }, { 5, -1, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ACTIVATE' , { { 1, 0, 'TIMER', '<', NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 0, 0, 'VBX', NIL, NIL }, { 1003, 1, NIL, '<', { 'OF', 'SIZE', 'FILE', 'FILENAME', 'DISK', 'CLASS', 'ON', 'WHEN', 'VALID', 'PIXEL', 'DESIGN' } }, { 4, 1, 'OF', '<', NIL }, { 5, 1, 'SIZE', '<', NIL }, { 6, -1, ',', '<', NIL }, { 7, 1, NIL, ':', { 'FILE', 'FILENAME', 'DISK' } }, { 8, -1, NIL, '<', NIL }, { 9, 1, 'CLASS', '<', NIL }, { 1010, 1, 'ON', '<', NIL }, { 1011, -1, NIL, '<', NIL }, { 1012, 2, 'ON', '<', NIL }, { 1013, -2, NIL, '<', NIL }, { 1014, 1, 'WHEN', '<', NIL }, { 1015, 1, 'VALID', '<', NIL }, { 16, 1, NIL, ':', { 'PIXEL' } }, { 17, 1, NIL, ':', { 'DESIGN' } } } , .T. } ) - aAdd( aCommRules, { 'REDEFINE' , { { 0, 0, 'VBX', NIL, NIL }, { 1001, 1, NIL, '<', { 'ID', 'OF', 'COLOR', 'ON' } }, { 2, 1, 'ID', '<', NIL }, { 3, 1, 'OF', '<', NIL }, { 4, 1, 'COLOR', '<', NIL }, { 5, 2, ',', '<', NIL }, { 1006, 1, 'ON', '<', NIL }, { 1007, -1, NIL, '<', NIL }, { 1008, 2, 'ON', '<', NIL }, { 1009, -2, NIL, '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'OBJECT' , { { 1, 0, NIL, '<', NIL }, { 2, 0, 'AS', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'ENDOBJECT' , , .T. } ) - aAdd( aCommRules, { 'CLS' , , .T. } ) - aAdd( aCommRules, { 'CLEAR' , { { 0, 0, 'SCREEN', NIL, NIL } } , .T. } ) - aAdd( aCommRules, { '?' , { { 1001, 1, NIL, 'A', NIL } } , .F. } ) - aAdd( aCommRules, { '??' , { { 1001, 1, NIL, 'A', NIL } } , .F. } ) - aAdd( aCommRules, { 'READ' , , .T. } ) - aAdd( aCommRules, { 'SAVE' , { { 0, 0, 'SCREEN', NIL, NIL }, { 1, 1, 'TO', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'RESTORE' , { { 0, 0, 'SCREEN', NIL, NIL }, { 1, 1, 'FROM', '<', NIL } } , .T. } ) - aAdd( aCommRules, { 'SAVESCREEN' , { { 1, 0, '(', '*', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aCommRules, { 'RESTSCREEN' , { { 1, 0, '(', '*', NIL }, { 0, 0, ')', NIL, NIL } } , .T. } ) - aAdd( aCommRules, { '@' , { { 1, 0, NIL, '<', NIL }, { 2, 0, ',', '<', NIL }, { 3, 0, 'PROMPT', '*', NIL } } , .T. } ) - aAdd( aCommRules, { 'MENU' , { { 1, 0, 'TO', '<', NIL } } , .T. } ) - -RETURN .T. - //--------------------------------------------------------------// -STATIC FUNCTION InitFWResults() - /* Defines Results*/ - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '"(c) FiveTech, 1993-2001"' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '"FWH Pre-release - April 2001"' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '"FiveWin for Harbour"' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WBrowse' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '10' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '13' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '14' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8388608' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '32768' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8421376' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8388736' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '32896' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '12632256' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'CLR_HGRAY' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8421504' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16711680' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '65280' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16776960' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '255' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16711935' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '65535' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16777215' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '10' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '992' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '12' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '13' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '17' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '18' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '19' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '20' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '27' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '32' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '33' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '34' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '35' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '36' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '37' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '38' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '39' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '40' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '41' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '42' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '43' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '44' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '45' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '46' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '47' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '96' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '97' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '98' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '99' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '100' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '101' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '102' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '103' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '104' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '105' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '106' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '107' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '108' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '109' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '110' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '111' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '112' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '113' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '114' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '115' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '116' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '117' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '118' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '119' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '120' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '121' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '122' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '123' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '124' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '125' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '126' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '127' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '129' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '130' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '131' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '132' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '133' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '134' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '135' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '144' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '145' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1024' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1025' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1026' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1027' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1028' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1029' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1030' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1031' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1032' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1033' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1034' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1035' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1036' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1037' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1038' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1039' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1040' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1041' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1042' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, 'WM_USER+1043' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16384' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '32' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '64' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8192' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2147483648' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1073741824' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '67108864' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '33554432' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '268435456' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '134217728' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '536870912' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16777216' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '12582912' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8388608' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4194304' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2097152' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1048576' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '524288' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '262144' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '131072' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '65536' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '131072' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '65536' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2048' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '15' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '17' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '18' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '21' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '22' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '23' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '26' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '27' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '29' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '30' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '42' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '65' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '135' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '258' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '273' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '512' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '513' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '514' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '516' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '517' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '257' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '272' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '275' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '276' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '277' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '783' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '784' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '785' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1024' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4096' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '10485763' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '16' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '64' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '128' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '256' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2048' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '8' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '7' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '1' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '2' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '3' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '5' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '4' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '6' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '9' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '0' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '11' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '240' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '15000' } }, { -1} , } ) - aAdd( aDefResults, { , , } ) - aAdd( aDefResults, { { { 0, 'Chr(13)+Chr(10)' } }, { -1} , } ) - aAdd( aDefResults, { { { 0, '{' }, { 0, '|' }, { 0, 'u' }, { 0, '|' }, { 0, 'If' }, { 0, '(' }, { 0, 'PCount' }, { 0, '(' }, { 0, ')' }, { 0, '==' }, { 0, '0' }, { 0, ',' }, { 0, 1 }, { 0, ',' }, { 0, 1 }, { 0, ':=' }, { 0, 'u' }, { 0, ')' }, { 0, '}' } }, { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 1, -1, -1, -1, -1} , { NIL } } ) - - /* Translates Results*/ - aAdd( aTransResults, { { { 0, '( ' }, { 0, 1 }, { 0, ' + ( ' }, { 0, 2 }, { 0, ' * 256 ) + ( ' }, { 0, 3 }, { 0, ' * 65536 ) )' } }, { -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aTransResults, { { { 0, 1 } }, { 1} , { NIL } } ) - aAdd( aTransResults, { { { 0, 'DLL' } }, { -1} , } ) - aAdd( aTransResults, { { { 0, '{ |bp1,bp2,bp3,bp4,bp5,bp6,bp7,bp8,bp9,bp10| ' }, { 0, 1 }, { 0, ' }' } }, { -1, 1, -1} , { NIL } } ) - - /* Commands Results*/ - aAdd( aCommResults, { , , { NIL, NIL } } ) - aAdd( aCommResults, { { { 2, 'SetResources( ' }, { 2, 2 }, { 2, ' ); ' }, { 0, ' SetResources( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1, -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'FreeResources()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'SetHelpFile( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 'HelpSetTopic( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := LoadValue( ' }, { 0, 4 }, { 0, ', ' }, { 2, 'Upper(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 1 }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' = TDialog():New( ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate( ' }, { 0, 1 }, { 0, ':bLClicked ' }, { 6, ':= {|nRow,nCol,nFlags|' }, { 6, 6 }, { 6, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bMoved ' }, { 8, ':= ' }, { 8, 8 }, { 0, ', ' }, { 0, 1 }, { 0, ':bPainted ' }, { 9, ':= {|hDC,cPS|' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 5, '{|Self|' }, { 5, 5 }, { 5, '}' }, { 0, ', ' }, { 3, '! ' }, { 3, 3 }, { 0, ', ' }, { 7, '{|Self|' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bRClicked ' }, { 10, ':= {|nRow,nCol,nFlags|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 4, '{|Self|' }, { 4, 4 }, { 4, '}' }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, -1, 1, -1, -1, 6, -1, -1, 1, -1, -1, -1, 6, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TFont():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 5, 5 }, { 0, ', ' }, { 6, 6 }, { 0, ',' }, { 11, 11 }, { 0, ',,' }, { 9, 9 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 8, 8 }, { 0, ',,,,,, ' }, { 10, 10 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':DeActivate()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetFont( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TIni():New( ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := ' }, { 0, 6 }, { 0, ':Get( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 1 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 5 }, { 0, ':Set( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { , , } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' MenuBegin( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, -1, 6, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' MenuAddItem( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 5, 'Upper(' }, { 5, 5 }, { 5, ') == "ENABLED" ' }, { 0, ', ' }, { 10, '{|oMenuItem|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMru():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 8, '{|cMruItem,oMenuItem|' }, { 8, 8 }, { 8, '}' }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' MenuAddItem()' } }, { 1, -1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 'MenuEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMenu():ReDefine( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ' )' } }, { 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMenuItem():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 10, 'Upper(' }, { 10, 10 }, { 10, ') == "ENABLED" ' }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 1 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMenu():New( .f., ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetMenu( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 2 }, { 0, ':Activate( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' :=' }, { 0, ' MenuBegin( .f., .t., ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'MenuEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' PrintBegin( ' }, { 3, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' PrintBegin( ' }, { 3, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'PageBegin()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'PageEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'PrintEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'PrintEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 1, 1 }, { 0, ' function ' }, { 0, 2 }, { 0, '( ' }, { 3, 'NOREF(' }, { 3, 3 }, { 3, ')' }, { 5, ' ,NOREF(' }, { 5, 5 }, { 5, ')' }, { 0, ' ) ; local hDLL := If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N", ' }, { 0, 10 }, { 0, ', LoadLibrary( ' }, { 0, 10 }, { 0, ' ) ) ; local uResult ; local cFarProc ; if Abs( hDLL ) > 32 ; cFarProc = GetProcAddress( hDLL, If( ' }, { 9, ' Empty( ' }, { 9, 9 }, { 9, ' ) == ' }, { 0, ' .t., ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ' ), ' }, { 8, 8 }, { 0, ', ' }, { 0, 7 }, { 4, ' ,' }, { 4, 4 }, { 6, ' ,' }, { 6, 6 }, { 0, ' ) ; uResult = CallDLL( cFarProc ' }, { 3, ' ,' }, { 3, 3 }, { 5, ' ,' }, { 5, 5 }, { 0, ' ) ; If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N",, FreeLibrary( hDLL ) ) ; else ; MsgAlert( "Error code: " + LTrim( Str( hDLL ) ) + " loading " + ' }, { 0, 10 }, { 0, ' ) ; end ; return uResult' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 4, -1, -1, 1, -1, -1, 4, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 0, ' function ' }, { 0, 2 }, { 0, '( ' }, { 3, 'NOREF(' }, { 3, 3 }, { 3, ')' }, { 5, ' ,NOREF(' }, { 5, 5 }, { 5, ')' }, { 0, ' ) ; local hDLL := If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N", ' }, { 0, 10 }, { 0, ', LoadLib32( ' }, { 0, 10 }, { 0, ' ) ) ; local uResult ; local cFarProc ; if Abs( hDLL ) <= 32 ; MsgAlert( "Error code: " + LTrim( Str( hDLL ) ) + " loading " + ' }, { 0, 10 }, { 0, ' ) ; else ; cFarProc = GetProc32( hDLL, If( ' }, { 9, ' Empty( ' }, { 9, 9 }, { 9, ' ) == ' }, { 0, ' .t., ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ' ), ' }, { 8, 8 }, { 0, ', ' }, { 0, 7 }, { 4, ' ,' }, { 4, 4 }, { 6, ' ,' }, { 6, 6 }, { 0, ' ) ; uResult = CallDLL32( cFarProc ' }, { 3, ' ,' }, { 3, 3 }, { 5, ' ,' }, { 5, 5 }, { 0, ' ) ; If( ValType( ' }, { 0, 10 }, { 0, ' ) == "N",, FreeLib32( hDLL ) ) ; end ; return uResult' } }, { 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 1, -1, -1, 4, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TFolder():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', {' }, { 0, 9 }, { 10, ' ,' }, { 10, 10 }, { 0, '}, ' }, { 0, 5 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TFolder():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 6, '{' }, { 6, 6 }, { 6, '}' }, { 0, ', { ' }, { 0, 8 }, { 9, ' ,' }, { 9, 9 }, { 0, ' }, ' }, { 0, 4 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{|nOption,nOldOption| ' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TTabs():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 9, '{|nOption|' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TTabs():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 6, '{' }, { 6, 6 }, { 6, '}' }, { 0, ', ' }, { 8, '{|nOption|' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TPages():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 4, '{' }, { 4, 4 }, { 4, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 'bSETGET(' }, { 6, 6 }, { 6, ') ' }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TOdbc():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Execute( ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 2 }, { 0, ' := TDde():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 6 }, { 0, ', ' }, { 7, 7 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 2 }, { 0, ':Activate()' } }, { 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 0, ' := TMci():New( "avivideo", ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':lOpen() ; ' }, { 0, 1 }, { 0, ':Play()' } }, { 1, -1, 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':lOpen() ; ' }, { 0, 1 }, { 0, ':Play()' } }, { 1, -1, 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TVideo():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TVideo():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' TreeBegin( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' :=' }, { 0, ' _TreeItem( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'TreeEnd()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'SetMultiple( Upper(' }, { 0, 1 }, { 0, ') == "ON" )' } }, { -1, 4, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := If( ' }, { 0, 1 }, { 0, ' == nil, ' }, { 0, 2 }, { 0, ', ' }, { 0, 1 }, { 0, ' ) ; ' }, { 3, 3 }, { 3, ' := If( ' }, { 3, 3 }, { 3, ' == nil, ' }, { 3, 4 }, { 3, ', ' }, { 3, 3 }, { 3, ' ); ' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'while .t.' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'if ' }, { 0, 1 }, { 0, '; exit; end; end' } }, { -1, 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 'SetIdleAction( ' }, { 0, 1 }, { 0, ' )' } }, { -1, 5, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TDataBase():New()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 2 }, { 0, ':End() ; ' }, { 0, 2 }, { 0, ' := nil ' }, { 3, ' ; ' }, { 3, 3 }, { 3, ':End() ; ' }, { 3, 3 }, { 3, ' := nil ' } }, { 1, -1, 1, -1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBrush():New( ' }, { 2, ' Upper(' }, { 2, 2 }, { 2, ') ' }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, -1, 4, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':SetBrush( ' }, { 0, 2 }, { 0, ' )' } }, { 1, -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TPen():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBar():New( ' }, { 0, 8 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 6, 'Upper(' }, { 6, 6 }, { 6, ') ' }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBar():NewAt( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 9, 'Upper(' }, { 9, 9 }, { 9, ') ' }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBtnBmp():NewBar( ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 13, '{|This|' }, { 13, 13 }, { 13, '}' }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 20, '{||' }, { 20, 20 }, { 20, '}' }, { 0, ', ' }, { 13, "'" }, { 13, 13 }, { 13, "'" }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 24, '!' }, { 24, 24 }, { 0, ', ' }, { 25, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 1, -1, 6, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBtnBmp():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 14, '{|Self|' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 22, '!' }, { 22, 22 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBtnBmp():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 14, '{|Self|' }, { 14, 14 }, { 14, '}' }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 11, 11 }, { 0, ', !' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TIcon():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, 6, -1, 5, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TIcon():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 6, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TIcon():New( ,, ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TButton():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TButton():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 5, '{||' }, { 5, 5 }, { 5, '}' }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TCheckBox():ReDefine( ' }, { 0, 3 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 9, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TCheckBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 4, 'bSETGET(' }, { 4, 4 }, { 4, ')' }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 6, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TComboBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 13, '{|Self|' }, { 13, 13 }, { 13, '}' }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 25, '{|nItem|' }, { 25, 25 }, { 25, '}' }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 28, 28 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TComboBox():ReDefine( ' }, { 0, 5 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 4 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 10, '{|Self|' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, '{|nItem|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 22, 22 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TListBox():ReDefine( ' }, { 0, 7 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 4 }, { 0, ', ' }, { 8, '{||' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 22, '{|nItem|' }, { 22, 22 }, { 22, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 6, -1, 5, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TListBox():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 24, '{|nItem|' }, { 24, 24 }, { 24, '}' }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 5, -1, 1, -1, 1, -1, 6, -1, 6, -1, 5, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, -1, 1, -1, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TWBrowse():ReDefine( ' }, { 0, 4 }, { 0, ', ' }, { 2, '{|| { ' }, { 2, 2 }, { 2, ' } }' }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 10, '{' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 8, '{' }, { 8, 8 }, { 8, '}' }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, '{|nRow,nCol,nFlags|' }, { 16, 16 }, { 16, '}' }, { 0, ', ' }, { 17, '{|nRow,nCol,nFlags|' }, { 17, 17 }, { 17, '}' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 15, '{|nRow,nCol,nFlags|' }, { 15, 15 }, { 15, '}' }, { 0, ', ' }, { 27, '{' }, { 27, 27 }, { 27, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 4, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 5, -1, 5, -1, -1, 1, -1, -1, -1, 5, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TWBrowse():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 4, '{|| {' }, { 4, 4 }, { 4, ' } }' }, { 0, ', ' }, { 9, '{' }, { 9, 9 }, { 9, '}' }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 17, 17 }, { 0, ', ' }, { 19, '{|nRow,nCol,nFlags|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 20, '{|nRow,nCol,nFlags|' }, { 20, 20 }, { 20, '}' }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ', ' }, { 0, 31 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 32, '{' }, { 32, 32 }, { 32, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 4, -1, 1, -1, 1, -1, 5, -1, -1, 1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 5, -1, -1, 5, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TRadMenu():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', {' }, { 0, 6 }, { 0, '}, ' }, { 4, 'bSETGET(' }, { 4, 4 }, { 4, ')' }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 10, '{' }, { 10, 10 }, { 10, '}' }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 1, -1, 1, -1, 5, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TRadMenu():Redefine( ' }, { 2, ' bSETGET(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 7, '{' }, { 7, 7 }, { 7, '}' }, { 0, ', { ' }, { 0, 3 }, { 0, ' }, ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ' )' } }, { 1, -1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TBitmap():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{ |nRow,nCol,nKeyFlags| ' }, { 14, 14 }, { 14, ' } ' }, { 0, ', ' }, { 16, '{ |nRow,nCol,nKeyFlags| ' }, { 16, 16 }, { 16, ' } ' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TImage():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 14, '{ |nRow,nCol,nKeyFlags| ' }, { 14, 14 }, { 14, ' } ' }, { 0, ', ' }, { 16, '{ |nRow,nCol,nKeyFlags| ' }, { 16, 16 }, { 16, ' } ' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBitmap():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 10, '{ |nRow,nCol,nKeyFlags| ' }, { 10, 10 }, { 10, ' }' }, { 0, ', ' }, { 12, '{ |nRow,nCol,nKeyFlags| ' }, { 12, 12 }, { 12, ' }' }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, -1, 1, -1, -1, -1, 1, -1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TBitmap():Define( ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TSay():ReDefine( ' }, { 0, 5 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TSay():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 6, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMultiGet():ReDefine( ' }, { 0, 4 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, '{|nKey, nFlags, Self| ' }, { 19, 19 }, { 19, '}' }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 6, -1, 5, -1, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TGet():ReDefine( ' }, { 0, 3 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 18, '{|nKey,nFlags,Self| ' }, { 18, 18 }, { 18, ' }' }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ')' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, -1, 1, -1, -1, 6, -1, 6, -1, 5, -1, 5, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMultiGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 24, '{|nKey, nFlags, Self| ' }, { 24, 24 }, { 24, '}' }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 26, 26 }, { 0, ', ' }, { 27, 27 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, 6, -1, 5, -1, -1, 1, -1, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 23, '{|nKey, nFlags, Self| ' }, { 23, 23 }, { 23, '}' }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 26, 26 }, { 0, ', ' }, { 0, 28 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, -1, 1, -1, -1, 6, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGet():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 6, 6 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 23, '{|nKey, nFlags, Self| ' }, { 23, 23 }, { 23, '}' }, { 0, ', ' }, { 0, 24 }, { 0, ', .f., .f., ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ', ' }, { 0, 31 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 6, -1, 6, -1, -1, 1, -1, -1, 6, -1, 1, -1, 6, -1, 5, -1, 5, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TScrollBar():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', (.not.' }, { 0, 4 }, { 0, ') ' }, { 5, '.or. ' }, { 5, 5 }, { 0, ', ' }, { 0, 25 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ' , ' }, { 12, 12 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, 16 }, { 0, ', ' }, { 18, 18 }, { 0, ', ' }, { 20, '{|nPos| ' }, { 20, 20 }, { 20, ' }' }, { 0, ', ' }, { 21, 21 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 26 }, { 0, ', ' }, { 0, 27 }, { 0, ', ' }, { 0, 28 }, { 0, ', ' }, { 0, 29 }, { 0, ', ' }, { 0, 30 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TScrollBar():WinNew( ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', (.not.' }, { 0, 2 }, { 0, ') ' }, { 3, '.or. ' }, { 3, 3 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 8, 8 }, { 0, ', ' }, { 10, 10 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 16, '{|nPos| ' }, { 16, 16 }, { 16, ' }' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ', ' }, { 0, 24 }, { 0, ', ' }, { 0, 25 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, -1, 6, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TScrollBar():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 7, 7 }, { 0, ', ' }, { 9, 9 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 13, 13 }, { 0, ', ' }, { 15, '{|nPos| ' }, { 15, 15 }, { 15, ' }' }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 20 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 0, 22 }, { 0, ', ' }, { 0, 23 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 5, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TGroup():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 13, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TGroup():ReDefine( ' }, { 0, 4 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 9, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMeter():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', bSETGET(' }, { 0, 4 }, { 0, '), ' }, { 0, 5 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 19 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMeter():ReDefine( ' }, { 0, 4 }, { 0, ', bSETGET(' }, { 0, 2 }, { 0, '), ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 14 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TMetaFile():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 12 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMetaFile():Redefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TCursor():New( ' }, { 0, 3 }, { 0, ', ' }, { 4, 'Upper(' }, { 4, 4 }, { 4, ') ' }, { 0, ' )' } }, { 1, -1, 1, -1, -1, 4, -1, -1} , { NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TMdiChild():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 19 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 21 }, { 0, ', ' }, { 22, 'Upper(' }, { 22, 22 }, { 22, ')' }, { 0, ', !' }, { 0, 23 }, { 0, ', !' }, { 0, 24 }, { 0, ', !' }, { 0, 25 }, { 0, ', !' }, { 0, 26 }, { 0, ', ' }, { 10, 10 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, -1, 4, -1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TMdiFrame():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 17, 'Upper(' }, { 17, 17 }, { 17, ')' }, { 0, ', ' }, { 0, 18 }, { 0, ', ' }, { 19, 19 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, -1, 4, -1, -1, 1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TWindow():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 15 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 14 }, { 0, ', ' }, { 0, 11 }, { 0, ', ' }, { 22, 22 }, { 0, ', ' }, { 23, 23 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 17, 'Upper(' }, { 17, 17 }, { 17, ')' }, { 0, ', !' }, { 0, 18 }, { 0, ', !' }, { 0, 19 }, { 0, ', !' }, { 0, 20 }, { 0, ', !' }, { 0, 21 }, { 0, ', ' }, { 0, 6 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 4, -1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate( ' }, { 2, 'Upper(' }, { 2, 2 }, { 2, ') ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bLClicked ' }, { 3, ':= { |nRow,nCol,nKeyFlags| ' }, { 3, 3 }, { 3, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bRClicked ' }, { 5, ':= { |nRow,nCol,nKeyFlags| ' }, { 5, 5 }, { 5, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bMoved ' }, { 6, ':= ' }, { 6, 6 }, { 0, ', ' }, { 0, 1 }, { 0, ':bResized ' }, { 7, ':= ' }, { 7, 7 }, { 0, ', ' }, { 0, 1 }, { 0, ':bPainted ' }, { 8, ':= { | hDC, cPS | ' }, { 8, 8 }, { 8, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bKeyDown ' }, { 9, ':= { | nKey | ' }, { 9, 9 }, { 9, ' } ' }, { 0, ', ' }, { 0, 1 }, { 0, ':bInit ' }, { 10, ':= { | Self | ' }, { 10, 10 }, { 10, ' } ' }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 12, 12 }, { 0, ', ' }, { 13, 13 }, { 0, ', ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 16, 16 }, { 0, ', ' }, { 17, 17 }, { 0, ', ' }, { 18, 18 }, { 0, ', ' }, { 20, 20 }, { 0, ', ' }, { 19, '{|nRow,nCol,aFiles|' }, { 19, 19 }, { 19, '}' }, { 0, ', ' }, { 0, 1 }, { 0, ':bLButtonUp ' }, { 4, ':= ' }, { 4, 4 }, { 0, ' )' } }, { 1, -1, -1, 4, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 1, -1, -1, 5, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, 5, -1, -1, 1, -1, -1, 1, -1, -1, 5, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':oMsgBar := TMsgBar():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 11, '!' }, { 11, 11 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 2, 2 }, { 2, ':=' }, { 0, 3 }, { 0, ':oMsgBar := TMsgBar():New( ' }, { 0, 3 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', ' }, { 0, 12 }, { 0, ', ' }, { 0, 13 }, { 0, ', ' }, { 0, 10 }, { 0, ', ' }, { 14, '!' }, { 14, 14 }, { 0, ' )' } }, { 1, -1, 1, -1, 1, -1, 1, -1, 6, -1, 6, -1, 6, -1, 6, -1, 1, -1, 1, -1, 1, -1, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ':=' }, { 0, ' TMsgItem():New( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 7 }, { 0, ', ' }, { 0, 8 }, { 0, ', .t., ' }, { 12, 12 }, { 0, ', ' }, { 10, 10 }, { 0, ', ' }, { 11, 11 }, { 0, ', ' }, { 13, 13 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 5, -1, 1, -1, 1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ' := TClipBoard():New( ' }, { 2, ' Upper(' }, { 2, 2 }, { 2, ')' }, { 0, ', ' }, { 0, 3 }, { 0, ' )' } }, { 1, -1, -1, 4, -1, -1, 1, -1} , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Open()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TTimer():New( ' }, { 0, 2 }, { 0, ', ' }, { 3, '{||' }, { 3, 3 }, { 3, '}' }, { 0, ', ' }, { 0, 5 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, -1, 1, -1, -1, 1, -1} , { NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 1 }, { 0, ':Activate()' } }, { 1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 3, 3 }, { 3, ' := ' }, { 0, ' TVbControl():New( ' }, { 0, 1 }, { 0, ', ' }, { 0, 2 }, { 0, ', ' }, { 0, 5 }, { 0, ', ' }, { 0, 6 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 8 }, { 0, ', ' }, { 0, 9 }, { 0, ', { ' }, { 10, 10 }, { 10, ', _PARM_BLOCK_10_( ' }, { 10, 11 }, { 10, ' ) ' }, { 12, ' ,' }, { 12, 12 }, { 12, ', _PARM_BLOCK_10_( ' }, { 12, 13 }, { 12, ' ) ' }, { 0, ' }, ' }, { 14, 14 }, { 0, ', ' }, { 15, 15 }, { 0, ', ' }, { 0, 16 }, { 0, ', ' }, { 0, 17 }, { 0, ' )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 4, -1, 1, -1, -1, 5, -1, 5, -1, 6, -1, 6, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 1, 1 }, { 1, ' := ' }, { 0, ' TVbControl():ReDefine( ' }, { 0, 2 }, { 0, ', ' }, { 0, 3 }, { 0, ', ' }, { 0, 4 }, { 0, ', ' }, { 0, 5 }, { 0, ', { ' }, { 6, 6 }, { 6, ', _PARM_BLOCK_10_( ' }, { 6, 7 }, { 6, ' ) ' }, { 8, ' ,' }, { 8, 8 }, { 8, ', _PARM_BLOCK_10_( ' }, { 8, 9 }, { 8, ' ) ' }, { 0, ' } )' } }, { 1, -1, -1, 1, -1, 1, -1, 1, -1, 1, -1, 4, -1, 1, -1, -1, 4, -1, 1, -1, -1} , { NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'Self := SetObject( Self, { || ' }, { 0, 2 }, { 0, '():New() } )' } }, { -1, 1, -1} , { NIL, NIL } } ) - aAdd( aCommResults, { { { 0, 'Self := EndObject()' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'InvalidateRect( GetActiveWindow(), 0, .t. )' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'InvalidateRect( GetActiveWindow(), 0, .t. )' } }, { -1} , } ) - aAdd( aCommResults, { { { 0, 'WQout( ' }, { 1, '{ ' }, { 1, 1 }, { 1, ' } ' }, { 0, ' )' } }, { -1, -1, 1, -1, -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 'WQout( ' }, { 1, '{ ' }, { 1, 1 }, { 1, ' } ' }, { 0, ' )' } }, { -1, -1, 1, -1, -1} , { NIL } } ) - aAdd( aCommResults, { , , } ) - aAdd( aCommResults, { , , { NIL } } ) - aAdd( aCommResults, { , , { NIL } } ) - aAdd( aCommResults, { { { 0, 'MsgAlert( OemToAnsi( "SaveScreen() not available in FiveWin" ) )' } }, { -1} , { NIL } } ) - aAdd( aCommResults, { { { 0, 'MsgAlert( OemToAnsi( "RestScreen() not available in FiveWin" ) )' } }, { -1} , { NIL } } ) - aAdd( aCommResults, { , , { NIL, NIL, NIL } } ) - aAdd( aCommResults, { , , { NIL } } ) - -RETURN .T. - -//--------------------------------------------------------------// diff --git a/harbour/contrib/dot/rp_dot.ch b/harbour/contrib/dot/rp_dot.ch index 3f8afc58a0..daaa57be6e 100644 --- a/harbour/contrib/dot/rp_dot.ch +++ b/harbour/contrib/dot/rp_dot.ch @@ -1,15 +1,14 @@ #command CLS ; - => Scroll( 1, 0, MaxRow() - 1, MaxCol() ) ; - ; SetPos(1,0) + => Scroll( 2, 0, MaxRow() - 1, MaxCol() ) ; + ; SetPos( 2, 0 ) #COMMAND BROWSE => Browse( 1, 0, MaxRow() - 1, MaxCol() ) #COMMAND EXIT => __QUIT() -#ifdef __HARBOUR__ - #TRANSLATE _GET_( , , , , ) => __GET( , , , , , MEMVARBLOCK() ) -#else - #TRANSLATE _GET_( , , , , ) => __GET( MEMVARBLOCK(), , , , ) +#TRANSLATE _GET_( , , [], [], [] ) => __GET( MEMVARBLOCK(), , , , ) +#ifndef __HARBOUR__ #TRANSLATE __GET( ):Display() => __GET() + #TRANSLATE aAdd( GetList, __GET() ) => __oGet := __GET() ; aAdd( GetList, __oGet ) ; __oGet:Display() #endif #COMMAND IF => __SetIf( ) @@ -24,3 +23,5 @@ #COMMAND ENDCASE [<*x*>] => __SetEndCase() #COMMAND DO .prg => PP_Run( # + ".prg" ) + +#command CD <(dir)> => DirChange( <(dir)> ) diff --git a/harbour/contrib/dot/rp_run.ch b/harbour/contrib/dot/rp_run.ch index 355fe3c06d..cffe74c837 100644 --- a/harbour/contrib/dot/rp_run.ch +++ b/harbour/contrib/dot/rp_run.ch @@ -1,6 +1,29 @@ +/* + * xBaseScript Project source code: + * Pre-Processor / Dot prompt environment / Script Interpreter + * + * Copyright 2000-2001 Ron Pinkas + * www - http://www.xBaseScript.com + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA (or visit + * their web site at http://www.gnu.org/). + */ + #ifdef __HARBOUR__ #ifdef WIN - #COMMAND Alert( ) => MessageBox( 0, xToStr( ), "TInterpreter for Windows", 0 ) + #COMMAND Alert( ) => MessageBox( 0, xToStr( ), "xBaseScript for Windows", 0 ) #endif #else //#define __CLIPPER__ @@ -8,13 +31,13 @@ #TRANSLATE AS => #TRANSLATE AS ARRAY OF => -#TRANSLATE AS CLASS => -#TRANSLATE AS CLASS := => := +#TRANSLATE AS CLASS => +#TRANSLATE AS CLASS := => := #COMMAND _HB_CLASS <*x*> => #COMMAND _HB_MEMBER <*x*> => #XTRANSLATE QSelf() => PP_Qself() -#XTRANSLATE AddMethod( , @(), ) => AddInLine( , {|Self,p1,p2,p3,p4,p5,p6,p7,p8,p9| PP_QSelf(Self), PP_ExecMethod( <"FunName">, p1,p2,p3,p4,p5,p6,p7,p8,p9 ) }, ) +#XTRANSLATE AddMethod( , @(), , ) => AddInLine( , {|Self,p1,p2,p3,p4,p5,p6,p7,p8,p9| PP_QSelf(Self), PP_ExecMethod( <"FunName">, p1,p2,p3,p4,p5,p6,p7,p8,p9 ) }, , ) #TRANSLATE :: => Self: #COMMAND MEMVAR <*x*> => @@ -24,10 +47,14 @@ #TRANSLATE _GET_( , , [], [], [] ) => __GET( MEMVARBLOCK(), , , , ) #TRANSLATE __GET( ):Display() => __GET() -//#COMMAND EXTERNAL [, ] => PP_ProcessFile( ) [; PP_ProcessFile( ) ] -#COMMAND EXTERNAL [, ] => +//#COMMAND EXTERNAL [, ] => PP_ProcessFile( ) [; PP_ProcessFile( ) ] +#COMMAND EXTERNAL [, ] => -#COMMAND DECLARE <*x*> => +#COMMAND DECLARE <*x*> => + +// Must precede rule for DO CASE. +#COMMAND DO => () +#COMMAND DO WITH [, ] => ( [, ] ) #COMMAND IF => PP__IF #COMMAND ELSEIF => PP__ELSEIF @@ -50,21 +77,20 @@ #COMMAND WHILE => PP__WHILE #COMMAND ENDDO [<*x*>] => PP__ENDDO +#COMMAND DO <(file)>.prg => PP_Run( # + ".prg" ) -#COMMAND DO .prg => PP_Run( # + ".prg" ) +#COMMAND INIT PROCEDURE [()] => PP_PROC_INIT +#COMMAND EXIT PROCEDURE [()] => PP_PROC_EXIT -#COMMAND INIT PROCEDURE [()] => PP_PROC_INIT -#COMMAND EXIT PROCEDURE [()] => PP_PROC_EXIT +#COMMAND STATIC PROCEDURE ( ) => PP_PROC_PRG ; PP_LocalParams( { <"par"> } ) +#COMMAND STATIC PROCEDURE [()] => PP_PROC_PRG +#COMMAND STATIC FUNCTION ( ) => PP_PROC_PRG ; PP_LocalParams( { <"par"> } ) +#COMMAND STATIC FUNCTION [()] => PP_PROC_PRG -#COMMAND STATIC PROCEDURE [()] => PP_PROC_PRG -#COMMAND STATIC FUNCTION [()] => PP_PROC_PRG -#COMMAND STATIC PROCEDURE ( ) => PP_PROC_PRG ; PP_LocalParams( { <"par"> } ) -#COMMAND STATIC FUNCTION ( ) => PP_PROC_PRG ; PP_LocalParams( { <"par"> } ) - -#COMMAND PROCEDURE [()] => PP_PROC -#COMMAND FUNCTION [()] => PP_PROC -#COMMAND PROCEDURE ( ) => PP_PROC ; PP_LocalParams( { <"par"> } ) -#COMMAND FUNCTION ( ) => PP_PROC ; PP_LocalParams( { <"par"> } ) +#COMMAND PROCEDURE ( ) => PP_PROC ; PP_LocalParams( { <"par"> } ) +#COMMAND PROCEDURE [()] => PP_PROC +#COMMAND FUNCTION ( ) => PP_PROC ; PP_LocalParams( { <"par"> } ) +#COMMAND FUNCTION [()] => PP_PROC #COMMAND RETURN [] => PP_SetReturn( ) diff --git a/harbour/contrib/libct/datetime.prg b/harbour/contrib/libct/datetime.prg index 913da40ece..1d37ec3f90 100644 --- a/harbour/contrib/libct/datetime.prg +++ b/harbour/contrib/libct/datetime.prg @@ -316,9 +316,12 @@ Function EOY( date) * $SEEALSO$ * $END$ */ +/* this function is allready implemented in RTL */ +/* Function StoD( cdate) Local ofd := Set( _SET_DATEFORMAT, 'dd.mm.yyyy'), rvd cdate := If( ValType( cdate) == 'C', cdate, DtoS( Date())) rvd := CtoD( SubStr( cDate, 7, 2) + '.' + SubStr( cDate, 5, 2) + '.' + SubStr( cDate, 1, 4)) Set( _SET_DATEFORMAT, ofd) Return rvd +*/ diff --git a/harbour/hbgtmk.sh b/harbour/hbgtmk.sh new file mode 100644 index 0000000000..5289a9ad3a --- /dev/null +++ b/harbour/hbgtmk.sh @@ -0,0 +1,60 @@ +#!/bin/sh +# +# $Id$ +# + +# --------------------------------------------------------------- +# Copyright 2003 Przemyslaw Czerpak +# This script checks you have all tools to build Harbour binaries +# installed then takes current Harbour sources from SourceForge CVS +# and build binaries RPMs at your local host +# +# See doc/license.txt for licensing terms. +# --------------------------------------------------------------- + +# ssh is not necessary for anonymous access on SourceForge +# export CVS_RSH=ssh +export CVSROOT=":pserver:anonymous@cvs.harbour-project.sourceforge.net:/cvsroot/harbour" +export PROJECT=harbour + +test_reqrpm() +{ + rpm -q "$1" &> /dev/null +} + +TOINST_LST="" +for i in cvs gcc binutils bash bison ncurses ncurses-devel slang-devel gpm-devel +do + test_reqrpm "$i" || TOINST_LST="${TOINST_LST} $i" +done + +_cvs_RSH="${CVS_RSH}" +[ -n "${_cvs_RSH}" ] || _cvs_RSH="rsh" + +if ! which ${_cvs_RSH} &>/dev/null +then + if [ "${_cvs_RSH}" = "ssh" ] + then + TOINST_LST="${TOINST_LST} [open]ssh-clients" + else + TOINST_LST="${TOINST_LST} ${_cvs_RSH}" + fi +fi + +if [ -z "${TOINST_LST}" ] || [ "$1" = "--force" ] +then + cd + mkdir -p CVS + cd CVS + if cvs -z3 co "${PROJECT}"; then + cd "${PROJECT}" + ./make_rpm.sh "$*" + fi +else + echo "If you want to build Harbour compilers" + echo "you have to install the folowing RPM files:" + echo "${TOINST_LST}" + echo "" + echo "If you want to force installation run this script with --force paramter:" + echo "$0 --force" +fi diff --git a/harbour/make_gnu.sh b/harbour/make_gnu.sh index c8b766f92d..1572522799 100644 --- a/harbour/make_gnu.sh +++ b/harbour/make_gnu.sh @@ -101,4 +101,7 @@ else make $* + if [ "$*" = "clean" ]; then + find . -type d -name "$HB_ARCHITECTURE" | xargs rmdir 2> /dev/null + fi fi diff --git a/harbour/make_rpm.sh b/harbour/make_rpm.sh new file mode 100644 index 0000000000..b2f644e9c7 --- /dev/null +++ b/harbour/make_rpm.sh @@ -0,0 +1,60 @@ +#!/bin/sh +# +# $Id$ +# + +# --------------------------------------------------------------- +# Copyright 2003 Przemyslaw Czerpak +# simple script to build RPMs from Harbour sources +# +# See doc/license.txt for licensing terms. +# --------------------------------------------------------------- + +test_reqrpm() +{ + rpm -q "$1" &> /dev/null +} + +TOINST_LST="" +for i in gcc binutils bash bison ncurses ncurses-devel slang-devel gpm-devel +do + test_reqrpm "$i" || TOINST_LST="${TOINST_LST} $i" +done + +if [ -z "${TOINST_LST}" ] || [ "$1" = "--force" ] +then + . ./bin/pack_src.sh + stat="$?" + if [ -z "${hb_filename}" ] + then + echo "The script ./bin/pack_src.sh doesn't set archive name to \${hb_filename}" + exit 1 + elif [ "${stat}" != 0 ] + then + echo "Error during packing the sources in ./bin/pack_src.sh" + exit 1 + elif [ -f ${hb_filename} ] + then + if [ `id -u` != 0 ] && [ ! -f ${HOME}/.rpmmacros ] + then + RPMDIR="${HOME}/RPM" + mkdir -p ${RPMDIR}/SOURCES ${RPMDIR}/RPMS ${RPMDIR}/SRPMS \ + ${RPMDIR}/BUILD ${RPMDIR}/SPECS + echo "%_topdir ${RPMDIR}" > ${HOME}/.rpmmacros + fi + if which rpmbuild &>/dev/null + then + rpmbuild -ta ${hb_filename} --rmsource + else + rpm -ta ${hb_filename} --rmsource + fi + else + echo "Cannot find archive file: ${hb_filename}" + exit 1 + fi +else + echo "If you want to build Harbour compiler" + echo "you have to install the folowing RPM files:" + echo "${TOINST_LST}" + exit 1 +fi diff --git a/harbour/make_tgz.sh b/harbour/make_tgz.sh new file mode 100644 index 0000000000..a684e96056 --- /dev/null +++ b/harbour/make_tgz.sh @@ -0,0 +1,406 @@ +#!/bin/sh +# +# $Id$ +# + +# --------------------------------------------------------------- +# Copyright 2003 Przemyslaw Czerpak +# simple script to build binaries .tgz from Harbour sources +# +# See doc/license.txt for licensing terms. +# --------------------------------------------------------------- + +name="harbour" +hb_ver="0.42.0" +hb_lnkso="yes" +hb_pref="hb" +hb_libs="vm pp rtl rdd dbfdbt dbffpt dbfcdx dbfntx macro common lang codepage gtnul gtcrs gtsln gtcgi gtstd gtpca odbc ct debug profiler" +export C_USR="-DHB_FM_STATISTICS_OFF -O3" +if [ -z "$HB_ARCHITECTURE" ]; then export HB_ARCHITECTURE=linux; fi +if [ -z "$HB_COMPILER" ]; then export HB_COMPILER=gcc; fi +if [ -z "$HB_GPM_MOUSE" ]; then export HB_GPM_MOUSE=yes; fi +if [ -z "$HB_GT_LIB" ]; then export HB_GT_LIB=gtcrs; fi +if [ -z "$HB_MULTI_GT" ]; then export HB_MULTI_GT=no; fi +if [ -z "$HB_MT" ]; then export HB_MT=no; fi + +export HB_BIN_INSTALL="/usr/bin" +export HB_INC_INSTALL="/usr/include/${name}" +export HB_LIB_INSTALL="/usr/lib/${name}" + +# buid +umask 022 +make clean +make +pushd contrib/libct + make clean + make +popd + +# install +if [ -z "$TMPDIR" ]; then TMPDIR="/tmp"; fi +HB_INST_PREF="$TMPDIR/$name.bin.$USER.$$" +rm -fR "${HB_INST_PREF}" + +_DEFAULT_BIN_DIR=$HB_BIN_INSTALL +_DEFAULT_INC_DIR=$HB_INC_INSTALL +_DEFAULT_LIB_DIR=$HB_LIB_INSTALL +export HB_BIN_INSTALL="$HB_INST_PREF/$HB_BIN_INSTALL" +export HB_INC_INSTALL="$HB_INST_PREF/$HB_INC_INSTALL" +export HB_LIB_INSTALL="$HB_INST_PREF/$HB_LIB_INSTALL" + +mkdir -p $HB_BIN_INSTALL +mkdir -p $HB_INC_INSTALL +mkdir -p $HB_LIB_INSTALL +make -i install +pushd contrib/libct + make -i install +popd + +# build fm lib with memory statistic +pushd source/vm + TMP_C_USR=$C_USR + C_USR=${C_USR//-DHB_FM_STATISTICS_OFF/-DHB_PARANOID_MEM_CHECK} + rm -f fm.o + make fm.o + ar -r $HB_LIB_INSTALL/libfm.a fm.o + rm -f fm.o + make fm.o 'HB_LIBCOMP_MT=YES' + ar -r $HB_LIB_INSTALL/libfmmt.a fm.o + rm -f fm.o + C_USR=$TMP_C_USR +popd + +# Keep the size of the binaries to a minimim. +strip $HB_BIN_INSTALL/* +# Keep the size of the libraries to a minimim. +strip --strip-debug $HB_LIB_INSTALL/* + +install -m755 bin/hb-mkslib.sh $HB_BIN_INSTALL/hb-mkslib + +pushd $HB_LIB_INSTALL +LIBS="" +LIBSMT="" +for l in ${hb_libs} +do + case $l in + debug|profiler) ;; + *) + ls="lib${l}.a" + if [ -f lib${l}mt.a ] + then + lm="lib${l}mt.a" + else + lm="${ls}" + fi + if [ "${HB_MULTI_GT}" = "yes" ] || \ + [ "${l#gt}" = "${l}" ] || \ + [ "${l}" == "${HB_GT_LIB}" ] + then + if [ -f $ls ] + then + LIBS="$LIBS $ls" + fi + if [ -f $lm ] + then + LIBSMT="$LIBSMT $lm" + fi + fi + ;; + esac +done +$HB_BIN_INSTALL/hb-mkslib lib${name}-${hb_ver}.so $LIBS +[ $HB_MT != "MT" ] || $HB_BIN_INSTALL/hb-mkslib lib${name}mt-${hb_ver}.so $LIBSMT +for l in lib${name}-${hb_ver}.so lib${name}mt-${hb_ver}.so +do + if [ -f $l ] + then + ll=${l%-${hb_ver}.so}.so + ln -s $l $ll && ln -s ${name}/$l $HB_INST_PREF/usr/lib/$ll + fi +done +#export LD_LIBRARY_PATH="$HB_LIB_INSTALL:$LD_LIBRARY_PATH" +popd + +# Add a harbour compiler wrapper. +cat > $HB_BIN_INSTALL/${hb_pref}-build <] [.prg|.o] + +\"${hb_pref}cc\", \"${hb_pref}cmp\", \"${hb_pref}lnk\" and \"${hb_pref}mk\" parameters: + -o # output file name +\"${hb_pref}lnk\" and \"${hb_pref}mk\" parameters: + -static # link with static ${name} libs + -fullstatic # link with all static libs + -shared # link with shared libs (default) + -mt # link with multi-thread libs + -gt # link with GT driver, can be repeated to + # link with more GTs. The first one will be + # the default at runtime + -fmstat # link with the memory statistics lib + -nofmstat # do not link with the memory statistics lib (default) + -main= # set the name of main program function/procedure. + # if not set then 'MAIN' is used or if it doesn't + # exist the name of first public function/procedure + # in first linked object module (link) +" + exit 1 +elif [ "\$*" == "mk-links" ]; then + DIR="\${0%/*}" + NAME="\${0##*/}" + if [ "\${DIR}" != "\${NAME}" ]; then + for n in ${hb_pref}cc ${hb_pref}cmp ${hb_pref}mk ${hb_pref}lnk gharbour harbour-link; do + ln -sf "\${NAME}" "\${DIR}/\${n}" + done + fi + exit +fi + +## default parameters +HB_STATIC="no" +HB_MT="" +HB_GT="${HB_GT_LIB#gt}" +HB_MG="${HB_MULTI_GT}" + +HB_GT_REQ="" +HB_FM_REQ="" +HB_MAIN_FUNC="" +_TMP_FILE_="/tmp/hb-build-\$USER-\$\$.c" + +## parse params +P=( "\$@" ); n=0; DIROUT="."; FILEOUT="" +while [ \$n -lt \${#P[@]} ]; do + v=\${P[\$n]}; p="" + case "\$v" in + -o*) + d="\${v#-o}"; p="\${v}" + if [ -d "\${d}" ]; then + DIROUT="\${d%/}" + elif [ -d "\${d%/*}" ]; then + DIROUT="\${d%/*}"; FILEOUT="\${d##*/}"; p="-o\${d%.*}" + elif [ -n "\${d}" ]; then + FILEOUT="\${d}"; p="-o\${d%.*}" + fi ;; + -static) HB_STATIC="yes" ;; + -fullstatic) HB_STATIC="full" ;; + -shared) HB_STATIC="no" ;; + -mt) HB_MT="MT" ;; + -gt*) HB_GT_REQ="\${HB_GT_REQ} \${v#-gt}" ;; + -fmstat) HB_FM_REQ="STAT" ;; + -nofmstat) HB_FM_REQ="NOSTAT" ;; + -main=*) HB_MAIN_FUNC="\${v#*=}" ;; + -*) p="\${v}" ;; + *) [ -z \${FILEOUT} ] && FILEOUT="\${v##*/}"; p="\${v}" ;; + esac + [ -n "\$p" ] && PP[\$n]="\$p" + n=\$[\$n + 1] +done +P=( "\${PP[@]}" ) + +case "\${HB_MT}" in + [Mm][Tt]|[Yy][Ee][Ss]|1) HB_MT="MT";; + *) HB_MT="";; +esac + +SYSTEM_LIBS="-lm -lncurses -lslang -lgpm" +# use pthread system library for MT programs +if [ "\${HB_MT}" = "MT" ]; then + SYSTEM_LIBS="-lpthread \${SYSTEM_LIBS}" +fi + +HB_GT_STAT="" +[ -z "\${HB_GT_REQ}" ] && HB_GT_REQ="\${HB_GT}" +if [ "\${HB_MG}" != "yes" ]; then + [ "\${HB_STATIC}" = "yes" ] && HB_GT_STAT=\`echo \${HB_GT_REQ}|tr A-Z a-z\` + HB_GT_REQ="" +else + HB_GT_REQ=\`echo \${HB_GT_REQ}|tr a-z A-Z\` +fi +HB_MAIN_FUNC=\`echo \${HB_MAIN_FUNC}|tr a-z A-Z\` + +# set environment variables +export HB_ARCHITECTURE="${HB_ARCHITECTURE}" +export HB_COMPILER="${HB_COMPILER}" +[ -z "\${HB_BIN_INSTALL}" ] && export HB_BIN_INSTALL="${_DEFAULT_BIN_DIR}" +[ -z "\${HB_INC_INSTALL}" ] && export HB_INC_INSTALL="${_DEFAULT_INC_DIR}" +[ -z "\${HB_LIB_INSTALL}" ] && export HB_LIB_INSTALL="${_DEFAULT_LIB_DIR}" + +# be sure that ${name} binaries are in your path +export PATH="\${HB_BIN_INSTALL}:\${PATH}" + +HB_PATHS="-I\${HB_INC_INSTALL}" +GCC_PATHS="\${HB_PATHS} -L\${HB_LIB_INSTALL}" +LINK_OPT="" +if [ "\${HB_STATIC}" = "full" ]; then + LINK_OPT="\${LINK_OPT} -static" + HB_STATIC="yes" +fi + +HARBOUR_LIBS="" +if [ "\${HB_STATIC}" = "yes" ]; then + libs="${hb_libs}" +else + l="${name}" + [ "\${HB_MT}" = "MT" ] && [ -f "\${HB_LIB_INSTALL}/lib\${l}mt.so" ] && l="\${l}mt" + [ -f "\${HB_LIB_INSTALL}/lib\${l}.so" ] && HARBOUR_LIBS="\${HARBOUR_LIBS} -l\${l}" + libs="debug profiler" +fi +for l in \${libs} +do + if [ "\${HB_MG}" = "yes" ] || [ "\${l#gt}" = "\${l}" ] || [ "\${l}" == "gt\${HB_GT_STAT}" ]; then + [ "\${HB_MT}" = "MT" ] && [ -f "\${HB_LIB_INSTALL}/lib\${l}mt.a" ] && l="\${l}mt" + [ -f "\${HB_LIB_INSTALL}/lib\${l}.a" ] && HARBOUR_LIBS="\${HARBOUR_LIBS} -l\${l}" + fi +done +HARBOUR_LIBS="-Wl,--start-group \${HARBOUR_LIBS} -Wl,--end-group" +l="fm" +[ "\${HB_MT}" = "MT" ] && [ -f "\${HB_LIB_INSTALL}/lib\${l}mt.a" ] && l="\${l}mt" +if [ -f "\${HB_LIB_INSTALL}/lib\${l}.a" ]; then + if [ "\${HB_STATIC}" = "yes" ] && [ "\${HB_FM_REQ}" = "STAT" ]; then + HARBOUR_LIBS="-l\${l} \${HARBOUR_LIBS}" + else + HARBOUR_LIBS="\${HARBOUR_LIBS} -l\${l}" + fi +fi + +FOUTC="\${DIROUT}/\${FILEOUT%.*}.c" +FOUTO="\${DIROUT}/\${FILEOUT%.*}.o" +FOUTE="\${DIROUT}/\${FILEOUT%.[Pp][Rr][Gg]}" +FOUTE="\${FOUTE%.[oc]}" + +hb_cc() +{ + harbour "\$@" \${HB_PATHS} && [ -f "\${FOUTC}" ] +} + +hb_link() +{ + if [ -n "\${HB_MAIN_FUNC}" ]; then + HB_MAIN_FUNC="@\${HB_MAIN_FUNC}" + elif [ -f "\${FOUTO}" ]; then + HB_MAIN_FUNC=\`hb_lnk_main "\${FOUTO}"\` + fi + if [ -n "\${HB_GT_REQ}" ] || [ -n "\${HB_FM_REQ}" ] || [ -n "\${HB_MAIN_FUNC}" ]; then + hb_lnk_request > \${_TMP_FILE_} && \\ + gcc "\$@" "\${_TMP_FILE_}" \${LINK_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" + else + gcc "\$@" \${LINK_OPT} \${GCC_PATHS} \${HARBOUR_LIBS} \${SYSTEM_LIBS} -o "\${FOUTE}" + fi +} + +hb_cmp() +{ + hb_cc "\$@" && \\ + gcc -g -c "\${FOUTC}" -o "\${FOUTO}" \${GCC_PATHS} && \\ + rm -f "\${FOUTC}" +} + +hb_lnk_request() +{ + echo "#include \\"hbapi.h\\"" + if [ "\${HB_STATIC}" = "yes" ] || [ -n "\${HB_FM_REQ}" ]; then + for gt in \${HB_GT_REQ}; do + echo "extern HB_FUNC( HB_GT_\${gt} );" + done + if [ -n "\${HB_FM_REQ}" ]; then + echo "extern HB_FUNC( HB_FM_\${HB_FM_REQ} );" + fi + echo "void hb_lnk_ForceLink_build( void )" + echo "{" + for gt in \${HB_GT_REQ}; do + echo " HB_FUNCNAME( HB_GT_\${gt} )();" + done + if [ -n "\${HB_FM_REQ}" ]; then + echo " HB_FUNCNAME( HB_FM_\${HB_FM_REQ} )();" + fi + echo "}" + fi + gt="\${HB_GT_REQ%% *}" + if [ -n "\$gt" ] || [ -n "\${HB_MAIN_FUNC}" ]; then + echo "#include \\"hbinit.h\\"" + echo "extern char * s_defaultGT;" + echo "extern char * s_pszLinkedMain;" + echo "HB_CALL_ON_STARTUP_BEGIN( hb_lnk_SetDefault_build )" + if [ -n "\$gt" ]; then + echo " s_defaultGT = \\"\$gt\\";" + fi + if [ -n "\${HB_MAIN_FUNC}" ]; then + echo " s_pszLinkedMain = \\"\${HB_MAIN_FUNC}\\";" + fi + echo "HB_CALL_ON_STARTUP_END( hb_lnk_SetDefault_build )" + fi +} + +hb_lnk_main() +{ + (nm \$1 -g -n --defined-only|sed -e '/HB_FUN_/ ! d' -e 's/^[0-9a-fA-F]* T HB_FUN_//'|head -1|grep -v '^MAIN\$')2>/dev/null +# (nm \$1 -n --defined-only|sed -e '/HB_FUN_/ ! d' -e 's/^[0-9a-fA-F]* [Tt] HB_FUN_//'|head -1|grep -v '^MAIN\$')2>/dev/null +} + +hb_cleanup() +{ + rm -f "\${_TMP_FILE_}" +} + +trap hb_cleanup EXIT &>/dev/null + +## get basename +HB="\${0##*/}" + +case "\${HB}" in + *cc) + hb_cc "\${P[@]}" + ;; + *cmp|gharbour) + hb_cmp "\${P[@]}" + ;; + *lnk|harbour-link) + hb_link "\${P[@]}" + ;; + *mk) + hb_cmp "\${P[@]}" && \\ + hb_link "\${FOUTO}" && \\ + strip "\${FOUTE}" && \\ + rm -f "\${FOUTO}" + ;; +esac +EOF +chmod 755 $HB_BIN_INSTALL/${hb_pref}-build +$HB_BIN_INSTALL/${hb_pref}-build mk-links + +mkdir -p $HB_INST_PREF/etc/harbour +install -m644 source/rtl/gtcrs/hb-charmap.def $HB_INST_PREF/etc/harbour/hb-charmap.def +cat > $HB_INST_PREF/etc/harbour.cfg <pSymbol->pFunPtr ) && s_pszLinkedMain ) + pDynSym = hb_dynsymFind( s_pszLinkedMain ); + } if( pDynSym && pDynSym->pSymbol->pFunPtr ) s_pSymStart = pDynSym->pSymbol;