[INTERPRETER]
* NEW: Formatting a date with 'gb.Standard' now uses 'gb.MediumDate' concatenated to 'gb.MediumTime', as 'gb.GeneralDate' now is a different format.
* BUG: Str() now uses gb.Standard to format dates, so that Val() and IsDate() can understand them.
[INTERPRETER]
* NEW: WAIT NEXT is a new instruction that waits for the next event and process it.
[COMPILER]
* NEW: Support for the new WAIT NEXT instruction.
[GB.GTK]
* NEW: Support for the new WAIT NEXT instruction.
[GB.GTK3]
* NEW: Support for the new WAIT NEXT instruction.
[GB.QT4]
* NEW: Support for the new WAIT NEXT instruction.
[GB.QT5]
* NEW: Support for the new WAIT NEXT instruction.
[INTERPRETER]
* NEW: '_read' and '_write' are two new special methods that allow to make any object serializable by the READ and WRITE instructions.
* NEW: Rename macro that convert a Gambas stream object to the internal stream structure and add a macro that does the reverse conversion.
[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.
* NEW: Finish the redesign of the debug panel.
[INTERPRETER]
* BUG: Fix a stack mismatch leading to a crash in Eval() when an "Unknown symbol" error occurs.
[GB.FORM]
* BUG: SidePanel: The Hide event is now raised after the SidePanel has been actually hidden.
git-svn-id: svn://localhost/gambas/trunk@7754 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Update chinese translations.
[EXAMPLES]
* NEW: Add screenshots, switch to 1.0 version, and publish.
[INTERPRETER]
* NEW: Allow WAIT to raise errors.
[GB.DESKTOP]
* NEW: DesktopWindow.Geometry is a new property that returns the geometry
of the window inside as a rectangle.
* NEW: DesktopWindow.Frame is a new property that returns the geometry
of the window outside (with the frame) as a rectangle.
* NEW: DesktopWindow.GetScreenshot() is a new method that returns a
screenshot of a window, with or without the frame.
* BUG: DesktopWindow X, Y, Width and Height properties return the window
geometry without the frame.
[GB.GTK]
* NEW: Raise an error if WAIT is called during a keyboard event.
[GB.GTK3]
* NEW: Raise an error if WAIT is called during a keyboard event.
[GB.QT4]
* NEW: Raise an error if WAIT is called during a keyboard event.
git-svn-id: svn://localhost/gambas/trunk@6746 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The process child errors raised before the exec() system call are
now catched in a separate function called by the compiler explicitly
after a SHELL or EXEC assignment.
[COMPILER]
* NEW: SHELL and EXEC assignments now call an hidden subroutine just after
the assignment to immediately check for a possible child error.
git-svn-id: svn://localhost/gambas/trunk@6681 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for the new USE instruction.
[COMPILER]
* NEW: A class header now can include USE "xxxx" declarations, where "xxxx"
is a component name. It means that the specified component will be loaded
when the class is initialized, the first time it is loaded.
git-svn-id: svn://localhost/gambas/trunk@6648 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix array creation operator when it has no arguments.
[INTERPRETER]
* BUG: Fix array creation operator when it has no arguments.
git-svn-id: svn://localhost/gambas/trunk@6114 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix maximum number of array declaration in the same class.
* NEW: Array and Collection constructor operator [ ... ] now can take any
number of arguments. It is only limited by the maximum function size,
which leads for example to about 32000 elements for a short array.
git-svn-id: svn://localhost/gambas/trunk@6110 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: Handle errors occuring while waiting for a process correctly now.
* NEW: Process.Wait() now can take an optional timeout argument, in
milliseconds.
* BUG: Handle errors occuring while waiting for a task correctly now.
git-svn-id: svn://localhost/gambas/trunk@5102 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Add support for double-linked lists in the interpreter API.
* NEW: GB.Wait() is a new API that waits for a specific number of
milliseconds, exactly like the WAIT instruction (i.e. the event loop is
run).
* NEW: GB.HasForked() is a new API that warns the interpreter that fork()
has been called (he has to do some stuff).
* NEW: Remove the GB_POST_FUNC datatype from the API.
[GB.DBUS]
* BUG: Fix some compilation warnings.
[GB.TASK]
* NEW: gb.task is a new component that allows to run background tasks by
"simply" forking the interpreter. Communication between the task and the
main process has not been implemented yet.
git-svn-id: svn://localhost/gambas/trunk@5076 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Allow to profile time spent waiting for events.
[GB.DEBUG]
* BUG: New profile file format that allows to profile lines of code that
are function calls.
[GB.GTK]
* NEW: Profile time spent waiting for events.
[GB.QT4]
* NEW: Profile time spent waiting for events.
git-svn-id: svn://localhost/gambas/trunk@4747 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise errors when running an external process fails.
git-svn-id: svn://localhost/gambas/trunk@4628 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: LINE INPUT does not try to incorrectly release its stream argument
anymore when there is no stream argument.
* OPT: A little optimization in Space$(), Upper$() and Lower$().
* OPT: EXEC / SHELL ... TO does not return the process output through a
temporary string that will be freed later. If the string is big, then
the memory is retained longer than necessary.
git-svn-id: svn://localhost/gambas/trunk@4509 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
* BUG: Fix the help browser for classes whose name begins with an
underscore.
* BUG: Fix project loading when there are breakpoints set on non-existing
classes.
[INTERPRETER]
* BUG: Fix the behaviour of Eval() when the expression cannot be compiled.
* BUG: Error.Text does not crash anymore when the error message is void.
[COMPILER]
* BUG: Fix the parser behaviour when a non-terminated string is located at
the end of the file.
[GB.EVAL]
* BUG: Fix the parser behaviour when a non-terminated string is located at
the end of the expression.
[GB.GTK]
* BUG: Fix the behaviour of Label with AutoResize set.
[GB.QT4]
* BUG: Fix the behaviour of Label with AutoResize set.
git-svn-id: svn://localhost/gambas/trunk@3178 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: 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
* BUG: Breakpoints are correctly reset when opening a new project.
[INTERPRETER]
* BUG: The GB.NewString(), GB.NewZeroString() and GB.TempString() API
signature has changed. All components have been updated accordingly.
* OPT: Many optimizations to speed up the interpreter.
[GB.EVAL]
* NEW: During syntax highlighting, the first character of class names is
automatically converted to uppercase.
git-svn-id: svn://localhost/gambas/trunk@2992 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: VarPtr() now works on a string variable. It returns the address of
the string.
* NEW: TypeOf("") now returns gb.String. "" is equal to NULL yet, but now its
string datatype is kept.
* NEW: Memory is new instruction like Open that opens a memory stream from
a Pointer.
* NEW: A Pointer can not be used as a stream directly. You must use the new
Memory instruction for that.
* NEW: The [...] array constructor now checks the datatype of all its
argument to decide the type of the new array.
* BUG: The ["key":value] collection constructor now does not leak memory
anymore if it fails.
* NEW: A new error, "void key", whose code is 64.
* NEW: TypeOf(Null) now returns gb.Null and not gb.Object anymore.
* BUG: IIf() now returns a Variant only if needed. It uses the same
algorithm as the array constructor.
[COMPILER]
* NEW: Memory is new instruction like Open that opens a memory stream from
a Pointer. The syntax is: hStream = Memory pPonter For Read | Write.
* NEW: Support for form controls being individually public.
* BUG: VarPtr() is compiled correctly again.
git-svn-id: svn://localhost/gambas/trunk@2339 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: WARNING! The bytecode has changed, so every project needs to be
recompiled.
[WEB SITE MAKER]
* NEW: Some more translations.
[INTERPRETER]
* NEW: Assign() is a new function. It is like Eval(), except that the
expression can be an assignment.
[GB.EVAL]
* NEW: Implementation of the new Assign() function.
* NEW: The Expression.Compile() method takes a new optional boolean
argument that indicates if we are compiling an assignment or not.
[GB.NET.CURL]
* BUG: A asynchronous transfer that ends do not stop the other ones
anymore.
git-svn-id: svn://localhost/gambas/trunk@1986 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: WARNING! The bytecode has changed, so every project needs to be
recompiled.
[DEVELOPMENT ENVIRONMENT]
* NEW: A new project option to use the terminal emulator of the current
desktop instead of the built-in output window.
* BUG: "svn update" is now run non-interactive.
[WIKI CGI SCRIPT]
* NEW: {html ... } is a new section to put verbatim HTML inside a page.
[INTERPRETER]
* BUG: Fix a possible bug in the FreeBSD way of opening a pseudo-terminal
when running an external process.
* NEW: External process can have a custom environment.
* BUG: Some forgotten FreeBSD patch.
* NEW: The hidden "-f" option now takes as argument the name of the debug
fifo file without the extension. This is needed as now the IDE can put
a terminal emulator between the debugged process and itself.
[COMPILER]
* NEW: New syntax for the EXEC and SHELL instruction. Now the WITH keyword
can introduce an array of string, each of one being an environment
variable "NAME=VALUE".
[GB.DEBUG]
* NEW: Debug.Start() now returns the name of the debug fifo, without the
extension.
git-svn-id: svn://localhost/gambas/trunk@1971 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: [...] now returns an object array if its two arguments are objects
from different classes.
git-svn-id: svn://localhost/gambas/trunk@1788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The [...] syntax can create specialized arrays. For example,
"[[1,2],[3,4]]" now returns an Integer[][] object.
* NEW: The internal CLASS structure has been reorganized.
git-svn-id: svn://localhost/gambas/trunk@1787 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Increment bytecode version.
[INTERPRETER]
* NEW: New routine to deal with the new immediate collection operator. The
bytecode has changed consequently.
[COMPILER]
* NEW: A new syntax to the array operator to create collections:
[ <key>:<value>, <key>:<value> ... ]
[GB.EVAL]
* NEW: Implement the new syntax for creating collections.
git-svn-id: svn://localhost/gambas/trunk@1699 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not abort installation if a component written in gambas cannot
be installed.
* BUG: Disable colorgcc, libtool does not support it.
[DEVELOPMENT ENVIRONMENT]
* BUG: Print the real size of directory contents when getting information
on a project directory.
[WIKI CGI SCRIPT]
* BUG: Some fixes in 'example' section and in view mode.
[INTERPRETER]
* BUG: Fix illegal memory access in locale-aware string comparison.
* BUG: Fix a possible crash in String.UCase() and String.LCase().
[GB.FORM]
* BUG: SidePanel arrow buttons are correctly drawn with gb.gtk now.
[GB.GTK]
* BUG: Fix the Image.MakeTransparent() method.
* BUG: Fix the arrangement of ScrollView container.
* BUG: Fix the memory leak in the Picture class.
* BUG: Remove the Window resize event compression.
* BUG: Gridview cells are correctly refreshed now when their Picture or
Font property change.
[GB.NET.CURL]
* BUG: The Status property is correctly set after an error now.
[GB.QT]
* BUG: Correctly clears the internal closed flag when opening a Window.
* BUG: WAIT does not take 100% CPU anymore.
[GB.QT.EXT]
* BUG: In Editor, the cursor could disappear when clicking. Fix that.
[GB.XML]
* BUG: The management of XML nodes was incorrect, and so was redesigned.
git-svn-id: svn://localhost/gambas/trunk@1646 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Use colorgcc if it is present. Beware that ccache removes the
colors.
[DEVELOPMENT ENVIRONMENT]
* BUG: Fix the output console search.
* BUG: When making a package, ignore the charset translation errors while
printing the commands output.
* NEW: Support for the Khmer language.
[WIKI CGI SCRIPT]
* NEW: Support for the macedonian language.
[INTERPRETER]
* BUG: Fix the interpreter for gcc 4.3.
* NEW: Prints the gcc version used for compiling the interpreter when
running 'gbx2 -h'.
* BUG: Fix the initialization of standard input/output streams.
[COMPILER]
* BUG: Fix a compilation warning on FILE_set_chown.
[GB.GTK]
* BUG: Initialize correctly the gControl class.
* BUG: Draw.Tile now works correctly.
* BUG: Fix the vertical alignment management.
* BUG: The alignment of a GridView cell with a picture only is correct now.
[GB.QT]
* BUG: Choose the right moc executable when both QT3 and QT4 are installed
on the system.
* BUG: Fix the system tray icons for KDE 3.5.10. :-)
* BUG: The alignment of a GridView cell with a picture only is correct now.
git-svn-id: svn://localhost/gambas/trunk@1493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The Scripting example was fixed.
[INTERPRETER]
* NEW: The error management was redesigned.
[GB.DB]
* NEW: Database driver can declare a set of character that are allowed in a
database name.
[GB.DB.SQLITE2]
* NEW: '.' is allowed in database names now.
[GB.DB.SQLITE3]
* NEW: '.' is allowed in database names now.
git-svn-id: svn://localhost/gambas/trunk@1038 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