FlagShip 6 (Visual FlagShip) for MS-Windows ---------------------------- 6.1.19a 05-May-2008: Add-on's and fixes compared to version 6.1.19 - get:Type fixed, it returned in some occurences too long string, causing problem in @..GET datevar 6.1.19 29-Apr-2008: Add-on's and fixes compared to version 6.1.18 - @..GET/READ restores original variable content on failure (getsys.prg) - Alert(), MsgBox() in GUI mode does not pass Enter key back to READ anymore - APPEND FROM...DELIMITED considers now also date type according to SET DATE - GET object: VarPut() allows changing also variable type - SET GUICURSOR ON/OFF enables/disables cursor immediately - WAIT in Terminal i/o with SET CONSOLE OFF behaves now as documented - Tbrowse() in terminal i/o considers now user output within codeblocks - getsys.prg slightly extended - fsmake.prg some small fixes 6.1.18 28-Feb-2008: Add-on's and fixes compared to version 6.1.17 - warning STDIN... from compiler removed - GUI debugger invocation fixed - Altd(2) added, as combination of AltD(1) + AltD() - ComboBox item selection fixed - COPY TO with macro fixed in std.fh - InitIoQuit() or user API-UDF-call on click at [X] window button fixed - MemoEdit() handler for GUI with UDF (system/memoedithand.prg) reworked, passed parameter (row, column) fixed - USE...INDEX... READONLY fixed - ^K and ^O and fs_set("break"|"debug") fixed, both are disabled by default, activate on request by e.g. fs_set("break",K_CTRL_K|K_ALT_C) and/or fs_set("debug",K_CTRL_O|K_ALT_D) - Makefile in tools\dbu match to the used bcc/msvc6 compiler 6.1.17 15-Jan-2008: Add-on's and fixes compared to version 6.1.16 - @..GET..DISABLE fixed in std.fh - @..GET..PUSHBUTTON clauses NOTIFY and FONT are new - @..GET..TBROWSE invocation fixed - Achoice() selection by key press repeats now also from begin - Alert() has now optional time-out - COMMIT, COMMIT ALL have additional tuning switches - COMMIT ALL flushes also exclusive open databases, tunable - COPY FILE accepts *? wildcards - COPY TO performs AutoFlock() and AutoUnlock when SET AUTOLOCK is ON - COPY TO..DELIMITED|SDF new clauses FLDSEP,CHARSEP,LINESEP,WITHMEMO - DbCommit() and DbCommitAll() optional parameter for exclusive dbf - DbEdit() the behavior of TAB and shift-TAB key changed - Directory() output fixed - ErrBox(), InfoBox(), TextBox(), WarnBox() have optional time-out - Fopen() does not create new file anymore, except when specified - FS_SET("prset") array elements 8+9 added - HardCr() checks for chr(141,10) or chr(141) only - MemoEdit() behavior of DEL and BSPACE key in Terminal i/o fixed - MENU TO has now optional time-out - Pushbutton instantiation of codeblock fixed, see fsman description - READ (getsys.prg) K_MOUSEWHEELUP + K_MOUSEWHEELDN, CYCLE added - RestScreen() clears now screen region before restoring - SET ORDER TO optionally reset Found() - Tbrowse added properties Data(), Updated, OnUpdate - WebSendMail() parameter 7 is new - message for ^K break key in Terminal i/o extended - GUI debugger access during RTE fixed - FoxPro compatibility increased in stdfoxpro.fh and foxpro_api.prg - ^K break key in Terminal i/o enabled by fs_set("break",.T.) - ^O debug key in Terminal i/o enabled by fs_set("debug",.T.) - FS2 fs2_com.prg extended for com_rts|cts|dcd|dsr() - FS2 FileCopy() comparison of equivalent files fixed - fsmake = IDE for project build is new in tools/fsmake.prg (yet Beta) 6.1.16 29-Jun-2007: Add-on's and fixes compared to version 6.1.15a - compiler optimization for comparing integer/numeric - @..GET/READ in GUI mode: avoids scrolling, editing decimals - @..GET/READ with SET MULTIBYTE ON reworked for Terminal i/o + getsys.prg - @..PROMPT.. with GUICOLOR clause fixed - Alert(), Infobox() etc. have new left/center/right formatting - Browse() with edit fixed - InfoBox(), ErrBox(), TextBox(), WarnBox() are now in boxfunct.prg - Help() for MemoEdit() is in system/memoedithand.prg = MemoEditHelp() - MemoEdit() with SET MULTIBYTE ON reworked for Terminal i/o - FS2 DirName() and dirchange() extended for drive letter - FS2 Rand() return value fixed to meet manual - FS2 Wopen() optimizing - FS2 WmoveUser() and KsetScroll() extended - include/std.fh some fixes and extensions - system/getsys.prg extended for multibyte handling - system/boxfunct.prg is new - addit.support for CP860,CP862,CP863,CP864,CP865,CP866,CP869 6.1.15a 30-Jan-2007: Add-on's and fixes compared to version 6.1.15 - round() was over-optimized, may sometimes report wrong value, fixed - RESTORE FROM... fixed 6.1.15 24-Jan-2007: Add-on's and fixes compared to version 6.1.14 - @..GET/READ numeric input and PICTURE @K for GUI fixed (getsys.prg) - ACHOICE() hot-keys and unselectable items fixed, addit.tuning avail. - COPY TO .. speed-up - DbCommit() or COMMIT may cause failure in spec.cases, fixed - PAD(), PADR(), PADL() may cause memory leak, fixed - ROUND(-0.1,0) and STR(-0.1,,0) displayed -0 in some OS, fixed - RUN detects now Windows internal commands automatically - system/getsys.prg and achoicehand.prg extended 6.1.14 30-Oct-2006: Add-on's and fixes compared to version 6.1.12 - @..GET/READ and MemoEdit() fixed for SET MULTIBYTE ON - MemoEdit() in Terminal i/o sometimes did not get cursor keys - DbSkip() returns now true on success and false on failure - RddSetDefault() and DbSetDefault() fixed for other RDDs - GetEnvArr() and GetEnvArray() are now equivalent - getsys.prg added #define MOUSE_HOME* (for former behavior: disable both) 6.1.12 9-Aug-2006: Add-on's and fixes compared to version 6.1.10 - VFS/BCC32 port allows now up to 2000 open files per application, same as the VFS/MSVC6 port - @..GET LISTBOX GUICOLOR clause added - @..GET LISTBOX mouse handling reworked, mouse wheel suppoort - @..GET CHECKBOX mouse handling reworked - @..GET RADIOGROUP mouse handling reworked - @..GET -> MdiOpen() -> MdiClose() restores cursor now - @..PROMPT/MENU TO supports left/mid/right mouse button and wheel - COPY FILE file1 TO file2 sets now file2 attrib to read/write - Font attributes apply for currently used font - Inkey() in GUI considers mouse wheel up/down (incl. shift/ctrl/alt) - Inkey(n) in terminal i/o: new algorithm for exact timing - KEYBOARD [,] is new - PUBLIC/PRIVATE/DECLARE ¯oArr[len] (array by macro) fixed - Sleep() and SleepMs() w/o parameter fixed - Tbrowse() supports wheel in default handler - getsys.prg, listboxhand.prg, tbrowse*hand.prg changed/extended 6.1.10 23-May-2006: Add-on's and fixes compared to version 6.1.6 - COMMIT and USE (CLOSE) with SET ORDER TO 0 caused error, fixed - COPY FILE..TO.. has set read-only attribute (BCC32 only), fixed - ACCEPT and BackSpace in GUI mode fixed - @..GET..PICTURE avoiding RTE 317 - @..GET..LISTBOX USING obj considers now also GET coordinates - @..GET/READ in GUI mode with SET GUICOLORS ON fixed - @..PROMPT/MENU TO fixed for SET INTENSITY and unknown key - Directory() w/o parameter fixed - Fcreate() does not raise RTE on error but reports -1 - KEYBOARD fixed to avoid buffer overflow - Listbox{} accepts double mouse click - MemoEdit() and F1 in GUI mode considers user's UDF if any - SET TYPEAHEAD default size increased from 80 to 10000 - Tbrowse:Axit() fixed - oAppWindows:NotifyAll, param2 and 3 added - FS2:TriggerUdf() and KeySec() in Terminal i/o mode fixed - FS6config new LIBDIR macro and $(LIBDIR) place holder - FS6config new $(OBJ) place holder - tools/make3 is new 6.1.6 25-Nov-2005: Add-on's and fixes compared to version 6.1.5 - Port for Borland BCC32 compiler available - Code page in MS-Windows port automatically considered when TERM=CP or the code page is set (see terminfo\FSkeymap.cp*) - CurDir() has now compatibility switch to Cliper - DbSetIndex() accepts now any number of parameters - CLEAR MENU is new - InkeyStatus() for MS-Windows extended - NetErr() reports .T. also if one of multiple SET INDEX failed - SaveScreen() with FS_SET("devel",.T.) fixed - SET OPENERROR OFF flag considered - ofont:Dialog() better selection for current font - tbrowse:stabilize() and PgUp/Down displays now waiting cursor and has modifiable [^][v] scrollbar buttons behavior (GUI only) - _oPrompt:ItemCount is new - terminfo\FSkeymap.cp437,850,852,858 are new - examples\Makefile and several new source files 6.1.5 13-Oct-2005: Add-on's and fixes compared to version 6.1.4a - enabled support for large files > 2GB - @..GET.. VALID {|| ..} supports now codeblocks as well, when #define CODEBLOCK_IN_VALID is enabled in ...\include\std.fh - REPLACE with UNIQUE index fixed - SET AUTOCOMMIT is now disabled by default, therefore SELECT and UNLOCK have no speed disadvantages anymore - SET EOFAPPEND is new - SET LARGEFILE is new - SAVE TO/RESTORE FROM with set fs_set("memcompat") fixed - TYPE TO fixed for CR/LF - Tbrowse:ColAdjust ACC/ASS is new - Tbrowse:ColSepEof ACC/ASS is new - Get:Home2char and Get:End2char are new - FSerror.prg has error logging, enabled by FSERRORLOG=1|2|filename - user defined C main() supported - FS2:Week() is now in fs2_udfs.prg and considers ISO8601 - FS2:WeekSetIso() is new - fsman is available also in PDF format. Select \manual and open fsman.html in your browser. - The -fox compiler switch considers FoxPro dot aliases - foxpro_api.prg extended for FoxPro's set() function and ?,?? clauses 6.1.4a 30-May-2005: Add-on's and fixes compared to version 6.1.4 - fix: @..GET ... LISTBOX may caused RTE - fix: CLOSE fixed - add: TempFileName() for MS-Windows returns more sinfull names - add: sys(3) with -fox switch behaves same as FoxPro (foxpro_api.prg) - fix: SELECT(0|1) with -fox switch behaves now as FoxPro - fix: @..SAY with -fox switch fixed in stdfoxpro.fh - add: DevOutPict() w/o picture param behaves now same as DevOut() - add: SaveScreen() and RestScreen() parameter check with Devel.Warning 6.1.4 04-May-2005: Add-on's and fixes compared to version 6.1.3 - add: Aeval() second parameter in code block param list - new: AfillAll() similar to Afill() but for any array type - fix: CLOSE may caused RTE in some occurences - add: dbfidx.fh extended for some access properties - fix: already closed database yet used by SET RELATION will not raise RTE - fix: EJECT checks now for device availability - add: GetFunction() considers now also positive values - fix: InkeyTrap() considers now also SET FUNCTION - new: InkeyStatus() is new - fix: MemoEdit() in GUI did not recognize SET KEY and SET FUNCTION - fix: @..Get/READ did not consider LOCAL array elements - add: @..SAY "abcd" with SET HTML ON sometimes truncates last char; if so, set _aGlobSetting[GSET_G_L_ADD_SP_HTML] := .T. - fix: @..SAY/GET and Transform() with inserted PICTURE char, and @E fixed - fix: REPORT EDIT did run in endless loop (source available) - fix: REPORT FORM behaves now same as FS4.48 - new: RUN WAIT/NOWAIT clause is new - new: Set(_SET_INSERT_INKEY) is new - new: Set(_SET_MEMOEDITWARN) is new - add: Set(_SET_WARN_IGNORE) is now considered also in Terminal i/o - add: _DisplArr*(), _DisplObj*() extended - fix: _oPrinter:SetupAborted was incorrectly always .F. - add: initio.prg extended for additional settings - add: initiomenu.prg extended InitIoFont() API - add: memoedithand.prg reworked, backward compatibility switch available - add: oGet:Display() optional parameter added - add: stdfoxpro.fh for -fox switch extended - add: FS2 Diskname() extended for MS-Windows port - fix: FS2 Wopen() and SaveScreen() has now additional parameter check - add: fsman additional options, see fsman -help 6.1.3 05-Jan-2005: Add-on's and fixes compared to version 6.1.2 - fix: compiler warning at assigning typed var as fixed - add: @..SAY chr(0) is now supported for printer - fix: GET/READ :home() and :delete() behavior for numeric vars - new: GET/READ copy-and-paste available for GUI - add: INDEX ON (key) - i.e. parenthesized key - added in std.fh - fix: SET CURSOR OFF in Terminal i/o may result in wrong output - add: SetKey() w/o parameters ignored now - fix: MemoEdit() in Terminal i/o did not refresh cursor - new: MemoEdit() copy-and-paste available for GUI - fix: Achoice() and ListBox() sometimes did not set select() - fix: Tbrowse:PageUp() and :PageDown() behavior in Terminal i/o - fix: PACK sometimes incorrectly modified database created by Clipper - new: user modifiable window refresh after drawing lines - new: examples for make and different codepages - fix: dbu utility fixed for speed - new: FS2 com*() functions available in fs2_com.prg - fix: FS2 wselect() w/o wopen() raised error - new: distribute.bat for copy re-distributable files to customer - add: cb4rdd package extended for CB6.54 6.1.2 11-Oct-2004: Add-on's and fixes compared to previous release: - common source code, databases + indices and locking for Unix, Linux and MS-Windows, fully backward compatible to FS5.x and FS4.x - new locking algorithm suggested mainly for Windows and files > 2gb and Unix/Linux compatibility to Windows. Auto backward compatible to previous locking scheme. Controlled by SET(_SET_LOCK_MODE) - CLS, CLEAR SCREEN, @..CLEAR [TO].. in GUI mode automatically sets background color from SET COLOR same as in Terminal i/o, when SET GUICOLOR is ON - oAppWindow:Resize() in GUI extended to consider status bar - COMMIT, DbCommit() flushes the buffer more precisely in Windows now - SKIP -n on UNIQUE index fixed - fs_set("prset") has now pre-defined CR+LF for Windows, LF for Unix - Get:Home(), get:End() moves to first/behind last character in buffer, SET KEY/help procedure params fixed in getsys.prg - Get:Insert() considers/set TypeOut flag - @..GET PICTURE new B template, A,N fixed, addit.check for funct.part - Inkey(), @..GET tranlation of accents improved, Inkey() has optional 4th parameter to control it - LastKey() extended for clearing lastkey buffer - MemoEdit() in GUI extended to support national chars same as GET - SET SOURCE significantly extended for your convenience - SET(_SET_PRINTASCII) is active for Terminal i/o too - SET DEFAULT, SET PATH improved for proper Windows support - Tbrowse:GuiColorSpec and TbColumn:GuiColorBlock extended - FoxPro API: function fox_sys() added in fox_api.prg - fsman extended to consider new additions 6.1.1 21-May-2004: Add-on's and fixes compared to previous release: - \examples\images.prg added - VB and VC field types fixed 6.1.1 18-May-2004: Add-on's and fixes compared to previous release: - FlagShip compiler: significant speed increase, buffer for string constants reduced to 2kb = MS-VC6++ limit - PACK may raise RTE, fixed - Printer class and printer.prg example reworked - support for JPEG bitmaps added 6.1.1 12-May-2004: Add-on's and fixes compared to previous release: - FlagShip: -f and -delc and -nodelobj and -nodelc and -outdel switches added. Intermediate files are deleted silently except when -outdel and -v is given. Clean warning message when the execution was aborted in preprocessor or compiler or CL. - FlagShip preprocessor and compiler: size of accepted commands (incl. continuation lines) exceeded to 8kb = approx. 100 lines ea. Note: MS-VC6++ has limit of 2kb only, see also fsman LNG.2.7 - #define's in *.fh files can also be used in .c sources - GUI source debugger fixed to accept commands via preprocessor - Inkey() internationalization extended in FSguikey.* and FSkeymap.* and FSchrmap.* files in \terminfo - WAIT considers SET CONSOLE OFF also in GUI mode - FlagShip_Dir() function is new - fsman section LNG.9.6 and 9.7 (porting step-by-step) added 6.1.1 24-Apr-2004: Add-on's and fixes compared to previous release: - unresolved externals in FS2 Toolbox for drand() fixed - FS2 NtoC() documented - dbu*.prg sources reformated - \examples\umlauts.prg, pc8lines.prg and getvalid.prg - \tools\dbu\*.prg fixed for PC8 characters 6.1.1 15-Apr-2004: Add-on's and fixes compared to previous release: - memoedit() focus in GUI mode fixed - SAVE TO ALL LIKE ... fixed for regex search - RUN ("\path with spaces\myexe") included spaces enabled - unresolved externals in FS2 Toolbox fixed - FS6config macros extended 6.1.1 31-Mar-2004: Add-on's compared to Linux version 5.1.4: - common source code, databases + indices for Unix, Linux and MS-Windows, fully backward compatible to FS5.x and FS4.x - new: optional, extended .dbf structure, containing also variable and auto-compressed character and binary/blob fields, see the DbCreate() function for details - add: DbCreate(), Type(), Valtype() considers the extended database structure for unlimited, variable/compressed character and binary/blob fields - add: @..BOX can draw sunken, raised or plain GUI boxes - add: @..SAY and ? accepts also RichText and have additional clauses - new: @..SAY IMAGE to display graphic images - add: PICTURE template mask in @..GET the was extended for 'B' - add: @..GET/READ handles now cut & paste in GUI and Terminal i/o - add: @..PROMPT/MENU TO accepts '&' and '\>' for hotkeys, nested PROMPTs are supported to any level, and have additional clauses. The handler behaves now similarly to Achoice() - add: WAIT also has optional clauses for cursor shape etc. - new: SET GOTOP controls movements via GOTOP at dbf or index open - new: SET GUICURSOR changes cursor setting and shape - new: SET HTMLTEXT allows embedded richtext in ?, ??, @..SAY - new: SET NFS for optimizing of remote mounted drives - new: SET ROWADAPT, SET ROWALIGN controls alignments of large fonts - new: ColVisible() and RowVisible() are new - new: ConsoleSize() is new - new: DispImageFile() and DispImageData() are new, see @..SAY IMAGE - new: Doserror2str() and Ferror2str() for clear text messages - fix: FieldLen(n) corresponds now to DbStruct(n,[3]) - new: IsDbMultipleOpen() added - add: LastKey() has addit. parameters to clear buffer - add: MessageBox() supports additional icons - new: OpenConsole() mainly for MS-Windows compatibility is new - new: ProcessEvents() is new for convenience - new: RowAdapt() and RowVisible() are new - new: SetGuiCursor() is similar to SET GUICURSOR - add: StrLen2pix() accepts/consider also RichText - add: Strtran() supports now zero bytes for source and replacement - new: Tbrowse() GuiGrid ACC/ASS properties are new - add: extended i/o handlers for achoice, tbrowse, get etc. are available in source code in .../system directory - add: _aGlobSetting[...] in initio.prg extended for addit.constants - add: automatic conversion from IntVar to NumVar at int overflow - add: extended FoxPro support, available in the stdfoxpro.fh and foxpro_api.prg sources. - add: GUI debugger accepts cut-and-paste - fix: all known (almost minor) problems of FS5.1.4 fixed