Version 1.12

<< Click to Display Table of Contents >>

Navigation:  What's new > 2020-2024 - Version history >

Version 1.12

Date

Module

What

ID

Description

Thanks to:




 



2024/02/05

 

 

 

--- thinBasic version 1.12 ---

 

---

TBGL

Updated

 

Module updated to the latest version available on GitHub: https://github.com/ThinBASIC/thinBasic_TBGL

Petr Schreiber

---

Oxygen

Updated

 

Oxygen module updated to the latest version available on GitHub: https://github.com/Charles-Pegge/OxygenBasic

Charles Pegge

 

Inno SetUp

Setup

 

thinBasic Setup application:

compiled with Inno Setup Compiler version 6.2.2

 

 

Core

Compiler

 

thinBasic Core engine is now compiled using PB10.04

 

 

UPX

 

 

All thinBasic executables and DLLs modules are compressed using UPX 4.2.2 64bit

 

 

Scintilla

thinAir

 

Scintilla editor control updated to Scintilla 4.4.6.0: https://www.scintilla.org/

 

 






 






thinBasic version 1.12.0.0

2024/02/03

thinAir

Improved


Added mouse wheel support in MDI Tabs. When cursor is above MDI Tabs.

Mouse wheel can be used to switch from one tab to the other and select corresponding code window



thinAir

FIX


Remove flickering when switching from one MDI window to the other



thinAir

FIX


Removed Bundle options from thinAir Options dialog.
Bundle options are indicated directly inside script source code using #Bundle keyword and all its variants



thinAir

Improved


Added CallTips option while typing. It can be switched on/off from thinAir options dialog



thinAir

Improved


Added CallTips option for mouse over. It can be switched on/off from thinAir options dialog



thinAir

Improved


Calltips options is now working from thinAir option dialog and not from theme XML file



File

Improved


File_Save now have ENCODING ... option in order to specify text encoding to be written:

%FILE_SAVE_ANSI

%FILE_SAVE_UTF8

%FILE_SAVE_UTF16


2024/01/30

File

NEW


Added File_Save_Utf16 function



File

NEW


Added File_Save_Utf8 function



File

NEW


Added File_Save_Ansi function



thinAir

FIX


Fixed thinAir open file dialog when script file name or path contains accented letters

dco045


thinAir

FIX


Fixed thinBundle when script file name or path contains accented letters

dco045

2024/01/27

thinAir

NEW


Added SHIFT+ENTER auto closing for Begin ControlId / End ControlId



thinAir

NEW


Added SHIFT+ENTER auto closing for Begin Const / End Cost



thinAir

NEW


Added SHIFT+ENTER auto closing for Enum / End Enum

Petr Schreiber


thinAir

NEW


Added new script template when creating a new script: General\General_AppStartUp.xml

Petr Schreiber

2024/01/26

Core

Improved


<cHash>.Get has now an optional default value to be returned if searched key does not exists

Petr Schreiber

2024/01/23

thinAir

NEW


Added thinBasic_TypeLibrary tool under Tools\User Tools menu. It can be used to inspect registered or unregistered COM Dll


2024/01/20

thinAir

FIX


Fixed menu \File\Save As ... recent file saving now reporting correct new file saved name



File

FIX


FILE_GetDateTime fixed for long file paths/file names



thinAir

FIX


File/Open dialog not able to determine last file save date/time for long file paths/file names



thinAir

Improved


Improved File/Open script dialog.
List of recent opened thinAir files will be maintained into a specific .INI file.
File is: .\thinAir\Config\thinAir_RecentFiles.ini


2024/01/13

Core

Improved


Fixed Dir_ListArray new multiple wild cards masks removing possible duplicates

Petr Schreiber

2024/01/13

Core

Improved


<cHash>.FromJSon method accepts string elements name delimited by single quote ' too


2024/01/10

Core

Improved


Now new output format YYYYMMDDHHMMSS



Math

NEW


Added Fibonacci function


2024/01/06

Core

Improved


Return improved: it can now be used to Return from main script


2024/01/01

Core

FIX


Fixed a problem when script path and/or script file name had accented letters.

justin045, dco045

2023/12/29

CJSon

Improved


CJson internal library from Dave Gamble https://github.com/DaveGamble/cJSON updated to the last version available so far: 1.7.17 https://github.com/DaveGamble/cJSON/releases/tag/v1.7.17



CJSon

NEW


