This document lists the most important changes made with the latest versions of HBasic

14. July 2003: version 0.9.8a
Bugfixes in database functions. Dropped create database and edit database table structure dialog. The reason is that there are to many differences in the properties of the  table and table column statements between different database types.

June 2003: version 0.9.8
Detailed description of new 0.9.8 features
  • Updated base classes for HBasic object model
  • New sheet editor dialog 

14. May 2003: version 0.9.6
Detailed description of new 0.9.6 features
- New object model to allow access to HBasic IDE and project structures
- Properties in sheet editor / sheet expressions extended by using HBasic parser and interpreter to get cell value
- Macro syntax for codeblocks that may be started with mouseclick
- 3 new windows like macro list
- Updated package manager which can display HBasic object model now

version 0.9.5
- Updated report designer
- Report designer fields use HBasic compiler and interpreter to calculate field values. This allows for example access to methods exported by shared libraries (like mathematical functions sin, log, max...)

version 0.9.4
- Updated version of access to all Qt classes with qtc support
- Updated package manager to display classes of qtc support

13. March 2003: version 0.9.3
Bugfixes and extended method and component description for shared libraries (format of *.dso files changed).

20. February 2003: version 0.9.2
Bug fixes + new resize property in property editor + MDI runtime window in interpreter.

04. February 2003: version 0.9.1
Version 0.9.1 bugfix release (+ new remote administration components which I needed for system administration + database query component).

12. December 2002: version 0.9.0
Bug fixes and debugger can now change simple values at runtime and display array values.

06. December 2002: version 0.8.9
Bug fixes and minor extensions in the debugger.

30. November 2002: version 0.8.8
Replaces old component implementation by shared libraries.
  • Existing C methods and C++ class definitions can now be integrated into HBasic much simpler than before. Therefore the libdesc program has been extended to handle classes in shared libraries.
  • Added example of package to edit users and groups

22. October 2002: version 0.8.7 
Added first version of shared library integration.
  • In previous versions it was possible to integrate new C++ functions only by creating new components. New in this release is an alpha version of functions I would like to call shared library integration. With this functions it is possible to call methods in existing shared libraries (/usr/lib/*.so) without creating any new C++ components. This should make it much easier to extend HBasic with functions implemented in this shared libraries.

07. October 2002: version 0.8.6 
Added class initialization methods.
  • This version allows the developer to set up one or more New methods within a class body which will be called for class initialization when creating a new class object. The package_manager has been extended with a new detailed view of all packages.

16. September 2002: version 0.8.5 
Added dynamic binding for interpreter and compiler.
  • Dynamic binding used in combination with overloaded methods, variables of type Object and inheritance was a missing feature because the parser could only handle static binding before. Have a look at the examples about dynamic binding to get an idea what's possible now.

02 September 2002: version 0.8.4 
Added subroutine and class handling for .NET compiler.
  • It is now possible to define and call subroutines with the net compiler. Additionally the .NET compiler can handle class definitions and simple members of classes. See examples in code_examples/netcomp.

18. August 2002: version 0.8.3
Added if-then-else and loop (for, do, while) compilation to .NET compiler.
  • Have a look at the example programs in folder code_examples/netcomp to see how loops can be used in the .NET compiler to create code for the DotGNU runtime engine.

5. August 2002: version 0.8.2

Added calls to static methods for Qt-C support
  • See the qtc_date.bas example program for a call to static method QDate.setCurrent() to read the current date. Previous versions could only call methods with a class instance like classvar.method( par ).

23. June 2002: version 0.8.1 (Build 2002_009)
Included features to integrate Qt-C bindings. This feature needs the shared Qt-C library which will be distributed in the KDE-3 kdebindings package.
  • Create instances of all types of Qt-classes and call all public Qt-methods (Widgets like buttons, labels... and unvisible like QString, QDate ...)
  • Use Enum values from the Qt-Header files in your programs
  • Have a look at the example programs in the code_examples/qtc folder

17. July 2002: version 0.8.0 (Build 2002_008)
New compiler to create .NET code from HBasic sources.
  • Added new compiler which creates .NET code from HBasic sources. NET compiler is in early state but will be extended continously in the future.
New features to integrate .NET
Have a look at Hello world examples for a comparison of this features.

23. June 2002: version 0.7.6 (Build 2002_008)
Added Html error messages.
  • This kind of error messages should give the user more information about the error than a simple popup message box and may include links to documentation pages that may help to solve the problem.

05. June 2002: version 0.7.5 (Build 2002_007)
Events may also be defined with Handles statement
  • Old definition of clicked event for button1 component: Sub button1_clicked()
  • New optional version: Sub buttclick Handles button1.clicked()

23. May 2002: version 0.7.4 (Build 2002_006)
Separated docu as own package.
  • Growing number of images in documentation makes it useful to put docu pages into a separate package.

11. May 2002: version 0.7.3 (Build 2002_005)
Included code completion
  • New code completion feature for source code editor. See screenshots page for examples.

19. April 2002: version 0.7.2 (Build 2002_004)
Added package to support Qt classes like QColor, QSize ...
  • Without this package you could only use simple types like integer, double or string as parameter when calling component methods in HBasic source code.

12. February 2002: version 0.7.1 (Build 2002_003)
Included code folding
  • New code folding feature for source code editor. Functions, classes and other structures may be reduced to a single line with a mouseclick. See screenshots page for examples.

20. December: version 0.7.0 (Build 2001_022)
Updated compiler for standalone executables
  • New features will normally be implemented for the HBasic interpreter first. This version of HBasic updates the compiler that creates standalone executables so that most of the program examples can also be compiled and executed as a standalone linux program.

15. December: version 0.6.8 (Build 2001_021)
New database form wizard
  • New automatic generation of database forms for one table.
  • Extended report designer (+ some error corrections).

10. December: version 0.6.7 (Build 2001_020)
New database GUI features
  • New SQL statement designer to edit and start SQL statements
  • New database forms to simply edit contents of database tables in GUI forms.

16. November: version 0.6.3 (Build 2001_017)
New database GUI features (see screenshots)
  • Improved version of database query designer
  • New alpha version of database report designer
  • New alpha version of report design window

20. October: version 0.6.2 (Build 2001_016)
Starting to implement printing and database reports
  • Restructure project window for reports and images

30. September: version 0.6.1 (Build 2001_015)
First new release since spring 2001.
  • Database access through QT 3.0
  • Inheritance in HBasic source classes
  • Overloading in component methods and HBasic sub declarations
  • Debugging allows setting breakpoints, executing single steps and viewing variable values in the debugger window or by moving the mouse over the variable name in the source window.
  • New variable type variant for undeclared variables or Dim .. As variant
  • New menu and toolbar editor with action model similar to QT
  • Runtime exceptions and the try statement to catch them