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