<CCJson>.IsValid method added for easier source code reading



File

NEW


Path_Fix function added



File

NEW


Path_Canonicalize function added


2023/12/27

Core

NEW


Added Enum ... End Enum statement to easily create organized numeric enumerators equates. Enum are also resolved inside thinAir for easy code completion


2023/12/15

 

 


Removed FreeBasic from thinBasic setup. Too big setup file.

If programmer wants to get advantaged from FreeBasic / thinBasic interoperability, FreeBasic can be installed separately and configured inside thinBasic compiler settings. See Compilers Setup.



Core

Improved


#Compile ... #EndCompile improved



Core

Improved


Improved \thinBasic\Compilers\thinBasic_Compilers.ini possible options.

It is now possible to add other Basic compilers other than FreeBasic, for example PowerBasic in different configurations setup

 

User is responsible to install 3rd party compilers and configure them into \thinBasic\Compilers\thinBasic_Compilers_Usr.ini configuration file.

 


2023/11/30

File

Improved


Dir_ListArray can now have multiple wild cards masks in one single call.

Programmer can now specify multiple masks separated by semi colon.

 

Example "*.dll;*.exe":

dim sFiles()    as String
dim nFiles      as Long
 
nFiles = DIR_ListArray(sFiles(), "C:\Windows\System32\""*.dll;*.exe")
array Sort sFiles()

 


2023/11/29

AppLog

Improved


"{ProcId}" Process Id added in default format for Console, TextFile, Window AppLog output



AppLog

NEW


cAppLog.ProcId read only property added


2023/11/28

Core

Improved


Improved cHash.ToString by 10x



Core

Improved


Improved cOptions.ToString by 10x


2023/11/25

Console

Improved


Waitkey can now have a text to be displayed before waiting


2023/11/23

Core

NEW


Added <cHash>.FromJSon method



Core

NEW


Added <cHash>.Clear method



Core

NEW


Added <cHash>.Exists method



Core

NEW


Added <cHash>.Merge merge together one or more cHash objects



Core

NEW


Added <cHash>.ToString method



Core

NEW


Added <cHash>.Count method



Core

NEW


Added <cHash>.Del method



Core

NEW


Added <cHash>.Keys method



Core

NEW


Added <cHash>.Add method



Core

NEW


Added <cHash>.Get method



Core

NEW


Added <cHash>.Set method



Core

NEW


Added <cHash>.Init method



Core

NEW


New data structure object cHash added.

 

Similar to cOptions object but much more flexible and easy to be used.

Elements can be defined and returned on the fly without the need to be declared.


2023/10/25

Core

NEW


Added SQuote$ function



Core

NEW


Added DQuote$ function


2023/10/17

Core

NEW


iDispatch methods and properties can now be specified using $() string interpolation allowing dynamic method / properties names be determined at runtime


2023/10/13

thinAir

FIX


Fix theme switching. Some settings didn't reset from previous theme.


2023/10/11

AppConfig

Improved


<cAppConfig>.GetKey improved with modifiers



AppConfig

NEW


<cAppConfig>.CaseSensitive property added



Core

NEW


Added <cOptions>.Merge merge together one or more cOptions objects


2023/10/09

Core

NEW


Added <cOptions>.Exists method


2023/08/19

CJSon

Improved


CJSon module is now based on latest version available of CJSon library so far: 1.7.16 https://github.com/DaveGamble/cJSON



Core

NEW


Added <cOptions>.FromJSon method


2023/08/17

Console

Improved


Improved Console_ProgressBar: added automatic Current value, Max value and percentage calculation inside the bar


2023/07/07

Core

NEW


Added App.Arg.[ArgumentName] function



Core

NEW


Added App.ArgV function



Core

NEW


Added App.ArgC function


2023/06/30

CSV



Added <cCSV>.Reset method



CSV



Added <cCSV>.Init method


2023/06/21

AdoDB

NEW


<ADODB_RecordSet>.Export.Csv method added. With few lines of code it is now possible to export a whole recordset with many CSV options specified in a single parameter.



Core

NEW


Added <cOptions>.ToString method



Core

NEW


Added <cOptions>.Count method



Core

NEW


Added <cOptions>.Del method



Core

NEW


Added <cOptions>.Keys method



Core

NEW


Added <cOptions>.Add method



Core

NEW


Added <cOptions>.Get method



Core

NEW


Added <cOptions>.Set method



Core

NEW


Added <cOptions>.Init method



Core

NEW


New data structure object cOptions added


2023/06/20

Core

FIX


AnsiToUtf8$ error in converting.
New string conversion developed: from ansi to wide to utf8 seems doing a better job


2023/06/14

AdoDB

FIX


ADODB_Recordset.CollectD fixed. Some ODBC drivers consider Date only fields as string.


2023/06/06

Core

NEW


Added Stringify() function that will accept anything inside () transforming it into a string


2023/05/31

MSXML2

NEW


HttpClient added as alias of ServerXMLHTTPRequest.
This will simplify code porting from other programming languages sources.



MSXML2

NEW


UrlUnEscape utility function added



MSXML2

NEW


UrlEscape utility function added


2023/05/29

CSV

NEW


Scan of CSV files will work with any combination of text line ending: $CR, $LF, $CRLF



CSV

NEW


Added <cCSV>.Data property added SET operation


2023/05/13

StringBuilder

NEW


Added cStringBuilderArray.Name property



StringBuilder

NEW


Added cStringBuilderArray.Size property



StringBuilder

NEW


Added cStringBuilderArray.Items property



StringBuilder

NEW


Added cStringBuilderArray.ToString method



StringBuilder

NEW


Added cStringBuilderArray.Clear method



StringBuilder

NEW


Added cStringBuilderArray.Add method


2023/05/07

StringBuilder

NEW


Added new class: cStringBuilderArray. This class permits fast string concatenation using internal array of strings growing as needed.


2023/05/06

StringBuilder

NEW


<StringBuilder>.VarPtr method added


2023/05/01

Core

NEW


Build$ function added


2023/04/30

AdoDB

NEW


<ADODB_Connection>.ExecuteCmd function to simplify Insert/Update operations when no need to return an AdoDB Recordset object


2023/04/26

Core

NEW


Hex_To_Str$ function added



Core

NEW


Str_To_Hex$ function added


2023/04/18

File

Improved


File_Append has now an optional parameter that allows programmer to set a retry count to retry appending text into a file in case of run-time error. Sometimes on slow or crowded shared/networking file systems appending data into files shared between multiple applications or too frequently append operations can produce run-time errors and text not appended. By default File_Append will now retry 5 times before giving up. Or will retry the number of times specified in new parameter


2023/04/15

UPX

Improved


UPX upgraded to version 4.0.2


2023/04/01

CSV

NEW


Added <cCSV>.Errors property



CSV

NEW


Added <cCSV>.Rows property



CSV

NEW


Added <cCSV>.Columns property



CSV

NEW


Added <cCSV>.Column.Index property



CSV

NEW


Added <cCSV>.Column.Name property



CSV

NEW


Added <cCSV>.Row.Buffer property



CSV

NEW


Added <cCSV>.Row.Count property


2023/03/27

CSV

NEW


Added <cCSV>.Column.Count property



CSV

NEW


Added <cCSV>.Data property GET



CSV

NEW


Added <cCSV>.FileName property



CSV

NEW


Added <cCSV>.Char.Remark property



CSV

NEW


Added <cCSV>.Char.Delim property



CSV

NEW


Added <cCSV>.Load method



CSV

NEW


Added cCSV Class able to manage CSV files



CSV

NEW


CSV NEW module working with CSV delimited files.


2023/03/08

SQLite

Improved


SQLite engine dll update to version 3.41.0


2023/01/31

Core

Improved


$() string interpolation can now have personalized left and right delimiters


 

Core

NEW


Added System.Info.Environ


 

Core

NEW


Added System.Info.SpecialFolder



Core

NEW


Added System.Info.ComputerName



Core

NEW


Added System.Info.UserName


2022/12/27

File

NEW


Added Path_IsUNCServer function


 

File

NEW


Added Path_IsURL function



File

NEW


Added Path_IsUNC function



File

NEW


Added Path_MakeAll function



File

NEW


Added Path_ToAbsolute function



File

NEW


Added Path_IsRelative function



LibXL

NEW


Added LibXL_Book_Sheet_Count function


2022/12/18

Core

NEW


Added Win_LoadLibrary Windows API native function



Core

NEW


Added Win_LoadLibraryA Windows API native function



Core

NEW


Added Win_LoadLibraryW Windows API native function



Core

NEW


Added Win_GetProcAddress Windows API native function



Core

NEW


Added Win_FreeLibrary Windows API native function


2022/12/03

UI

NEW


Added <DialogName>.SendMessage method



UI

NEW


Added <ControlName>.SendMessage method


2022/11/29

Core

NEW

 

Semicolon ; is now considered like a space during source code parsing.
This should help in porting other programming langiage source code to thinBasic.


2022/11/29

Core

NEW

 

Added #Define keyword that mimic C/C++ equivalent construct.

#Define will create a global numeric or string variables depending on assigned value


2022/11/14

LibXL

NEW

 

LibXL_Sheet_ReadStr function added


 

LibXL

NEW

 

LibXL_Sheet_Name_Get function added


 

LibXL

NEW

 

LibXL_Book_Sheet_Get function added


 

LibXL

NEW

 

LibXL_Book_Load function added


2022/09/30

thinDebug

FIX

 

Fixed visualization of array of UDT elements

MrHiggins

 

thinAir

NEW

 

New Nord thinAir theme


2022/09/14

UI

FIX

 

TBURL32 control will now open default browser


2022/09/13

thinBundle

NEW

 

Added #BUNDLE Manifest "ManifestXmlFileName"


2022/09/10

Core

NEW

 

RGB_GetB function added


 

Core

NEW

 

RGB_GetG function added


 

Core

NEW

 

RGB_GetR function added


 

UI

NEW

 

Win_SetWindowPos function added


 

UI

NEW

 

Win_SetProcessDPIAware function added


 

AppLog

NEW

 

cAppLog.Indent.Text property added


 

AppLog

NEW

 

cAppLog.Indent.Val property added


2022/09/06

UI

NEW

 

Canvas_GetClient function added


2022/09/05

thinAir

FIX

 

CTRL + / CTRL - keyboard accelerator fix, where removed by mistake

Primo

2022/09/01

Core

NEW

 

Evaluate$ function added


 

Core

NEW

 

Evaluate function added


2022/08/30

thinAir

Improved

 

F1 context sensitive help key over a variable will try to give help on variable type


2022/08/25

Core

FIX

 

Select Case ... Case num, num, ... not always working when Case used with multiple values


 

AppConfig

NEW

 

cAppConfig.Save method added ... still experimental


2022/08/18

thinAir

FIX

 

Fixed folding false error of Sub / Functions inside #Compiled / #EndCompiled block


 

thinAir

FIX

 

Fixed folding error for multiline strings. Folding was not counting $CRLF inside multiline


 

AppLog

NEW

 

cAppLog.Console.WaitKey method added


2022/08/17

thinAir

NEW

 

User can now Try before Use a script template when using "New" script.

 

If template has the <CanTry>1</CanTry> XML node set to 1, "Try" button will be activated and script template source code can be tested immediately from the Template dialog.

 

 

If you have nice little snippets that can be used as a template to show specific thinBasic functionality/example, please create a post in thinBasic community forum.

 

 

2022/08/16

Core

NEW

 

File_Load, File_Save, File_Exists are now also available in thinBasic Core engine too.
Those 3 functions are very often useful in scripts that do not need complete File module functions so from now on they can be called without adding File module to script

 

2022/08/03

Core

NEW

 

$() String Interpolation new feature added

 

2022/08/03

CJSON

NEW

 

<CCJson>.Print method added

 

2022/08/01

AppLog

NEW

 

cAppLog.Window.Title property GET / SET added

 

 

AppLog

NEW

 

cAppLog.Console.Title property GET / SET added

 

2022/07/18

UI

NEW

 

Win_CallWindowProc function added

 

2022/06/20

Core

Improved

 

Declared external functions in 3rd party DLLs can now have WString data type return data.
thinBasic will take care to convert WString to UTF8 thinBasic String when needed

 

 

Core

Improved

 

Declared external functions in 3rd party DLLs can now have WString data type parameters passed BYVAL.
thinBasic will take care to convert UTF8 thinBasic String to WString while passing data to external functions.

 

2022/03/28

thinAir

Improved

 

/* ... */ is now recognized as block commenting and code colored as comment

 

 

thinAir

Improved

 

// is now recognized as line commenting and code colored as comment

 

2022/03/16

Core

Deprecated

 

RAWTEXT deprecated. Please use multi line strings instead.

 

2022/03/09

thinAir

FIX

 

Fixed RAWTEXT block folding

ReneMiner

 

Core

FIX

 

Fixed RAWTEXT block buffer loading

 

2022/01/25

LibXL

NEW

 

LibXL_Book_Create function added

 

 

LibXL

NEW

 

LibXL_BookXML_Create function added

 

 

LibXL

NEW

 

LibXL_Book_SetKey function added

 

 

LibXL

NEW

 

LibXL_Book_Sheet_Add function added

 

 

LibXL

NEW

 

LibXL_Book_Release function added

 

 

LibXL

NEW

 

LibXL_Book_Save function added

 

 

LibXL

NEW

 

LibXL_Sheet_WriteNum function added

 

 

LibXL

NEW

 

LibXL_Sheet_WriteStr function added

 

 

LibXL

NEW

 

Added new LibXL module able to handle Excel files (both XLS and XLSX formats)

 

LibXL is not a free module but a module based on a 3rd library developer.

It is fully functioning but a "not registered line" will be added in Excel files
 

In order to use it without any limitation, a LibXL license must be purchased from LibXL producer at https://www.libxl.com/ and used inside thinBasic scripts.

 

If you have a license key, use it inside LibXL_Book_SetKey function in your scripts

 

 

2022/01/18

ThinBundle

Improved

 

Fixed manifest file for Bundled Exe setting correct high dpi awareness

 

 

ThinBundle

Improved

 

Changed logic for Bundled Exe Isolation Path. Now it will include executable name and a GUID in order to better identofy those bundled exe not cleaning temp files after execution

 

2022/01/07

Core

Improved

 

Now new output format 11

 

2022/01/03

AppLog

NEW

 

AppLog NEW module to be used for logging information during script execution.

 

AppLog implements cAppLog object

 

cAppLog object can log into the following logging targets:

Console

Window

TextFile

Database

SMTP

 

 

2021/10/31

UI

Improved

 

Revised thinBasic.exe manifest info

 

2021/09/27

Core

NEW

 

NewID$ function added

 

2021/09/20

Core

NEW

 

Base64_Mime_Decode$ function added

 

 

Core

NEW

 

Base64_Mime_Encode$ function added

 

2021/09/08

SMTP

Improved

 

SMTP_SendEmail and SMTP_SendHtml: message size improved to 1 Mega Byte.
Before it was 32 Kilo Bytes

 

2021/08/18

File

NEW

 

DISK_Size function added

 

 

File

NEW

 

DISK_Free function added

 

2021/08/10

Core

NEW

 

App.Data.Exists function added

 

 

Core

NEW

 

App.Data.Del function added

 

 

Core

NEW

 

App.Data.Free function added

 

 

Core

NEW

 

App.Data.Count function added

 

 

Core

NEW

 

App.Data.Get function added

 

 

Core

NEW

 

App.Data.Set function added

 

 

Core

NEW

 

App.Data.PHash function added

 

 

Core

NEW

 

App.Data.* functions added. A set of functions used to store/retrieve application data without the need to create global variables

 

2021/07/01

Core

Improved

 

<cDateTime>.ToString can now have format options

 

2021/06/30

Core

NEW

 

App.Environ.* function added

 

2021/05/19

Core

Improved

 

CodePtr function can now have up to 6 32bit parameters

 

2021/04/09

Core

NEW

 

It is now possible to declare and pass an UDT PTR as function parameters.

 

Example:
Function MyUdtUsingAPtrToMyUdt(ByVal lMyUdtPtr As tMyUdt PTR) As Long
 

Similar to pass and UDT ByRef but convenient in many situation when programmer have just a pointer to the UDT.

 

2021/04/06

UI

NEW

 

Added Win_IsWindowUnicode function

 

 

UI

NEW

 

Added SHA256HMAC function

 

 

UI

NEW

 

Added Win_DispatchMessageW function

 

 

UI

NEW

 

Added Win_DispatchMessageA function

 

 

UI

NEW

 

Added Win_GetMessageW function

 

 

UI

NEW

 

Added Win_GetMessageA function

 

 

Core

FIX

 

CodePtr function error when passing parameters to Core engine.

Parameter array declared with the wrong parameter variable type

 

 

UI

NEW

 

Added Win_DefWindowProcW function

 

 

UI

NEW

 

Added Win_DefWindowProcA function

 

 

UI

NEW

 

Added Win_GetAppInstance function

 

 

UI

NEW

 

Added Win_CreateWindowA function

 

 

UI

NEW

 

Added Win_CreateWindowW function

 

 

UI

NEW

 

Added Win_CreateWindowExA function

 

 

UI

NEW

 

Added Win_CreateWindowExW function

 

 

UI

NEW

 

Added Win_RegisterClassExW function

 

 

UI

NEW

 

Added Win_RegisterClassExA function

 

 

UI

NEW

 

Added Win_RegisterClassW function

 

 

UI

NEW

 

Added Win_RegisterClassA function

 

 

UI

NEW

 

Added Win_UpdateWindow function

 

 

UI

NEW

 

Added Win_ShowWindow function

 

2020/12/31

Core

Improved

 

Bin_To_Hex$ improved with new formatting options

 

2020/12/08

CJSON

NEW

 

Added method <CCJSon>.ParseFile

 

 

CJSON

NEW

 

Added property <CCJSon>.Path.Name

 

2020/12/07

Core

Deprecated

 

Operator . (dot) has been deprecated as string concatenation operator

 

 

CJSON

NEW

 

Added property <CCJSon>.Path.Ptr

Petr Schreiber

 

CJSON

NEW

 

Added property <CCJSon>.Path.Type$

Petr Schreiber

 

CJSON

NEW

 

Added property <CCJSon>.Path.Type

Petr Schreiber

 

CJSON

NEW

 

Added property <CCJSon>.Path.Size

 

 

CJSON

NEW

 

Added property <CCJSon>.Path.Count

Petr Schreiber

 

CJSON

NEW

 

Added property <CCJSon>.Path.Value

Petr Schreiber

 

CJSON

NEW

 

Added property <CCJSon>.Root

 

 

CJSON

NEW

 

Added property <CCJSon>.Valid

 

 

CJSON

NEW

 

Added method <CCJSon>.Parse

 

 

CJSON

NEW

 

Added CCJSon Class able to manage json files and string buffers

 

 

CJSON

NEW

 

cJSON_Path_GetValue function added

Petr Schreiber

 

CJSON

NEW

 

cJSON_Path_GetCount function added

Petr Schreiber

 

CJSON

NEW

 

cJSON_Path_GetPtr function added

Petr Schreiber

 

CJSON

NEW

 

cJSON_Path_GetType function added

Petr Schreiber

 

CJSON

NEW

 

cJSON_Path_GetTypeName function added

Petr Schreiber

2020/11/29

MSXML2

NEW

 

Added DOMDocument.SelectNodes

 

 

MSXML2

NEW

 

Added DOMDocument.SelectSingleNode

 

 

MSXML2

NEW

 

Added DOMDocument.Load

 

 

MSXML2

NEW

 

Added DOMDocument.LoadXml

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.Url

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.FilePos

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.LinePos

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.Line

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.SrcText

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.Reason

 

 

MSXML2

NEW

 

Added DOMDocument.ParseError.ErrorCode

 

 

MSXML2

NEW

 

Added DOMDocument.SelectSingleNode.Text

 

 

MSXML2

NEW

 

Added DOMDocument.SelectSingleNode.Xml

 

 

MSXML2

NEW

 

Added DOMDocument.GetElementsByTagName.Count

 

 

MSXML2

NEW

 

Added DOMDocument.GetElementsByTagName.Text

 

 

MSXML2

NEW

 

Added DOMDocument.GetElementsByTagName.Xml

 

 

MSXML2

NEW

 

Added DOMDocument.SetProperty

 

 

MSXML2

NEW

 

Added DOMDocument.GetProperty

 

 

MSXML2

NEW

 

Added DOMDocument.Text

 

 

MSXML2

NEW

 

Added DOMDocument.Xml

 

 

Console

Improved

 

Print and PrintL can now have multiple blocks of strings to print each of them having ...IN ... and ... AT ... options. Just put each block inside a () pairs.

Example:

PrintL ("Text....:" In %CCOLOR_FLIGHTCYAN)(Text In %CCOLOR_FLIGHTGREEN)

 

2020/11/24

Curl

NEW

 

Curl module now allows to perform requests using industry standard curl.exe tool.
 

 

 

Curl

 

 

Procedural interface for command line like experience:

Curl_Exists

Curl_Command

Curl_Command_GetLastOutput

Curl_Command_GetLastCommand

Curl_Command_GetLastExitCode
 

 

 

Curl

 

 

Class based interface for more structured code:

Curl_Http class with methods for request and response.

 

It allows you to specify http method, headers, payload and more!

 

Browse the Curl_Http topic for more details and examples of use.
 

 

 

Console

NEW

 

Console module can now have optional startup parameters that can be specified after Console module during USES clause.

"noalloc": will not allocate a new console window on module startup.

 

Example:

Uses "Console noalloc"

 

Programmer can then use Console_Alloc, Console_Hide, Console_Show, Console_Free to precisely control when to create/hide/show/free a console window.

 

2020/11/20

Console

NEW

 

Console_X_Enable function added.

It will allow to enable [X] close button in console window

 

 

Console

NEW

 

Console_X_Disable function added.

It will allow to disable [X] close button in console window

 

 

SDK

Improved

 

USES can now have optional information to be used by those modules using version 2 of thinBasic SDK and taking advantage of LoadLocalSymbols_V2 and UnLoadLocalSymbols_V2 SDK functions

 

2020/11/16

ADODB

Improved

 

<ADODB_Recordset>.UpdateS method has now and optional field to specify to truncate updated values to match field size

 

 

Core

NEW

 

$(StringExpression) string interpolation.
The single $ special character identifies a string literal as an interpolated string. An interpolated string is a string literal that might contain interpolation expressions. When an interpolated string is resolved to a result string, items with interpolation expressions are replaced by the string representations of the expression results.

String interpolation provides a more readable and convenient syntax to create formatted strings than a string composite formatting feature.

See example in \thinBasic\SampleScripts\General\StringInterpolation.tbasic

 

 

Core

FIX

 

APP.Process.Id fixed

 

2020/11/11

 

 

 

Added RoundNM function to round a number to the nearest multiple of ...

 

 

 

 

 

Added System.Metrics

 

 

 

 

 

Added System.Memory

 

 

 

 

 

Added System.VirtualScreen

 

 

 

 

 

Added System.Desktop

 

 

 

 

 

Added System.Monitor

 

 

 

 

 

Documented System pseudo variable

 

2020/11/09

Core

NEW

 

DWORDLONG added as alias of QUAD

replwithoutacause

2020/09/22

File

NEW

 

DIR_GetTempFileName function added

 

2020/09/03

Core

Improved

 

MD5 function now has File option used to pass a file name instead of a string buffer

 

 

Core

Improved

 

MD5 function is now much much faster

 

2020/09/02

ThinBundle

NEW

 

thinBundle will now check bundled exe file size. If AV software or other kind protection software detect something suspicious ... bundled exe file size less then 100KB can be an indication of executable corruption.

 

 

File

Improved

 

File_Move improved. Programmer can now specify to replace destination file if it exists

 

2020/08/01

thinAir

FIX

 

Clicking #Include file in Code browser failed for paths over 100 characters

 

 

thinAir

FIX

 

#Region / #EndRegion is now folded

 

 

thinAir

FIX

 

Execution of temporary scripts works again (SHIFT+F5)

 

 

thinAir

FIX

 

"With selection" / "Comment Out" and "Uncomment Out"

 

 

thinAir

FIX

 

Delays blocking thinAIR on startup and some operations fixed

 

 

thinAir

Improved

 

Using right click on #include, pointing to non-existing file, offers file creation

 

 

thinAir

Improved

 

Tooltip for UDT variables

 

 

thinAir

Improved

 

Error reporting changed from >>>>> to more specific message regarding detected block end

 

 

thinAir

Improved

 

In case multiple files are missing during thinAir start, only one summary message displayed

 

 

thinAir

NEW

 

Events code completion for dialog, button, label

 

 

thinAir

NEW

 

#includedir context menu now opens the directory

 

2020/07/22

SMTP

NEW

 

SMTP_VerifyFormat function added

 

2020/06/22

Core

FIX

 

Do / Loop Until ... error when conditional clause was simple variables due to internal binary conversion instead of logical test

DirectuX

2020/04/22

thinAir

FIX

 

.HTML template files used for process monitoring and runtime errors didn't have <meta charset="utf-8"/> statement so errors having utf-8 strings were not recognized correctly

DirectuX

2020/04/20

thinAir

Improved

 

Named controls added with CONTROL ADD ... NAME ... syntax are now identified by thinAir.
In this way named controls will have dotted notations.

 

 

thinAir

Improved

 

Dialog names created with DIALOG NEW ... NAME WinName ... syntax are identified by thinAir. Dialog names will have dotted notation autocompletion.