September 5th, 2011thinAir - Add:
· Added online version checking
· Implemented font style for the following code parts: Text, Number, Keyword, Operator, ScopeKeyword, Comment, String, LineNumber
UI - Add:
· Canvas_GetPixel function added
· SendString function added
· Win_GetMessage function added
· Win_IsDialogMessage function added
· Win_TranslateMessage function added
· Win_DispatchMessage function added
· Win_PostQuitMessage function added
· Added Dialog_FindAndReplace common dialog
· Added Dialog_Find common dialog
· Added WIN_RegisterWindowMessage function
· Added FINDREPLACE native UDT
· MLGrid_Sheet_Select function added
· MLGrid_Sheet_GetName function added
· MLGrid_Sheet_SetName function added
· MLGrid_Sheet_SetName function added
· MLGrid_Sheet_Tabs_Visible function added
· MLGrid_Sheet_Add function added
Core - Fix:
· Fixed App_List* function in order them all be consistent with A-Z sort order
· Fixed "/*" not usable in function parameters
· Fixed C-like and normal comments interferences
thinDebug - Fix:
· Random saved thinDebug window setting: window position, window size, separator size
· Random crash on trying to close thinDebug window while debugging
thinDebug - Improved:
· Random crash while debugging inside UI message pump callbacks. Improved stability but still not solved for all cases
Core - Add:
· Assing function added
· BGR function added
· APP_ListClasses function added
· APP_ListUDTs function added
ZLib - Improved:
· Internal ZLib library updated to ZLIB.DLL version available: 1.2.5
STAT - Fix:
· Stat_FillArray fixed. Inconsistency when From parameter was zero
File - Fix:
· File_Save: when indicated path was a directory path, all files into specified directory were deleted
thinAir - Fix:
· Fixed command line parameters dialog. Menu Script/Command line
· Fixed content sensitive help search for constants, equates and keywords having $ and % chars in their names
Core - Improved:
· RGB function improved
UI - Fix:
· MLGRID: fixed current cell visualization
September 5th, 2011UI - Add:
· PropertyList_ItemSetPtr function added
· PropertyList_ItemGetPtrByName function added
· Canvas_Circle fucntion added
· Win_GetPixel function added
· Canvas_GetTextHeight function added
· Canvas_GetTextWidth function added
SDK - Add:
· Added thinBasic_Parse2Numbers1String SDK function
· Added thinBasic_Class_AddMethod SDK function
· Added thinBasic_Class_Add SDK function
· Added thinBasic_DeclareFunction SDK function
thinAir - Improved:
· Backup is now driven by manual choice of the programmer.
· Every time programmer wants a backup copy of a source file, just use "Save and Backup" button and a backup copy of the source file will be saved into .\BAK\ directory with date and time in file name.
· Improved Code Browser handling of #INCLUDE directive in order to manage special chars mask (* and ?) and special directory directives (%APP_PATH%, %APP_SOURCEPATH%, %APP_INCLUDEPATH%)
· Reduced MDI window refresh when switching from MDI window to the other or when rebuilding code browser or selecting active MDI window using tabbed dialog
· Improved code scanning during code browser building process
· Improved option dialog switching code browser parsing options in a dedicated dialog area
Core - Add:
· Added the first thinBasic module class: cTimer
· cTimer class implements a class able to measure time from seconds to microseconds. See cTimer class for details on how to use it and available .methods.
· Added a new important functionality in thinBasic arsenal: Core Module Classes.
· It is just the beginning of this new feature and more will come in future thinBasic releases.
· Thanks to new Core SDK interfaces (thinBasic_Class_Add, thinBasic_Class_AddMethod), every thinBasic Module developers are now able to declare module classes into their module projects.
· Dist function added
· EXPAND$ function added
· c-style block comments using /* ... */ pairs
· StartsWith function added
· EndsWith function added
· Bit_Toggle function added
· Bit_Reset function added
· Bit_Set function added
· Bit_Get function added
· Added REPEAT/UNTIL statement
· Added Bit function
· Added a complete set of predefined color equates
· #BUNDLE Option ... pre-parsing keyword added
· #BUNDLE Name ... pre-parsing keyword added
· #BUNDLE File ... pre-parsing keyword added
Core - Fix:
· ITERATE FOR statement when executed from inside recursive SELECT CASE ... statements
· Fixed and improved ParseSet$ function.
· Join$ generated wrong output string when using IndexTo parameter and IndexTo was not corresponding with last array element
· Fixed double concatenation token in string expressions
· Fixed LO when used with WORD numeric specifier
· Fixed HI when used with WORD numeric specifier
· Fixed ParseCount when string to parse had leading and/or trailing $CRLF
· Fixed OdbcGetDataStringByColName in odbc352.dll lib
· Fixed row order assignment. Now square brackets will be used for such feature
· Fixed SizeOf when dealing with nested UDTs
· Fixed ? in parsing RAWTEXT
· RETURN from function error when a FOR/NEXT statement encountered after RETURN
· Msgbox function was breaking parent callback when used with timeout option
· DO can now be ALIASed
· Fixed handling of #IF / #ELSE / #ENDIF pre-parsing directive
· Fixed parenthesis detection when passing arrays to external functions
· Fixed MAT and DET parenthesis detection
SMTP - Improved:
· Dependency library no more present: it is now included and executed from memory on the fly
thinAir - Add:
· Added new About Box allowing version checking of thinBasic module files
· Added script error handling detection even if error occurs into an included files. thinAir will detect error and when it has occurred placing the cursor over error line.
· Added option to save all files before script execution or only current script
· Added code browser option to show code browser element only for active file
· New option in code browser will let sync code browser window with MDI tabs selection
· Added Author information in thinAir options like it was present in old thinAir
· Added Breakpoint comment that allows setup of debugger breakpoint directly into script. Breakpoints will be remember for the next debugging session
· Added Bookmark comments that allows automatic insert of editor bookmarks also on source code reloading (bookmarks will be remember during next file load)
Core - Improved:
· Improved Split function in order to accept a NUL$ string as string delimiter. In this case any character of main string is splitted into target string array
· Improved pre-parsing phase. Added DO/LOOP pairs checking
· +=, -=, *=, /*, \= operators can now be used as assignment operators for numeric static elements inside UDT
· DATE$ function: added new output formats
· Implicit line continuation in presence of a delimiter
· Function default parameters value can now be specified as numeric expression using predefined equates
· InputBox$ can now have a password flag in order to display an asterisk (*) for each character typed into the control in order to obscure the password
· Possibility to assign row order data to numeric matrix
· Improved JOIN$ fucntion now able to work also on matrix
· Improved handling of text inside RAWTEXT ... END RAWTEXT
· REDIM improved to handle absolute variables
· PARSE can now load string buffer directly from a file
· BEGIN ... END ... statement improved adding comma separated lists
· Improved script execution speed when calling external functions
· Improved passing BYREF parameters to external function
· Improved passing arrays to external functions. It is no more necessary to specify initial array element index. If missing 1 will be assumed
FTP - Improved:
· Dependency library no more present: it is now included and executed from memory on the fly
FTP - Add:
· FTP_WriteToLogFile function added
DT - Fix:
· DT_DateToSec fixed. Error in calculating when date was below year 0002
· DT_SecToDate fixed. Error in calculating when date was below year 0002
· DT_GetTimeStamp fixed. Error in output format
thinAir - Fix:
· Fixed many many bugs as listed in project milestone ID 2
· Code browser failing to identify function names using equal for optional parameters default value
· Fixed @AUTHOR@ macro when creating new script from templates
· Fixed @USERNAME@ macro when creating new script from templates
· Fixed @COMPUTERNAME@ macro when creating new script from templates
· Missed TBAI module keywords coloring
File - Improved:
· File_Copy: added flush command when done in order to flush cache.
Eval - Fix:
· Removed trailing space in Eval_String when not necessary
Eval - Add:
· Eval_Reset function added
· Eval_Variable_Exists function added
UI - Improved:
· RTF_AppendText improved adding COLOR and BCOLOR blocks and possibility to specify color name taken from predefined color equates
thinDebug - Add:
· Debugger will now automatically recognize breakpoints from special Breakpoint comment in source code.
thinDebug - Fix:
· Fixed font usage in editor window. First mono space font installed was picked up. Now Courier New font is used by default.
OS - Improved:
· OS_WinGetVersionTimeline will now recognize Windows 7 and 2008 Servers versions
· OS_WinVersionText will now recognize Windows 7 and 2008 Servers versions
June 3rd, 2010· One of the biggest development steps in thinBasic development history.
· Greatly improved parser stability, huge set of fixes and improvements, some more speed, new modules, new functionalities.
February 24th, 2009· fixed important bugs introduced by recent pre-parsing improvements.
· fixed important bugs inside AND keyword when used as bitwise.
· Added new functionalities in Console module that will let developers to work with multiple console buffers. Programmers will be able to work using double buffering techniques avoiding annoying flickering when updating many screen areas.
On User Interface module:
· added ToolBar control, improved Canvas UI control, improved MLGrid control, and many other little aspects.
· Improved UI_ImageCtx module.
· Improved XPrint module.
· On thinBasic SDK interface we were able to add a long waited functionality: possibility to call thinBasic script functions having parameters from inside thinBasic modules. For those developing thinBasic modules this will open a new big area of interaction allowing creation of specific events fired and handled directly from the script source code
· ... many more enhancements
January 27th, 2009· Maintenance release to fix found bugs, improved source code checking during pre-parsing phase, a new UI control, many new UI functions
January 5th, 2009· Maintenance release to fix found bugs, improved debugger, few new UI controls
July 21st, 2008· More speed, Unions, Type Inherit, updated TBGL, updated Oxygen module.
December 28th, 2007· 3 new modules: VBRegExp module, Exe module, LAN module.
November 20th, 2006· Many new features,
· bug fixes,
· modules
September 8th, 2006· Now free with no limitations.
July 12th, 2006· · UI Add CONTROL SET LOC
· · UI Add CONTROL GET LOC
· · Core Fix If a line was ending with underscore continuation line char _ followed by space, thinBasic preprocessor was hanging.
· · catventure Core Add
· · DECLARE SUB and DECLARE FUNCTION partially working on easy defined API functions. Still many tests to be done. Gpf are too much often.
· · Core Fix If a variable declared local inside a function had the same name of a global variable, declaration was failing preventing usage of local one.
· · Core Add DECLARE SUB and DECLARE FUNCTION introduced. Declaration of a sub or function will be used to declare Windows API functions. This will allow in a future thinBasic release, to call standard API functions or external DLL functions.
· · Core Add ASCIIZ string type introduced but still to be managed.
· · Core Add App_ListFunctions returns all User Defined Functions (UDF) and API declared functions inside a script.
· · Core Fix APP_ListEquates, APP_ListKeywords were missing first item.
· · Core Add ARRAY SORT introduced
· · Core Add DECLARE statement introduced. Parsing is in place. This statement has been introduced in order to work with Windows API functions.
· · Install Fix Fixed registry key for thinAir. If keys exists, installation will not change their values.