SourceForge Logo

Bleeding Edge

wxBasic News

May 12, 2006, Windows Preview Updated

The definitions of Move and MoveXY have been reversed, and SetSize has been renamed to SetSizeXY. The old SetSize now takes a wxSize object as its argument.

NOTE:: Changes to Move and SetSize may cause old programs to break!

Also added the Handles directive, as well as the wxGenericDirCtrl class.

February 24, 2006, Windows Preview Updated

Added the classes wxPrinter, wxPrintout and wxPrintDialogData for printer support. Also made a correction to wxStyledTextCtrl::FormatRange().

December 7, 2005, Windows Preview Updated

Added missing constant wxPATH_MKDIR_FULL.

October 28, 2005, Windows Preview Updated

Added builtin function A number of bugs related to casting values back to integers were fixed. Added the builtin functions Base(), Bin() and Oct() for displaying numbers using different numeric bases.

September 16, 2005, Windows Preview Updated

A (mostly) functional debugger has been added. Use the Trace(True) command in code to activate it, or add the -trace command to the command line.

September 8, 2005, Windows Preview Updated

Added missing methods, and fixed bug in PATH search code.

August 19, 2005, Windows Preview Updated

Added support for the wxHelpController class.

July 22, 2005, Windows Preview Updated

Fixed a number of corrections to the class code. Added missing functionality in wxCursor and wxRect.

June 14, 2005, Windows Preview Updated

Added missing wxSplitterWindow events, as well as missing SHL and SHR for the bitwise shift left and right operators.

March 28, 2005, Windows Preview Updated

Corrected code reversion which undid the destructor fix of the March 16th release. I had based the rewrite of wrap.wxb on a version that didn't include the fix from March 21.

March 25, 2005, Windows Preview Updated

Added code to properly dispose of callback event wrappers. This was causing a slow memory leak.

March 21, 2005, Windows Preview Updated

Fixed a bug that was causing strings to interpret embedded '%' characters as part of a C format instruction, which could lead to a crash. Also made changes to wrap.wxb, so the generated wrap.cpp file is more portable.

March 16, 2005, Windows Preview Updated

I reverted back to the old method of destroying objects, since the new code was causing segfaults. I also fixed a problem with the error message box - it was displaying the title instead of the error message.

March 14, 2005, Windows Preview Updated

The object destructor has been rewritten to use the C++ delete operator instead of ~. wxWidgets objects should now be destroyed correctly. The ~ syntax is also supported.
You can now initialize Static variables to default values in routines, which is a lot more convenient than checking if a value is Nothing.
There have also been a number of small changes to support internationalization, and to make compiling under *nix environments easier.

February 18, 2005, Linux Preview Updated

It's taken seven months, but I've updated the Linux preview. It's essentially the same as the Windows release, but with a few routines commented out because of compiler issues:
  • wxFTP_SetTransferMode
  • wxDateTime_GetMonthName
  • wxImageList_Replace
  • wxInputStream_Eof

I compiled it statically under Mandrake 10.1, so it should work on other distributions. If you have issues, please contact me.

February 18, 2005, Windows Preview Updated

Memory and illegal instruction errors are now trapped properly from within wxBasic. This should make much it harder to actually crash a wxBasic program. There's also an Option Stack depth, where n is the maximum stack depth. This should trap programs caught in endless loops. A bug in the text file reading code was fixed. More Unicode compliancy, plus more fixes and assorted changes.

February 2, 2005, Windows Preview Updated

Fixed a bug with Line Input and Input. They were not dereferencing the variable they held, which caused a memory leak. This could get rather large if you read a lot of files.

January 15, 2005, Windows Preview Updated

Fixed internal bug in literal code, wxGetOsVersion() to return all three values, platform handling of Current Working Directory, cast wxDialUp events, Tally, Count, and return value for wxTreeCtrl:SelectItem.

December 28, 2004, Windows Preview Updated

Lots of assorted bugfixes. wxStyledTextEvent is now typecast properly, so events from the wxStyledTextCtrl can now be handled properly. A bug in Table.Clone() was fixed, as well as in += operations on mixed datatypes. Lists and Sequences will no longer crash if there are more than 35 elements in the initializer. wxHtmlWindow is now available.

December 21, 2004, Windows Preview Updated

Corrected setting CWD if the full file name is supplied to the source file. This typically happens if you drag the file onto the executable. There were also memory deallocation bugs in wxOutputStream.Write, wxSocketBase.Write and wxSocketBase.WriteMsg.

