[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.
[INTERPRETER]
* NEW: Creating a NULL value now clears the object address field so that it can be freely interpreted as a Object value with a null address by the JIT compiled code.
[GB.JIT]
* BUG: Correctly restore stack after calling a method through the interpreter.
[INTERPRETER]
* NEW: JIT: Support for SUPER.
* NEW: JIT: Support for extern functions.
* NEW: Add a flag in Gambas functions to know if they are static or not.
[GB.JIT]
* NEW: Support for SUPER.
* NEW: Support for extern functions.
* BUG: Fix object arrays access.
* OPT: Optimization of Abs, Sgn, Int, Fix, and Pi subroutines.
* BUG: Don't close an external library if requesting an unknown symbol on
it. Why having done that?
git-svn-id: svn://localhost/gambas/trunk@7191 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add a echo button in the output console, that echoes the entered
command.
[WIKI]
* NEW: Add a HTTP server requests graph.
[INTERPRETER]
* BUG: The debugger does not change the Key property of collections when
displaying them.
* NEW: Collection.Key is writable now.
[GB.FORM]
* NEW: FontChooser: Always reset sample text at first use.
* BUG: FontChooser: Fix the behaviour when size changes.
git-svn-id: svn://localhost/gambas/trunk@6222 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: The project tree control now uses the same icons as the main project
tree view.
* NEW: Support for LCDLabel.
[EXAMPLES]
* BUG: MediaPlayer: Remove uses of the DrawingArea.Painted property.
[INTERPRETER]
* BUG: The GB.GetProperty() API has been fixed, and now use the datatype of
the property for the return value.
* OPT: Remove some useless table symbol class at class loading for native
classes that do not raise events.
[GB.DRAW]
* NEW: PaintMatrix is now creatable.
[GB.FORM]
* NEW: LCDLabel is a new control that displays its contents with sixteen
segments LCD digits.
[GB.MEDIA]
* BUG: Remove the useless MediaPlayer.Visualisation property.
git-svn-id: svn://localhost/gambas/trunk@5412 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Standardize the help text of all command-line tools.
[DEVELOPMENT ENVIRONMENT]
* BUG: Packager: library executables are installed with the '.gambas'
extension, but not the standard executables, where the extension is
removed.
* BUG: Packager: ArchLinux packager now compiles the project correctly.
[GB.FORM]
* NEW: Draw SidePanel little arrows differently.
git-svn-id: svn://localhost/gambas/trunk@5061 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Remove a useless test in the macro that returns the class of an
object.
* OPT: Some little optimization in some type checks.
git-svn-id: svn://localhost/gambas/trunk@4939 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: "Extern" functions should now work hopefully, but callbacks are still not yet implemented.
* BUG: Fix conversion Class -> Variant for non-virtual classes.
* BUG: Some minor bug fixes.
[INTERPRETER]
* BUG: Load classes from JIT should work better now.
git-svn-id: svn://localhost/gambas/trunk@4831 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Really fix use of static classes as extern function argument.
git-svn-id: svn://localhost/gambas/trunk@4801 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: Support for extern functions returning a C structure pointer.
git-svn-id: svn://localhost/gambas/trunk@4257 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix keyboard handling in editor procedure list.
[WEB SITE MAKER]
* NEW: Activate the Gambas 3 download button.
[WIKI CGI SCRIPT]
* NEW: Use a combo-box now for selecting the current version.
[GB.GTK]
* BUG: Remove some debugging stuff in the Printer class.
[GB.FORM]
* NEW: Add an "open in file manager" action in FileChooser and DirChooser
controls, when the gb.desktop component is loaded.
git-svn-id: svn://localhost/gambas/trunk@3856 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: System.GetExternSymbol() is a new static method that returns the
value of an external symbol located in a shared library.
git-svn-id: svn://localhost/gambas/trunk@3850 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: External libraries can be located inside the project. They are
automatically copied into /tmp when used.
git-svn-id: svn://localhost/gambas/trunk@3651 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Extern callbacks are now hashed through program counter, and not
stack pointer.
git-svn-id: svn://localhost/gambas/trunk@3646 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't reference the object associated with a callback twice, and do
not free it twice on exit.
git-svn-id: svn://localhost/gambas/trunk@3644 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: Handle too long path checks against archives without crashing.
git-svn-id: svn://localhost/gambas/trunk@3242 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Start trying to display a resume at the end of installation.
[INTERPRETER]
* BUG: Extern functions now can handle up to 16 pointer or string
arguments.
[GB.GTK]
* BUG: Fix a infinite recursion in drag and drop management when draging
TextBox or TextArea contents inside the same application.
[GB.QT]
* BUG: Do not propagate Drop events when there is a drop event handler.
git-svn-id: svn://localhost/gambas/trunk@3237 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix an unitialized structure field in extern functions management.
git-svn-id: svn://localhost/gambas/trunk@3119 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The interpreter compiles now when extern functions are disabled.
git-svn-id: svn://localhost/gambas/trunk@3072 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New look for version specific documentation.
[INTERPRETER]
* NEW: Assign() has been removed, and replaced by Eval() with an expression
beginning with the LET keyword.
* NEW: New routines to read a value stored at a memory address: BoolPtr(),
BytePtr(), ShortPtr(), IntPtr(), LongPtr(), SinglePtr(), FloatPtr() and
PointerPtr().
[COMPILER]
* NEW: The LET keyword can be used to write an assignment expression. Of
course it is optional.
[GB.EVAL]
* NEW: The LET keyword can be used to evaluate an assignment.
* NEW: The Expression.Compile() method does not take any argument anymore.
git-svn-id: svn://localhost/gambas/trunk@3041 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Conversion between Integer or Long and Pointer is possible now.
* OPT: A little optimizations in extern function management.
git-svn-id: svn://localhost/gambas/trunk@3040 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Make the interpreter compile correctly.
* BUG: Some fixes in callback management.
git-svn-id: svn://localhost/gambas/trunk@3039 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Print a summary of warning messages after each component
compilation.
[INTERPRETER]
* BUG: StrPtr() with a length argument now works correctly.
* NEW: Support for callbacks: when converting a function to a Pointer, an
internal closure is created with the libffi library. The pointer then can
be sent to any extern function as function pointer argument.
* BUG: Opening memory stream should work in all cases now.
git-svn-id: svn://localhost/gambas/trunk@3038 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Arrays and structures can be sent to an extern function argument.
The extern function will receive the address of the data.
git-svn-id: svn://localhost/gambas/trunk@3035 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been incremented, so all projects need to be
recompiled!
[INTERPRETER]
* OPT: Many little optimizations.
* OPT: Avoid calls to setjmp() when it is possible.
* OPT: Do not encode the stack drop inside the CALL instruction.
Executables are a bit larger, but a little speed is gained.
[COMPILER]
* OPT: Do not encode the stack drop inside the CALL instruction.
Executables are a bit larger, but a little speed is gained.
git-svn-id: svn://localhost/gambas/trunk@3013 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Many optimizations again.
* BUG: Fix an unitialized variable in string to float conversion routine.
* BUG: Handle extern functions that return a pointer.
git-svn-id: svn://localhost/gambas/trunk@3003 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version has been increased, and so all projects must be
recompiled.
[INTERPRETER]
* OPT: Objects that do not raise events do not allocate the event
management structure anymore. That save four pointers by object.
* NEW: Structure management is done, and embedded (static) structures are
handled too.
* BUG: Static array management was fixed.
* NEW: All functions synonymous whose name ends with a question mark have
been removed.
[COMPILER]
* OPT: Some optimization again.
* BUG: EXTERN declarations compile again.
[GB.DB.SQLITE2]
* BUG: Fix a misuse of GB.NewString().
git-svn-id: svn://localhost/gambas/trunk@2970 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
* BUG: Do not compile database manager anymore, it has been deprecated.
* BUG: Compile the gb.dbus component.
[INTERPRETER]
* NEW: Pointer is a real datatype now.
* NEW: Static arrays came back. They are now like real array classes,
except that they are not resizable.
* NEW: IsPointer() is a new function that tells if an expression is a
pointer.
* NEW: All XXXX?() function synonymous were removed. Use the IsXXXX()
version instead.
* NEW: Remove now useless source files.
[COMPILER]
* NEW: Static arrays came back, with actually the same syntax as before.
[EXAMPLES]
* BUG: Fix the examples according to the new array syntax.
git-svn-id: svn://localhost/gambas/trunk@2949 867c0c6c-44f3-4631-809d-bfa615b0a4ec