[COMPILER]
* OPT: Some optimizations in symbol table routines.
* NEW: Emit column position in almost all error messages. It makes the compiler 2.5% slower, even with the optimizations.
[COMPILER]
* NEW: Rename a macro constant to avoid a symbol clash when compiling the interpreter.
[INTERPRETER]
* NEW: Get rid of a macro trick in 'gbx_eval.h' header.
[GB.EVAL]
* NEW: Highlight: Add three new color constants for syntax highlighting: Escape, Label and Constant.
* NEW: Rename some source files.
* NEW: Rename some constants.
* NEW: Gambas syntax highlighter now use the three new contants for escape characters in strings, for labels, and for language contants (True, False, Null, +Inf and -Inf).
[GB.EVAL.HIGHLIGHT]
* NEW: Support for the new syntax highlighting color constants.
[GB.FORM.EDITOR]
* NEW: Support for the new syntax highlighting color constants.
* NEW: UNSAFE is a new keyword used in conjunction with FAST. It tells the JIT compiler not to do any safety check (null objects, division by zero, out of array bounds...). It makes the code a bit faster, but prone to segmentation fault.
[INTERPRETER]
* NEW: Support for the UNSAFE keyword.
[GB.JIT]
* NEW: Support for the UNSAFE keyword.
* NEW: Check validity of objects that can be invalid.
[INTERPRETER]
* OPT: String routines are now compiled with -O3.
* NEW: Don't display JIT debugging message unless GB_JIT_DEBUG is set to something different from zero.
* NEW: String whose length is greater than 256 now have a growth step of 256 bytes instead of 16.
[GB.JIT]
* NEW: Do many global optimizations as now the class metadata is fully available.
* NEW: Support for optional argument. Still buggy at the moment.
[COMPILER]
* NEW: Internal initialization functions now can be JIT translated.
* NEW: Support of subroutine calling completed. Interpreter subroutines are called if there is no optimization implemented in the JIT translation.
[INTERPRETER]
* NEW: Remove old JIT stuff.
[GB.JIT]
* NEW: Use 'gambas.h' and 'gb.jit.h' to compile translated code.
* NEW: Get rid of the new warnings.
* NEW: Support for arguments without a datatype in function signatures.
* NEW: [ALT] + any brace character is a new editor shrotcut that add or
remove braces around the current word. Same thing for [ALT] + [<] or [>].
* NEW: Property editor: Add a clear button. Replace the MenuButton by a
normal ComboBox.
[INTERPRETER]
* NEW: Support for the new '*.list' file format.
[COMPILER]
* NEW: New '*.list' file format that marks classes having static elements.
* NEW: A warning is emitted when a class having static elements is
overriden by a declaration. This is suspicious.
* NEW: A symbol in a local variable declaration, or a global variable or
property declaration can now be surrounded by braces to prevent a
possible warning.
[GB.FORM]
* NEW: Get rid of the new warnings.
* NEW: TabPanel[].Closable is a new property that defines if a specific tab
has a close button.
[GB.FORM.MDI]
* NEW: Workspace: Try to minimize flickering during resizing. Not very
successful.
git-svn-id: svn://localhost/gambas/trunk@6838 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix a typo in an offline help message.
* NEW: The option dialog was reorganized so that user identity information
has itw own panel.
* NEW: The user identity is now written inside translation files.
[COMPILER]
* NEW: Write meaningful information in generated translation files.
[GB.FORM]
* BUG: Wizard: Fix the layout of wizard step titles.
* NEW: Add a new icon named 'identity'.
[GB.FORM.STOCK]
* NEW: Add a new icon named 'identity'.
[GB.WEB]
* BUG: The deprecated URL.Encode() and URL.Decode() functions now correctly
call URL.Quote() and URL.Unquote().
git-svn-id: svn://localhost/gambas/trunk@6503 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Write in the bytecode file if a function uses the IsMissing() native
routine.
[INTERPRETER]
* OPT: Don't use a stack slot for missing arguments if the IsMissing()
function is not used.
git-svn-id: svn://localhost/gambas/trunk@6274 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update copyright year to 2013.
[GB.FORM]
* NEW: ImageView is a new control that allows to view an image inside a
scrolled view, at different zoom levels.
* BUG: FileProperties now works correctly if 'gb.desktop' is not used.
* NEW: The FileProperties preview tab now uses an ImageView control and has
a toolbar to zoom the preview.
* BUG: Add the 'linux' and 'gnu' icon in the stock icon list.
git-svn-id: svn://localhost/gambas/trunk@5770 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly initalize the help browser layout.
* NEW: Use the new Image.Fuzzy() method to draw a drop shadow in the
welcome screen text.
[COMPILER]
* NEW: The GB_PCODE_VERSION environment variable can take 'X.YY' as version
instead of 'X.YY.ZZZZ', which is actually useless.
[GB.COMPRESS]
* BUG: Remove useless code never compiled.
[GB.DBUS]
* BUG: Fix a possible memory leak in a debugging routine.
[GB.GSL]
* BUG: Remove useless code never compiled.
[GB.GTK]
* NEW: Implement a cairo surface cache in the Image class, so that drawing
the same image several times trigger a GdkPixbuf -> Cairo surface
conversion once.
* BUG: Slider and Scrollbar controls now raise the Change event only if the
value has really changed.
[GB.NET]
* BUG: Remove useless code never compiled.
[GB.NET.CURL]
* BUG: Remove useless code never compiled.
[GB.NET.SMTP]
* BUG: Remove useless code never compiled.
[GB.V4L]
* BUG: Remove useless code never compiled.
git-svn-id: svn://localhost/gambas/trunk@5489 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The GB_PCODE_VERSION environment variable tells the compiler to use
a different bytecode version that the current one. Use that hack only if
you know exactly what you are doing.
git-svn-id: svn://localhost/gambas/trunk@5488 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the help comments integrated into the *.info files by
the compiler.
* NEW: Use the help comments stored in libraries and display them in them
help tooltips.
* BUG: Remove duplicates in the automatic completion list.
* BUG: The symbol syntax displayed in the help now correctly follows the
"Keywords in uppercase" setting.
* NEW: Class help comments are now help comments located at the beginning
of the source file that starts with three quotes and a space: `''' `.
[COMPILER]
* NEW: Support for help comments on public symbols. They are automatically
integrated into the *.info information files.
git-svn-id: svn://localhost/gambas/trunk@5311 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for variable number of arguments in extern functions.
* BUG: Fix use of static classes as extern function argument.
[COMPILER]
* NEW: Support for variable number of arguments in extern functions.
[GB.JIT]
* BUG: The GB_JIT environment variable has really no effect if it is
defined but a null string.
git-svn-id: svn://localhost/gambas/trunk@4796 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Handle the FAST keyword in function declaration.
[COMPILER]
* NEW: Each function can be declared individually FAST. The keyword must be
the first one on the line.
[GB.EVAL]
* NEW: Handle the FAST keyword in function declaration.
git-svn-id: svn://localhost/gambas/trunk@4769 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Switch to JIT compiler if available, and make it able to talk to gb.jit.
* BUG: GP must be NULL for new void stack frames.
[COMPILER]
* NEW: 'Fast' keyword means the class should be JIT-compiled.
[GB.JIT]
* NEW: JIT Compiler.
git-svn-id: svn://localhost/gambas/trunk@4759 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: Object file format has changed, so bytecode version has been
incremented, and all projects must be recompiled. Yes, again!
[INTERPRETER]
* OPT: Optimizations in comparison operators.
* OPT: Optimize symbol lookup tables.
[COMPILER]
* OPT: Optimize symbol lookup tables.
[GB.EVAL]
* BUG: Gambas source code is correctly highlighted again.
* NEW: Quoted identifiers (those between '{' and '}') are highlighted more
intelligently now.
git-svn-id: svn://localhost/gambas/trunk@2971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: More work on structure support.
* BUG: Fix optimization in error management.
[COMPILER]
* OPT: More optimizations. The Gambas 3 compiler is faster to compile the
Gambas 3 IDE than the Gambas 2 compiler to compile the Gambas 2 IDE,
which is smaller!
* NEW: Do not compute variable position and size, as it is done by the
interpreter anyway.
[GB.EVAL]
* NEW: Use the same optimizations as the compiler in the parser.
[GB.XML.RPC]
* BUG: The component compiles again.
git-svn-id: svn://localhost/gambas/trunk@2964 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New GB.NewZeroString() API to create a Gambas string from a
null-terminated string. Components were modified to use it.
* OPT: Many optimizations everywhere.
[COMPILER]
* OPT: Many optimizations. The compiler should be noticeably faster.
git-svn-id: svn://localhost/gambas/trunk@2953 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The bytecode version has been incremented, as the object file format
has changed.
[DEVELOPMENT ENVIRONMENT]
* BUG: Handle static arrays in automatic completion.
[INTERPRETER]
* BUG: Handle public static arrays correctly.
[COMPILER]
* NEW: Handle structures, and write them inside object files.
* NEW: Class options (EXPORT, CREATE...) can only be written at the
beginning of the source file now.
* BUG: Fix some use of uninitialized values.
* BUG: Correctly write public static arrays in *.info files.
* NEW: Do not support old OPEN syntax anymore.
git-svn-id: svn://localhost/gambas/trunk@2952 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for translated compiler error messages.
* NEW: French translatio of compiler error messages.
[COMPILER]
* BUG: Fix many error messages so that they are easily translatable.
* NEW: A new option, "-e", to output translatable error messages instead of
full ones.
git-svn-id: svn://localhost/gambas/trunk@2346 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Do not use "boolean" anymore. Use "bool" instead.
[COMPILER]
* NEW: Do not use "boolean" anymore. Use "bool" instead.
git-svn-id: svn://localhost/gambas/trunk@2091 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Project source files are now stored in the ".src" project
sub-directory.
* NEW: Project source files can be organized from the project treeview by
creating directories, moving source files with drag and drop or copy and
paste.
* NEW: The hall of fame now uses some sort of blur effect.
* BUG: The breakpoint list should be accurate in all situations now.
* NEW: Showing the bottom status bar is now an entry in the "View" menu.
[INTERPRETER]
* BUG: Fix a possible crash in database component classes having
sub-collections, like Result.Fields.
[COMPILER]
* NEW: Support for projects whose sources are stored in the ".src"
sub-directory.
[GB.GTK]
* BUG: Frame.Font now works correctly.
* BUG: If the Control.Font property is set with a family name, the other
boolean properties of the font are reset.
[GB.NET]
* BUG: Fix a possible crash in the Socket class at connection.
[GB.QT]
* BUG: If the Control.Font property is set with a family name, the other
boolean properties of the font are reset.
[GB.QT4]
* BUG: If the Control.Font property is set with a family name, the other
boolean properties of the font are reset.
* NEW: TreeView and ColumnView got a new property, ParentKey, that returns
the key of the current item parent.
* BUG: Menu shortcuts are correctly disabled now, when a parent menu is
disabled.
git-svn-id: svn://localhost/gambas/trunk@2063 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Actions lists are now written directly in *.form files. The
compiler will copy them into *.action files in the '.action' project
directory.
[WIKI CGI SCRIPT]
* NEW: The "?view" argument in URLs is now kept through links.
[INTERPRETER]
* BUG: Paths beginning with "../" now work correctly with executables.
* BUG: Fix a crash when using Dir() on relative paths.
[COMPILER]
* NEW: Now the compiler automatically generates *.action files from the
*.form file contents.
[GB.FORM.MDI]
* BUG: Support for the new action file format in the action configuration
dialog.
* BUG: Bad shortcuts are correctly handle in the action configuration
dialog now.
git-svn-id: svn://localhost/gambas/trunk@1782 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Some clean-up in the acinclude.m4 file.
[DEVELOPMENT ENVIRONMENT]
* NEW: Small changes in the project property dialog layout.
* BUG: When opening a project, the packager information is correctly reset.
[WIKI CGI SCRIPT]
* NEW: Simplified chinese translation updated.
* NEW: Support for albanian language.
* NEW: New web site look.
[INTERPRETER]
* BUG: Really really fix the bit manipulation functions.
* NEW: Support for types object arrays. For example: Label[] for an array
of Labels.
[COMPILER]
* NEW: Support for types object arrays.
* BUG: Do not store the source file full path into object files, so that
rmplint does not cry.
[GB.GTK]
* BUG: Fix the tray icon management. Now GTK+ icons work on Gnome and KDE,
and are fully transparent!
* BUG: Tray icons are correctly refreshed when the icon is changed.
[GB.QT]
* BUG: Fix the menu shortcut management.
* BUG: Tray icons are correctly refreshed when the icon is changed.
git-svn-id: svn://localhost/gambas/trunk@1529 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix some use of boolean value incrementing.
[INTERPRETER]
* BUG: Class declared with the 'Class' keyword are alwyas global.
* BUG: A stupid hack in gb.db requires that the value is always stored
just after the datatype in the VALUE and GB_VALUE structures.
[COMPILER]
* BUG: Class declared with the 'Class' keyword are alwyas global.
[GB.DESKTOP]
* NEW: Desktop.Passwords is a new property that allows to store and
retrieve passwords in the KDE wallet or the GNOME keyring, according to
the running desktop. Only KDE and GNOME are supported. I don't know if
XFCE has something equivalent...
[GB.DESKTOP.GNOME]
* NEW: This new component is automatically loaded by gb.desktop when the
GNOME keyring is requested.
[GB.FORM]
* BUG: Fix some use of boolean value incrementing.
[GB.FORM.MDI]
* NEW: The Workspace popup menu now sort the windows by title.
[GB.QT]
* NEW: XEMBED support was upgraded to the 1.3 version of QtXEmbed classes.
* BUG: Fix some use of boolean value incrementing.
git-svn-id: svn://localhost/gambas/trunk@1373 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The form editor has a new menu entry for transforming a control
into another control. For example, a Label into a TextLabel, or a HBox
into a VBox, and so on. The possible transformations are defined in the
*.component file.
* BUG: Compiler errors that are not related to the compiled code are now
correctly displayed.
* BUG: Locked forms are correctly loaded, and the form tab title now
correctly shows the associated read-only state.
* BUG: The automatic completion can deal with multiple local variable
declarations on the same line now.
[INTERPRETER]
* BUG: Array.Insert() does not crash anymore if the inserted array is
NULL. It raises an error now.
[COMPILER]
* BUG: The owner and group of all files generated by the compiler
('.startup', '.info', '.list', object files) are now set to the owner and
group of the '.project' file. This way, any project can be safely
compiled as root, without locking it for other users.
git-svn-id: svn://localhost/gambas/trunk@1369 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Revert strlcpy/strlcat/snprintf, they are not really needed, and introduce potentially more bugs.
git-svn-id: svn://localhost/gambas/trunk@1080 867c0c6c-44f3-4631-809d-bfa615b0a4ec
[CONFIGURATION]
* NEW: 64 bits port.
[EXAMPLES]
* BUG: Fixed the AnalogWatch example.
[WIKI CGI SCRIPT]
* NEW: Some little cosmetic changes.
[INTERPRETER]
* NEW: The extern function implementation has been redesigned and is now
based on libffi, so that it works on 64 bits system. Because of a flaw in
the compiler design, projects that use the Pointer datatype must be
recompiled to be used on a 64 bits system. This flaw will be fixed in
Gambas 3.
* OPT: Put some tables into read-only memory. About 1000 bytes are saved
for each running interpreter, except the first one.
* BUG: Does not crash anymore if a component cannot be loaded.
* NEW: Spanish translation updated.
* NEW: A new interpreter API for returning a pointer.
[COMPILER]
* BUG: Correctly compiles LONG constants inside code.
[GB.DEBUG]
* BUG: Compiles and links the gb.debug components with the thread
libraries.
[GB.DB.SQLITE3]
* BUG: Getting the primary index of a table without primary index is safe
now.
[GB.GTK]
* BUG: Modified the GLib priority of watched descriptors, as the main loop
could enter in a loop in which user interface events were not managed.
* BUG: Message boxes use application title without crashing now.
[GB.OPENGL]
* BUG: Disable dead code.
[GB.QT.EXT]
* BUG: TextEdit.TextWidth and TextEdit.TextHeight were not declared as
read-only properties.
[GB.XML.XSLT]
* BUG: XSLT class is now declared as being not creatable.
git-svn-id: svn://localhost/gambas/trunk@1006 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Try to detect correctly all X11 linking paramters.
[64 BITS]
* NEW: Start to remove all ambiguous datatypes.
[DEVELOPMENT ENVIRONMENT]
* NEW: The gambas2 project was renamed to gambas3.
* BUG: The completion and signature font sizes are now the default one.
* NEW: Add support for Basque language.
[WIKI CGI SCRIPT]
* BUG: The symbol pages work again, and inheritance between class belonging
to different components now is taken into account correctly.
[SCRIPTER]
* NEW: The gbs2 project was renamed to gbs3.
git-svn-id: svn://localhost/gambas/trunk@914 867c0c6c-44f3-4631-809d-bfa615b0a4ec