* NEW: Switch version to 2.99.4.
[INTERPRETER]
* OPT: Optimize a little case insensitive string comparison. Hash table
code is consequently faster.
[GB.SDL]
* NEW: Comment old Cursor class implementation.
git-svn-id: svn://localhost/gambas/trunk@4109 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Don't use glibc memcmp() to compare strings. My own routine is a
little faster according to valgrind.
* OPT: The UTF-8 String class routines Left(), Mid() and Right() have been
optimized. The positions of the first 256 characters of the last string
processed by the String class are cached.
* OPT: Some native methods can be called like any other native subroutines.
But that can be used only inside the interpreter, not in a component.
* OPT: The '&' operator is faster now when it takes two arguments only (the
most frequent case).
git-svn-id: svn://localhost/gambas/trunk@4106 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New syntax for GB.AddString() and GB.ExtendString() interpreter API.
Do not pass the string by reference anymore.
* NEW: GB.AddChar() is a new API for adding just a char to a string.
[GB.DB.SQLITE2]
* BUG: Fix ignored system call return values.
[GB.DB.SQLITE3]
* BUG: Fix ignored system call return values.
[GB.DB.NET]
* BUG: Fix ignored system call return values.
[GB.V4L]
* BUG: Remove some unused local variables.
git-svn-id: svn://localhost/gambas/trunk@4105 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Optimize some string functions by not using arguments passed by
reference.
* OPT: Integrate the "=" operator function into the main execution loop to
save one function call.
* OPT: Optimize string comparison functions on x86 and x64_64 architectures
by comparing eight bytes in one shot.
git-svn-id: svn://localhost/gambas/trunk@4104 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix compilation of function calls having more than 32 ByRef
arguments.
git-svn-id: svn://localhost/gambas/trunk@4087 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The LIKELY() and UNLIKELY() macros do nothing now, as it seems that
recent CPUs are better than humans for branch prediction.
* BUG: Error.Backtrace is accurate now.
git-svn-id: svn://localhost/gambas/trunk@4066 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Redesign the system information window and its contents.
[INTERPRETER]
* BUG: Do not leak object reference when an error is raised during an event
handler.
* BUG: When a broken symbolic link is encountered, Dir() now assumes it is
a file.
[GB.FORM]
* BUG: DirView now correctly ignores errors raised during the Icon event.
git-svn-id: svn://localhost/gambas/trunk@4035 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Abort if a native class declares the same symbol twice.
* NEW: Two more standard error messages declared in gambas.h
git-svn-id: svn://localhost/gambas/trunk@3989 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: GridView.Columns[].Expand is a new property that allows to define if
a column automatically expands to fit the GridView visible width,
provided that the GridView.AutoResize property is set. If no column has
its Expand property set, then the last column will expand anyway.
* BUG: Fix a crash in GridView when the gb.gtk component shared library is
freed.
[GB.QT4]
* NEW: GridView.Columns[].Expand is a new property that allows to define if
a column automatically expands to fit the GridView visible width,
provided that the GridView.AutoResize property is set. If no column has
its Expand property set, then the last column will expand anyway.
git-svn-id: svn://localhost/gambas/trunk@3953 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Remove the unused GB.ExistFile() API.
* NEW: Exist() now takes an additional optional boolean argument that tells
if symbolic links must be followed, like Stat().
* BUG: Fix a possible memory leak if the [...] array creation operator
fails for any reason.
git-svn-id: svn://localhost/gambas/trunk@3940 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Handle the "_property" special method in automatic completion.
[INTERPRETER]
* BUG: [...] now correctly returns a boolean array when its arguments are
all booleans.
[GB.DBUS]
* BUG: Fix a memory leak when sending a DBusVariant object.
git-svn-id: svn://localhost/gambas/trunk@3939 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Use the new special method _property to implement DBus properties.
* BUG: Settings a DBus property does not freeze anymore. But there is
memory leak yet.
git-svn-id: svn://localhost/gambas/trunk@3937 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the use of boolean in the interpreter API.
* NEW: Change the GB.New() API signature, and update all components
accordingly.
git-svn-id: svn://localhost/gambas/trunk@3846 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some little fixes (icons mainly) in several examples.
[INTERPRETER]
* NEW: Two new interpreter APIs to set and get the value of an object
property.
[GB.DEBUG]
* BUG: Fix a warning message.
[GB.FORM]
* BUG: Setting FileView Foreground and Background properties now work as
expected.
* BUG: IconView takes its Background and Foreground properties into
account now.
[GB.GTK]
* NEW: Control Background and Foreground properties are now automatically
applied to the proxy.
[GB.QT4]
* NEW: Control Background and Foreground properties are now automatically
applied to the proxy.
git-svn-id: svn://localhost/gambas/trunk@3826 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not create debugger information for code generated by form files.
Otherwise the debugger is confused.
git-svn-id: svn://localhost/gambas/trunk@3779 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use small font in editor toolbars.
[COMPILER]
* NEW: Compile form code before class code, so that error messages always
occur inside class code.
* BUG: Correctly handle errors when loading source files.
[GB.QT4.EXT]
* BUG: The cursor position is now correctly drawn with proportional fonts.
git-svn-id: svn://localhost/gambas/trunk@3771 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New web site design.
[WIKI CGI SCRIPT]
* NEW: New web site design.
[INTERPRETER]
* BUG: Remove some unused code.
* NEW: Stream got three new methods: Begin, Send & Drop. All WRITE
instructions between a Begin and Send will be merged in one bunch of data
that will be sent when Stream.End() is called. Stream.Drop() is there to
cancel that process.
* BUG: Correctly handle EINTR when writing to the SIGCHLD pipe.
git-svn-id: svn://localhost/gambas/trunk@3730 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Handle failing file deletions with an error message.
* BUG: Correctly remove action files when there is no action anymore in a
form.
[INFORMER]
* BUG: Handle failing file deletions with an error message.
git-svn-id: svn://localhost/gambas/trunk@3700 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New API to return the Gambas installation path.
[GB.SDL]
* BUG: Use the Gambas installation path to find the default font.
git-svn-id: svn://localhost/gambas/trunk@3684 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Harmonize the messages displayed when DESTDIR or ROOT is used during
compilation.
* NEW: Switch version number to 2.99.1 and bytecode version to 3.0.0.
WARNING! ALL GAMBAS PROJECTS MUST BE RECOMPILED.
[DEVELOPMENT ENVIRONMENT]
* BUG: Generated Debian packages now correctly depends on gambas3-dev and
not gambas2-dev.
[GB.QT4.OPENGL]
* NEW: Remove the GlArea.Text() method, as it may be impossible to
implement inside gb.gtk.opengl.
git-svn-id: svn://localhost/gambas/trunk@3673 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix translation dialog layout.
[INTERPRETER]
* BUG: Fix a typo mistake in an error message.
[COMPILER]
* BUG: Fix a typo mistake in an error message.
* NEW: Remove all Mk*$() functions.
[GB.FORM]
* NEW: The FileChoose/DirChooser popup menu has been redesigned.
* NEW: That popup menu has now a function to uncompress tar.gz and tar.bz2
archive files.
git-svn-id: svn://localhost/gambas/trunk@3648 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The about dialog has been redesigned.
* NEW: The system information tab in the about box now detects the current
desktop.
[GB.DESKTOP]
* NEW: The following desktops should be detected now: WindowMaker,
Enlighnement.
[GB.GTK]
* NEW: Support for screen available geometry.
git-svn-id: svn://localhost/gambas/trunk@3464 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Error raised inside form generated code are correctly displayed
again.
[INTERPRETER]
* NEW: The GB.Every() API now takes a pointer argument that will be passed
to the callback.
git-svn-id: svn://localhost/gambas/trunk@3430 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't show '$' in the dependencies combo-box of the component
property dialog.
[INTERPRETER]
* NEW: GB.Every() is a new API that allows a component to call a callback
regularly. Useful for polling something for example.
git-svn-id: svn://localhost/gambas/trunk@3429 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.
[COMPILER]
* NEW: New operators: NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.
[GB.EVAL]
* NEW: New operators: NOT LIKE, NOT BEGINS, NOT ENDS and NOT IS.
git-svn-id: svn://localhost/gambas/trunk@3407 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Enhance the import wizard. The list of conversions that are
automatically handled is in the wiki.
[WIKI CGI SCRIPT]
* BUG: Do allow '{' and '}' between '=='. But then allow lines to begin
with a slash, to escape those characters.
* BUG: Display correctly titles with a '#' inside.
[COMPILER]
* NEW: DownTo is a new keyword for decrementing For...Next loops. You can
save some "Step -1" with it.
[GB.QT4]
* BUG: Fix a reference leak with DnD operations started outside of then
application.
git-svn-id: svn://localhost/gambas/trunk@3402 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Files can be dropped from files managers to the project treeview.
They are automatically inserted into the project then.
[WIKI CGI SCRIPT]
* BUG: '{' and '}' are not interpreted anymore between '=='.
[BENCHMARKS]
* NEW: Add Gambas/Perl/Python benchmarks to the repository.
[INTERPRETER]
* NEW: A Stop instruction encountered inside a component is not ignored
anymore and stops the program.
* BUG: Fix the File.SetName, File.SetExt and File.SetBaseName methods.
[COMPILER]
* NEW: The preprocessor now undestands the False and True constants.
[GB.FORM]
* NEW: Clean up the Stock class icon loading algorithm.
* BUG: Fix the Gnome icon map.
[GB.FORM.STOCK]
* NEW: Support for svg stock icons.
[GB.QT4]
* BUG: Drag.Show() now works for DnD operations started outside of the
application.
[GB.GTK]
* BUG: Drag.Show() now works for DnD operations started outside of the
application.
git-svn-id: svn://localhost/gambas/trunk@3400 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Code indentation routine correctly handles structures now.
[INTERPRETER]
* NEW: Object.LastEventName has been deprecated, and replaced by
the Param.EventName property.
* BUG: IsFloat() is now a synonymous for IsNumber().
* BUG: Intrinsic functions description has been updated.
[COMPILER]
* NEW: "\e" is a new string escape sequence equivalent to "\x1B".
[GB.FORM]
* NEW: Use the new Control.Proxy property instead of internal observers
inside compound controls (ValueBox, ButtonBox, MenuButton).
[GB.GTK]
* NEW: Control.Proxy is a new property that allows to define a control
proxy that will handle focus, key and mouse events in original control's
place.
[GB.QT4]
* NEW: Control.Proxy is a new property that allows to define a control
proxy that will handle focus, key and mouse events in original control's
place.
git-svn-id: svn://localhost/gambas/trunk@3387 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Define preprocessor color for all highlighting themes.
[COMPILER]
* NEW: The maximum number of constants in a class is now 65536.
[INTERPRETER]
* NEW: The maximum number of constants in a class is now 65536.
git-svn-id: svn://localhost/gambas/trunk@3383 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The Val() and IsXXX() functions algorithm has been fixed. Now the
string is trimmed before being converted. Thousand separators are really
valid only to separate thousands. Extra non-space characters at the end
of the string make the conversion fail.
git-svn-id: svn://localhost/gambas/trunk@3382 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: In icon editor, the width of the selection frame now follows the
zoom level.
* NEW: Support for preprocessor highlighting.
[COMPILER]
* NEW: Integrated preprocessor. The following commands are supported:
#If <expr>, #Else If <expr>, #Else and #Endif. <expr> can be a
combination of constants (OS_LINUX, OS_FREEBSD, ARCH_X86, ARCH_X86...),
parenthesis, 'And' & 'Or' operators, version test (VERSION >= "3.0").
This is work in progress.
[GB.EVAL]
* NEW: A new highlighting color for the preprocessor.
[GB.QT4.EXT]
* NEW: A new highlighting color for the preprocessor in Editor control.
git-svn-id: svn://localhost/gambas/trunk@3374 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: '%' is a new operator that is a synonymous for 'MOD'. It has its
assignment operator shortcut '%=' too.
git-svn-id: svn://localhost/gambas/trunk@3362 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Table existence should be checked correctly now.
[GB.DRAW]
* NEW: Paint.DrawImage() is a new utility function to paint an image
easily.
[GB.QT4]
* BUG: Printer.Count is now 1 by default.
* BUG: Found a workaround to the Qt bug #5114. Now the brush matrix is
taken into account when painting on a Printer object.
git-svn-id: svn://localhost/gambas/trunk@3347 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Button to "flattr" Gambas.
[INTERPRETER]
* BUG: Fix some possible uses of unitialized values.
[COMPILER]
* BUG: Fix a possible crash when having 63 arguments passed by reference
to a function.
[GB.DB.SQLITE3]
* BUG: Detect integer primary key whatever the case used to write
"integer".
[GB.GTK]
* BUG: Page setup is enabled in printer configuration dialog now.
[GB.QT4]
* BUG: The font size of printed texts is now correct.
git-svn-id: svn://localhost/gambas/trunk@3344 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The scaring change. IsByte(), IsShort(), IsSingle(), IsString(),
IsPointer(), IsObject() and IsVariant() have been removed. IsNull() has
been kept unchanged.
* NEW: IsInteger() now returns if a string can be converted to an Integer
number.
* NEW: IsLong() now returns if a string can be converted to an Integer or a
Long number.
* NEW: IsFloat() now returns if a string can be converted to a Float, but
not an Integer or a Long.
* NEW: IsNumber() now returns if a string can be converted to an Integer, a
Long or a Float.
* NEW: IsDate() now returns if a string can be converted to a Date.
* NEW: Str(True) and Str(False) now use the translation of the "True" and
"False" string, if they exist in the current project.
* NEW: Val() now uses the translation of the "True" and "False" string, if
they exist in the current project.
git-svn-id: svn://localhost/gambas/trunk@3329 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The argument of Byte@(), Short@()... functions now can be a string.
Then the address of the string in memory is used.
* BUG: Structures allocated with the NEW operator are correctly freed now.
* NEW: READ and WRITE now can deal with structures and embedded arrays.
* NEW: Dir?() synonymous has been removed.
git-svn-id: svn://localhost/gambas/trunk@3322 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Mem$() was replaced by MkBool$(), MkByte$(), and so on.
[COMPILER]
* NEW: Mem$() was replaced by MkBool$(), MkByte$(), and so on.
* NEW: CLng(), CSng(), CVar(), CPtr() abbreviations were removed.
* NEW: CBoolean() was added.
git-svn-id: svn://localhost/gambas/trunk@3320 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Mem$() is a new function that returns a string from the internal
memory representation of a value.
* NEW: BoolPtr() has been replaced by Bool@(), BytePtr() has been replaced
by Byte@(), and so on...
* NEW: StrPtr() has been replaced by String@().
[EXAMPLES]
* NEW: Search support in the WebBrowser example.
git-svn-id: svn://localhost/gambas/trunk@3318 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly handle all compiler error messages.
[INTERPRETER]
* NEW: Full management of the Single datatype.
* BUG: VarPtr() now works on Single local variables.
* BUG: Remove useless Tag property. It is defined in the Stream class now.
* BUG: Correctly free the Tag property in the Stream class.
[GB.GTK]
* BUG: Rich-text string management has been fixed. The ampersand character,
the "&", ">" and "<" entites are correctly interpreted now.
[GB.NET.CURL]
* BUG: Remove useless Tag property. It is defined in the Stream class now.
[EXAMPLES]
* NEW: The WebBrowser example has a download manager now.
git-svn-id: svn://localhost/gambas/trunk@3296 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: File.Load() now can read special files (like those in /proc) whose
size is zero even if they are not void.
* BUG: The native method error flag is not incorrectly propagated anymore
when an error is raised.
git-svn-id: svn://localhost/gambas/trunk@3277 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix the Database example.
[INTERPRETER]
* BUG: Fix unchecked system calls.
[ARCHIVER]
* BUG: Prevent the archiver from putting the executable file into itself,
leading to a endless growing generated file.
* NEW: Files having the ".gambas" extension are now excluded from
executable archives.
[GB.DB.FORM]
* BUG: Remove the DataBrowser.Adjust property.
git-svn-id: svn://localhost/gambas/trunk@3272 867c0c6c-44f3-4631-809d-bfa615b0a4ec