thinBasic 1.11.6.0 BETA TESTING update 2020/04/19
DOWNLOAD URL: https://www.thinbasic.biz/projects/t...c_1.11.6.0.zip
Added F12 or View/Maximize Edit menu to remove almost all thinAir distractions and remain focused on code editing
Removed unnecessary tabs in output window, now only process monitor and runtime errors are there. Next will come when ready
Fixed some theming problems
Improved process monitor stability giving time to web browser control to load all its dependencies (DOM engine, javascript engine, ...) before using it.
Petr documented WCon module
Petr new calltips for TBGL
fixed bug in TBGL which could cause crash in case of window dragging.
beautified runtime error reporting and process monitoring
button to minimize / maximize panel with Process / Runtime error
insert code block did not respect cursor position
unnecessary tabs removed, kept just Process / Runtime error
unnecessary redraws of UI
stability issues in thinAir
Other minor changes
https://www.thinbasic.com/public/products/thinBasic/help/html/version_1_11_3_0_version_1_11_6_0.htm
thinBasic 1.11.5.0 BETA TESTING update 2020/04/11
DOWNLOAD URL: https://www.thinbasic.biz/projects/t...c_1.11.5.0.zip
Added process monitoring of scripts executed inside thinAir
You will be able to monitor cpu and memory of the single process
It is also possible to stop process from thinAir in case you loose control of your script.
Again improved call tips and autocompletion. Those two aspects will be improved in next releases.
https://www.thinbasic.com/public/pro...n_1_11_5_0.htm
thinBasic 1.11.4.0 ALPHA TESTING update 2020/03/29
DOWNLOAD URL: https://www.thinbasic.biz/projects/t...c_1.11.4.0.zip
Improved autocompletion for UDT.
Added support for me. using dotted notation. Me. inside and UDT recognize UDT elements
https://www.thinbasic.com/public/products/thinBasic/help/html/version_1_11_3_0_version_1_11_4_0.htm
thinBasic 1.11.3.0 ALPHA TESTING update 2020/03/23
DOWNLOAD URL: https://www.thinbasic.biz/projects/t...c_1.11.3.0.zip
Huge number of new features to test during those sad days: cDateTime, WCon, thinAir new CallTips.
Also few fixes, see in What's New in help for the list
Sorry not yet documented in details
https://www.thinbasic.com/public/pro...n_1_11_3_0.htm
To have an idea ... execute scripts in the following paths:
- \thinBasic\SampleScripts\Classes\cDateTime\
- \thinBasic\SampleScripts\WCon\
thinBasic 1.11.3.0 released for ALPHA TESTING
DOWNLOAD URL: https://www.thinbasic.biz/projects/t...c_1.11.3.0.zip
Not yet finished but there is something to test.
Beta version will follow
thinBasic 1.11.2.0 released for BETA TESTING
DOWNLOAD URL: https://www.thinbasic.com/downloads.html#downloads
List of changes: https://www.thinbasic.com/public/pro...n_1_11_0_0.htm
Didn't want to finish the year without releasing what was already almost ready to be checked and used so far.
So here we are with a new release 1.11.2
Have fun.
thinBasic 1.11.1.0 released for BETA TESTING
DOWNLOAD URL: https://www.thinbasic.com/downloads.html#downloads
List of changes: https://www.thinbasic.com/public/pro...n_1_11_0_0.htm
In this release many User Interface (UI) commands are now aware of UTF-8 strings and passed as unicode to UI windows and controls.
Still many to change but seems we are n the right road.
Check example in \thinBasic\SampleScripts\Unicode\Unicode Window Test.tbasic
thinBasic 1.11.0.0 released for BETA TESTING
DOWNLOAD URL: https://www.thinbasic.com/downloads.html#downloads
Very excited about new features.
I published the list of changes already developed but still to be documented: https://www.thinbasic.com/public/pro...n_1_11_0_0.htm
Personally ... I started to love FreeBASIC more and more during the last months.
Especially when I discovered that JoseRoca (one of my programmer idol) started to use FreeBASIC for his WinFBX project: https://github.com/JoseRoca/WinFBX
Thinking to a strategy for going out from using Power Basic as main compiler used to develop ThinBASIC, I've come to the conclusion that FreeBASIC is the best choice:
- syntax not far from Power Basic so source porting will not be a nightmare but just a matter of time
- both 32/64 bits
- rich set of functions
- nice community that recently seems revamped
- and other reasons
Porting ThinBASIC to be developed using FreeBASIC will be a long long run:
- just ThinBASIC main Core engine is about 320K lines of code! excluding include file not developed by me ... remains about 170K lines of code
- than there will be all ThinBASIC modules to recode, other 80k lines
- thinAir, other 150k lines of code
- thinDebug, other 50K lines of code
- ...
So it will take some time.
But what to do in the meantime?
Thinking on how to start I've decided to see if integration of FreeBASIC and ThinBASIC could be possible at script level in order to immediately give advantages and new features to programmers using ThinBASIC and at the same time experiment with FreeBASIC. And the following is the result of this initial integration.
In next ThinBASIC version 1.10.8, that I will release in a couple of weeks, you will see the first results of integration and interop: it will be possible to mix FreeBASIC and ThinBASIC source code into the same script and do not care about details. ThinBASIC will take care of it:
- extracting FreeBASIC code into a source code that will be compiled on the fly by FreeBASIC compiler
- producing a DLL with the same name of the ThinBASIC source code
- silently declaring exported FreeBASIC functions/subs into ThinBASIC source code in order to use FreeBASIC functions as native ThinBASIC functions
It will be even possible to create ThinBASIC compiled new modules directly from a ThinBASIC script.
First tests are very exciting.
The magic is done by a new pre-parsing directive block #Compiled and #EndCompiled used to surround FreeBASIC code inside a ThinBASIC code.
Than programmer just need to declare the functions/subs that need to be visible by ThinBASIC source code as ... CDECL ... EXPORT
The rest is automatic
Here an example of FreeBASIC/ThinBASIC integration.
Attachment 9976Code:#Compiled
sub SayHelloFromFreeBasic cdecl alias "SayHelloFromFreeBasic" (byref sMessage as zstring) export
print "Hi there. I'm FreeBASIC sub SayHelloFromFreeBasic"
print "called from DLL:", sMessage
end sub
#EndCompiled
uses "Console"
'---------------------------------------------
' Thanks to thinBASIC autodetection,
' the FreeBasic function SayHelloFromFreeBasic is discovered automatically
' and can be used as native command
'---------------------------------------------
SayHelloFromFreeBasic(Compiled_DLL_FileName)
printl "Press a key to end"
waitKey
I've already tested almost all set of numeric data types passed both ByVal and ByRef.
Also tested passing numeric arrays.
Tested asciiz strings and I'm working on dynamic string and UDTs.
After installation, please have a look at examples in \thinbasic\samplescripts\FreeBASIC\
You will find interesting things over there and we can discuss for further improvements.
Ciao
Eros