December 17, 2004, Windows Preview Bugfix

Fixed string length calculation bugs in wxOutputStream.Write() wxSocketBase.Write() and wxSocketBase.WriteMsg().

December 15, 2004, Windows Preview Bugfix

Routines that return tuples should now work. This includes fixes to wxTreeCtrl.GetFirstChild and wxTreeCtrl.GetNextChild.

December 14, 2004, Windows Preview Bugfix

Comparison of different numeric types (i.e. integer vs. float) was wrong because of a conversion error.

November 12, 2004, Windows Preview Updated

Added wxFTP class and a number of missing wrappers.

November 11, 2004, Windows Preview Updated

Added wxWindow:ClientToScreenX() and wxWindow:ClientToScreenY() to replace wxWindow:ClientToScreen(), and the wrappers GetTextExtentWidth() GetTextExtentHeight() GetTextExtentDescent() GetTextExtentExternalLeading() to replace GetTextExtent(...)

October 3, 2004, Windows Preview Updated

The method for setting the current working directory has been changed. This should allow (among other things) bound programs to work properly when placed in directories other than the current one. If the first line of code starts with #, it will be ignored, allowing the use of the shebang in Linux. The wxHTTP class was added, and wxTreeCtrl::GetFirstChild was fixed. September 30 Fixed wxTreeCtrl::GetFirstChild to expect a long instead of a long& September 23 Added wxHTTP class. September 21 Skips first line if it starts with '#', for shell scripts

September 13, 2004, Windows Preview Updated

The classes wxSplitterEvent, wxStreamBase, wxInputStream, wxSocketBase, wxProtocol and wxURL have been added. This means that wxBasic can finally read (but not yet write) internet pages. Methods that pass a buffer and buffer length have been wrapped so that only the buffer length is passed, and wxBasic returns a String with the contents of the buffer.
Additionally, wxBasic now uses the PATH variable to search for the source file, so bound applications should work even if placed in different directories.

July 10, 2004, Linux Preview Updated

The Bleeding Edge Linux release is now current with the Win32 Bleeding Edge version, with the exception of the routines wxImageList::Replace() and wxDateTime_GetMonthName().

July 7, 2004, Windows Preview Updated

