[INTERPRETER]
* NEW: '_lang' is a new static public special method that is called when
'System.Language' changes. It allows you to reload the translations of
the class.
[INTERPRETER]
* NEW: Object.SizeOf() on embedded arrays now returns the size of the array, and not the size of the temporary object created for accessing the array.
[COMPILER]
* BUG: Allow static arrays to be used with the point operator.
[INTERPRETER]
* BUG: Fix static array management. They are not read-only anymore. Only methods that want to modify the size of the array are forbidden, as well as the ReadOnly property.
* OPT: Array accessors have been optimized. The 'sort' benchmark is now 25%
faster.
git-svn-id: svn://localhost/gambas/trunk@6605 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
* NEW: Temporary hack in the GB.New() API so that we can pass a number of
arguments in some cases.
[GB.COMPLEX]
* OPT: Do not create complex objects during arithmetic operations when we
are sure that we can reuse a temporary one. That trick can be used in any
'_operators' interface.
git-svn-id: svn://localhost/gambas/trunk@4925 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: The "Browse again" button in the search list now does nothing if
there is no search string defined.
[INTERPRETER]
* NEW: Object[].FindByRef and Object[].ExistByRef are two new methods that
do not take the _compare special method into account. They compare
objects by reference only.
[GB.DB.FORM]
* NEW: DataBrowser.Border is a new property to define if a border should be
displayed or not.
* BUG: Fix DataBrowser layout for all orientations.
[GB.DB.MYSQL]
* BUG: Try to make connection timeout work as expected, without success.
It seems sticked to be at least one minute. :-(
[GB.FORM]
* BUG: IconView now behaves correctly when an item has no text. It uses there
new array methods that search items by reference only.
* NEW: TabPanel.Highlight is a new property that highlight the current
selected tab button.
* NEW: TabPanel.Closable is a new property that works exactly like
TabStrip.Closable.
* BUG: TabPanel.Remove() now works correctly.
* NEW: ScrollArea is more clever with mouse wheel events.
[GB.FORM.MDI]
* NEW: Workspace now uses a TabPanel instead of a TabStrip.
git-svn-id: svn://localhost/gambas/trunk@4342 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Support for multi-dimensional arrays in the debugger.
[INTERPRETER]
* BUG: Support for multi-dimensional arrays in the debugger.
[GB.DEBUG]
* BUG: Support for structures.
* BUG: Support for multi-dimensional arrays in the debugger.
git-svn-id: svn://localhost/gambas/trunk@3654 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Support for MkPointer$().
* NEW: Embedded arrays of structures array write accessor has been
implemented.
git-svn-id: svn://localhost/gambas/trunk@3453 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
* BUG: Fix a crash is structure declaration analyze.
[INTERPRETER]
* NEW: Support for static array of structures. A static array of structure
'MyStruct' will create a temporary object whose class is '$MyStruct[]'.
That class does not inherit 'Array', and has only a few methods of the
Array class.
* NEW: Byte[].ToString() is a new method to convert a byte array to a
string. If no length is specified, ToString() assumes that the byte array
is a zero-terminated string.
* NEW: Byte[].FromString() is a new method that fills a byte array with the
contents of a string.
[COMPILER]
* NEW: Declaration of static arrays of structures is allowed.
git-svn-id: svn://localhost/gambas/trunk@3031 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
* NEW: Renaming a control now automatically renames the identifier in the
source code.
[INTERPRETER]
* NEW: Split() now takes a 5th optional argument that tells if escape
characters should be kept in the returned strings.
* NEW: CVariant() is a new function that converts its argument into a
Variant.
[COMPILER]
* NEW: CVariant() is a new function that converts its argument into a
Variant.
[GB.FORM]
* NEW: SidePanel, DirChooser, FileChooser and FileView Settings property
now use the new Settings storage facilities and return a Variant[].
[GB.GTK]
* NEW: The Settings and Layout properties of HSplit and VSplit now return
an Integer[] instead of a String.
* BUG: The name property of newly created menus is correctly initialized
now.
[GB.QT4]
* NEW: The Settings and Layout properties of HSplit and VSplit now return
an Integer[] instead of a String.
[GB.SETTINGS]
* NEW: The settings file format has changed. Now collections and arrays can
be stored and retrieved.
git-svn-id: svn://localhost/gambas/trunk@2329 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for template array classes in automatic completion.
[INTERPRETER]
* BUG: LIE INPUT and INPUT work correctly on tty streams.
[GB.DB]
* NEW: Add an API that allows a driver function to get the current
database when it does not get it from its arguments.
[GB.DB.POSTGRESQL]
* BUG: Fix blob support for some encodings, and when PostgreSQL version is
greater or equal than 8.2.
[GB.DB.SQLITE3]
* BUG: Field values are not truncated anymore.
[GB.FORM]
* NEW: MessageLabel is a new control made by David Villalobos Cambronero.
It is a TextLabel that changes its background color for indicating a
warning, an error, and so on.
[GB.FORM.MDI]
* NEW: Workspace.ButtonPosition is a new property that allows to put the
tab close button on the left or on the right.
[GB.GTK]
* BUG: Speeds up the combo-box control as much as I can. Slowness seems to
be a GTK+ feature. :-/
[GB.QT]
* BUG: Fix crash when setting a shortcut on a top-level menu.
git-svn-id: svn://localhost/gambas/trunk@1548 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: Some little layout fixes.
[INTERPRETER]
* OPT: Read the user home directory only if the current uid has changed.
Otherwise, cache it into memory.
* OPT: String memory management has been optimized.
* OPT: Some little optimizations there and there.
* NEW: A new interpreter option, "-k", that prevents shared library to be
unloaded until the process terminates. That can be useful when
debugging with valgrind.
* OPT: System.Language property was optimized.
* OPT: The gb_error.c file is now compiled with -O3.
[GB.GTK]
* BUG: Disable the management of input methods in TextBox and TextArea
controls, so that the input methods are not disturbed. Consequently;
SCIM and Bridged SCIM work again.
* BUG: You can read keyboard events properties in a Form KeyPress or
KeyRelease event handler correctly now.
git-svn-id: svn://localhost/gambas/trunk@1199 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Native array optimizations are better. For arrays with one
dimension, reading is about 70% faster than gambas2, and writing 40%
faster.
* OPT: Collection array accessors were optimized too. Reading is about 50%
faster and writing 60% faster. Be careful: only the array accessors were
optimized, not the full hash table access, which is the slower part of
the process.
git-svn-id: svn://localhost/gambas/trunk@1036 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Support for installing control icons in native components.
[64 BITS]
* BUG: Fixed some uses of long datatype in the gb.qt.ext component, the
Splitter and the Container class of gb.qt.
* BUG: Fixed some declarations in the gb.net.curl component.
* NEW: Pointer[] is a new class that represents an array of Pointer values.
* BUG: All gb.qt, gb.gtk and gb.desktop methods that deal with X11 Window
identifiers now use Pointer and Pointer[] datatypes instead of Integer
and Integer[].
* BUG: The Embedder example was updated according to the change above.
[INTERPRETER]
* BUG: Fixed the static array management that was broken by the 64 bits
changes.
[GB.DEBUG]
* BUG: Debug.Write now does nothing if Debug.Start has not been called.
[GB.GTK]
* BUG: Fixed the implementation of the Message class that was broken.
* BUG: Fixed a crash in the Watcher class.
* BUG: Fixed the Image.Flip() and Image.Mirror() methods.
* BUG: Fixed a potential crash in timer management.
* NEW: The GridView Select event was implemented.
git-svn-id: svn://localhost/gambas/trunk@1033 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