Fixed the parser so character 255 (hex #ff) isn't treated as an EOF character. Also fixed the parser so New is properly parsed when part of a method.

July 6, 2004, Windows Preview Updated

Added wxDateTime class, added single line If statement, and fixed bind.wxb so that files included via the Include statement are added to the bound file.

June 1, 2004, Windows Preview Updated

Added Option Backslash Off to prevent wxBasic from generating errors when working with non-English character sets.

April 27, 2004, Windows Preview Updated

Fixed comparison for DateTime datatype, implemented Disconnect to remove callbacks.

April 14, 2004: Windows Preview Updated

Numerous fixes for bound executables. Command line parameters reported via the Command now look the the same for bound. Bugs with bound executables under Linux have been corrected. There are also fixes for handling the current working directory properly.

Modifications that were accidentally dropped from the March 27 release have been included back in, and a number of fixes relating to callbacks and finalized objects have been implemented.

March 30, 2004: Windows Preview Updated

Added modifications accidentally dropped from the March 27 release. Objects that inherit from wxWindow are no longer finalized when the reference count drops to zero, preventing crashes when wxWidgets attempts to destroy the object later. Callbacks are no longer triggered when an application is shut down.

March 27, 2004: Windows Preview Updated

More bug fixes can be found in a Windows release on the Bleeding Edge page.

March 22, 2004: Windows Preview Updated

The latest Windows version can be found on the Bleeding Edge page. Fixes memory leaks, other sundry bugs.

January 20, 2004: Previews Updated

The latest Windows and Linux versions can be found on the Bleeding Edge page. Tables are now implemented with hash tables, so they are faster now. Other minor bug fixes.

January 6, 2004: Linux Alpha Preview

A Linux version (GTK) is now available on the Bleeding Edge page. As always, bug reports are welcome!

December 23, 2003: Alpha Preview Bugfix

Internal dictionary now uses a hash table, so startup is a lot faster. Various bug fixes, added wrappers for wxDir class.

November 23, 2003: Alpha Preview Bugfix

Fixed wxKeyEvent events, added builtin array routines Indexes, Insert, LBound UBound and Slice. Rewrote For Each iterators, and rewrote expression parser to respect binary operator precedence.

November 12, 2003: Alpha Preview Bugfix

Fixed bugs in the Table datatype.

November 10, 2003: Alpha Preview

An update of the new core. More demos included.

October 25, 2003: Alpha Preview

This is a Windows executable of the new core, linked to wxWindows 2.4.1. It works well enough to run several of the demos (included). Download and start reporting bugs!

September 18, 2003: Pre-Alpha Preview

And again, another update of the preview bleeding edge release of wxBasic. Still command-line only, this finishes up a several-month overhaul of the internal datatype system, and replacing the Try/Catch mechanish with one based on C's setjmp routine, which should make it much more robust. It's time to start filling in the missing parts and bugfixing.

August 7, 2003: Bug Fix in Bleeding Edge

A bug was found in the event routine - key events were being clasified as plain wxEvents instead of wxKeyEvents. This has been corrected, so you can now access wxKeyEvent methods such as GetKeyCode when responding to a key event. (Only fixed on the Windows version, sorry).

July 6, 2003: Pre-Alpha Preview

Still another update of the preview release of wxBasic. Cleaning up some stuff in the objects. The keywords Virtual and Abstract have been added, for those with a need to create abstract classes with abstract methods. Added Option Strict for those who want more complaints than Option Explicit provides. See the bleeding edge page.

June 24, 2003: Pre-Alpha Preview

Another update of the preview release of wxBasic. Lots of bug fixes, lots of bugs left to fix. As usual, see the bleeding edge page.

June 17, 2003: Pre-Alpha Preview

The next preview release of wxBasic. Less buggy, more filling! Still command-line only, classes seem to work this time (more or less). Keep those bug reports coming in! You'll find it in the usual spot.

June 8, 2003: Pre-Alpha Preview

A preview of the "next generation" of wxBasic is now available here. This is a command-line only version, with no GUI support. It still crashes and burns, so it's probably only of interest to a diehard few. Here's a partial list of what's new:

  • Virtually a complete rewrite of the original source
  • Generates bytecodes similar to Lua 4.0
  • Copy on write strings
  • Reference count driven garbage collection
  • User defined classes
  • Try/Catch exception handling
  • List and Table datatypes

February 17, 2003: Bleeding Edge Windows Update

The Windows bleeding edge binary has been posted. Check out the log file to see what's new. The updated version of Freecell makes it all worthwhile. ;-)

January 7, 2003: Bleeding Edge Linux Update

After long neglect (thanks to the birth of my daugther Fiona), I've updated the bleeding edge binaries. This fixes a bug in Instr and adds a number of missing methods to wxMenu. There were some hacks to wxList, but unfortunately those don't work.

September 27, 2002: Bleeding Edge Linux Update

The Linux bleeding edge binary has been posted. Please report any problems with either bleeding edge version, as these are both release candidates.

September 19, 2002: Bleeding Edge Update

Lots of assorted changes in the newest bleeding edge:

  • Pointers are now returned as strings, not numbers
  • Working IDE prototype
  • wxHelpFileController added
  • wxFindReplaceDialog added
  • Current working directory logic rewritten
  • A number of bad pointers were fixed
  • wxWindows methods that return non-pointers work correctly

I need to bang on it some more, especially in light of the pointer representation change. But I'm not planning on adding any more features to the next release.

August 22, 2002: Bleeding Edge Update

The latest bleeding edge fixes bugs in numeric comparisons, Mid$ and LTrim$.

A new version of the bind program - compile.wx - combines the old bind and shroud programs, fixes a number of bugs, and sports a GUI interface. (Expect the name to change in the official release).

Finally, a number of new dialogs are added, including:

  • wxGetColorFromUser()
  • wxFileSelector()
  • wxGetNumberFromUser()
  • wxGetPasswordFromUser()
  • wxGetTextFromUser()

As usual, check out the log file for details.

August 11, 2002: wxBasic Forum Created

Due to overwhelming demand, I've created a forum for wxBasic, accessible through the link on the side panel. This may force me to start using frames on this site. Sigh

If you are having trouble using the forum, send me an email.

August 6, 2002: Bleeding Edge Update

Added the missing string functions Replace and Tally. Most of the missing functions are now operating system dependant, such as Dir and DirExists. They should probably be handled via wxWindows anyway...

July 15, 2002: Bleeding Edge Update

This features a minor bugfix to initialize image handlers, as well as an Input statement (command line version only!).

An updated version of the manual was also released, with documentation on supported OpenGL routines.

April 10, 2002: Version 0.52 (Basidium-X) Released

The main features in this release is support for OpenGL. The code is undocumented, but most of the OpenGL routines (not GLUI or GLUT, just OpenGL) are supported in Linux and Win32.

There are also a number of fixes that should have gotten into 0.51, but didn't.

March 12, 2002: Version 0.51 (Waltzing Inertia) Released

It's been a two month delay, but I've finally released an update. Additions include:

  • New file functions
  • New bitwise functions
  • The usual bugfixes
For some reason the Linux version of StarOffice doesn't want to read the sxw file I created under Windows, so the documentation is probably going to trail by a couple days until I get this figured out. Sorry for the delay. In the mean time, check log for details.

December 27, 2002

In the grand tradition of releases gone bad, the Linux binary package had mangled the... binary. Sigh. This has hopefully been fixed.

December 26, 2001: Version 0.50 (Partially Hydrogenated) Released

In addition to the slew of minor bugfixes, here's a partial list of some things in this release:

  • Case sensitivity. With the exception of keywords, wxBasic now cares about the difference between ThisVariable and thisvariable. The sample programs on the Applications have been rewritten.
  • Forward references. This means you can reference routines before they have been explicitly declared.
  • Builtin String Routines Fixed. Many of the builtin string routines had errors, ranging from minor to massive. Many problems have now been corrected.
  • Support for wxColourData has been added. The Scribble demo uses the Color Picker.
  • Command() has been fixed to work properly with bound files.

December 12, 2001:

When they tell you to be careful flashing your motherboard's bios, they aren't kidding. My development machine is temporarily on the fritz, so development has been slowed a bit.

  • Roberto Artigas Jr. has gotten wxBasic to compile using MS VC++. I'll be adding the code changes to the next release. This is especially good news for the Mac port.
  • Dimitri has volunteered to work on the Mac port (sorry, I lost his last name in the bios fiasco).

November 29, 2001:

  • Uploaded the files to Sourceforge again. The prior upload had not been in binary mode, so the files were corrupted.

November 27, 2001:

  • Redesigned site. Hopefully things are easier to find.
  • Released a new bleeding edge version.

November 24, 2001: Version 0.41 (Green Aphid) Released

  • Added more constants - wxBLACK, xRED_BRUSH, etc.
  • For loops can now alter the index variable
  • Corrected precedence of operators
  • Console scrolls text off top
  • Added routine for shrouding (mangling) source code.
  • Arg order on Instr corrected.
  • Fixed FreeFile, offset was off by 1.
  • GetByte is replaced with ReadByte, added WriteByte.
  • Single files can be bound into executables.
  • If first line starts with '#', it is ignored.
  • Dynamic arrays now use binary searches.
  • Added Erase for erasing arrays/removing elements.
  • Added expr In array operator, tests if key is in dynamic array.
  • Fixed bug in Print when there are no args.
  • Added Command$ to return command line args.
  • Added Loc (file position) and Lof (length of file).
  • Added += style operators.

November 19, 2001:

  • Released source of the latest 'bleeding edge' version.
  • Added Freecell demo binary.
  • Updated Freecell demo source.

November 10, 2001:

  • Corrected displayed size of Linux binary from 224K to 1.4M.
  • Added "What's Next" section

November 7, 2001:

    Site now hosted by SourceForge.

November 6, 2001:

    Linux release verified to work under Red Hat 7.2, Mandrake 8.1 and DemoLinux 3.0.

October 30, 2001: Version 0.33 (Pumpkin Patch) Released

  • Added Mines and Freecell demos.
  • Added classes wxImage, wxFont, wxTimer and wxTimerEvent.
  • Added Awk-style associative lists. These can take numeric and string indexes.
  • Added Seek and GetByte to builtin file routines.
  • Fixed Rnd to return better random numbers.
  • Fixed Randomize so seed is optional.
  • Added Floor, same as Fix.
  • Fixed current working directory bug.
  • Added Option NoConsole to prevent console from appearing.
  • Added Common statement for declaring global variables.
  • Added builtin graphic constants.
  • Added more builtin functions.
  • And and Or short-circuit.
  • Added bitwise | operator.
  • Fixed bug in Exit Sub in callbacks.
  • Added Indexes, returns bounds of an array.

October 8, 2001:

  • Executables compressed using UPX.

October 3, 2001:

  • Runs under Linux.
  • Fixed LTrim.
  • Fixed string comparison bug.
  • Fixed Space.
  • wxWindows constants are now built into code.
  • Runtime errors now display errant line number and code.
  • Updated to wxWindows 2.3.1

Last updated on Friday, May 12, 2006