[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.
[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.
[INTERPRETER]
* NEW: Array.ReadOnly is a new property that make an array read-only. Once set, the property cannot be unset.
* NEW: The "Embedded array" error message has been rewritten as "Read-only array".
* NEW: Add two new standard errors: "Multidimensional array" and "Unknown class".
* NEW: Replace some specific error messages by standard errors.
[INTERPRETER]
* NEW: Variant[].Sort() and Variant[].SortUsing() methods have been added.
* NEW: SortUsing() methods now take an optional sort mode as second argument.
[INTERPRETER]
* NEW: gb.Match is a new constant that indicates a string comparison using the PCRE MATCH operator.
* BUG: The gb.Descent flag could be erased when sorting objects implementing the '_compare' special method.
* BUG: Correctly detect too large arrays.
* BUG: Array allocation incrementation now cannot be larger then 256 slots.
git-svn-id: svn://localhost/gambas/trunk@7232 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Array.Resize() now correctly raises an error if its argument is
negative.
git-svn-id: svn://localhost/gambas/trunk@7231 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Profiler window: Add a new column for the average self time.
[INTERPRETER]
* OPT: Make faster implementations of the Find() and Exist() methods of the
native array classes. Only Date[] and Variant[] use the old implementations.
[GB.FORM.EDITOR]
* BUG: TextEditor: Inserting and removing lines now work correctly when
wrap mode is enabled.
* OPT: TextEditor: Drawing and layouting optimizations.
git-svn-id: svn://localhost/gambas/trunk@7123 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Software farm: Software now can be safely installed or removed. The
source checksum is checked, as well as the required components. Libraries
and dependencies on other software are not yet taken into account. A
'*.desktop' file is automatically created on installation now.
[INTERPRETER]
* NEW: Split() has a new behaviour when its escape argument has two
characters, the second one being the first splitting character. It uses
the first character to escape splitting characters. For example,
Split("a;b~;c;d",";","~;") returns ["a","b;c","d"].
* NEW: String[].Join() method handle the new Split syntax.
["a","b;c","d"].Join(";","~;") returns "a;b~;c;d". Moreover, in the
traditional escape syntax, the joined string are not escaped anymore if
they are void.
[GB.DESKTOP]
* NEW: DesktopFile.MimeTypes is a new property corresponding to the
'MimeType' entry of the '*.desktop' file.
* NEW: DesktopFile now can be used for creating or modifying '*.desktop'
files.
git-svn-id: svn://localhost/gambas/trunk@6689 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Some fixes in the software farm window.
[INTERPRETER]
* NEW: Remove the GB.UnrefKeep() interpreter API, as it is not used
anymore.
git-svn-id: svn://localhost/gambas/trunk@6676 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Don't check conflict on project configuration file if that files
does not exist.
[INTERPRETER]
* OPT: Move the string splitting routine in its own file and optimize it.
[INFORMER]
* BUG: Remove unneeded parenthesis on a test.
[GB.CLIPPER]
* BUG: Remove an unused variable.
[GB.DESKTOP]
* BUG: Fix error message in DesktopMime.
[GB.FORM]
* BUG: MaskBox: Raise the Change event after moving the cursor, so that it
behaves exactly like a TextBox.
[GB.FORM.MDI]
* NEW: Workspace: Count the number of detached windows so that the "detach
current tab" menu entry is disabled when needed.
[GB.GTK]
* BUG: Window.Utility should work even if the window is mapped now.
[GB.GTK3]
* BUG: Window.Utility should work even if the window is mapped now.
[GB.NET.PO3]
* NEW: Add a void constructor to the Pop3Client class for the
documentation.
git-svn-id: svn://localhost/gambas/trunk@6285 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: Fixes of bugs detected by Coverity Scan.
* BUG: Process output is correctly flushed at process exit now.
[COMPILER]
* BUG: Fixes of bugs detected by Coverity Scan.
[ARCHIVER]
* BUG: Fixes of bugs detected by Coverity Scan.
[INFORMER]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.COMPRESS]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.DEBUG]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.EVAL]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.IMAGE]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.IMAGE.EFFECT]
* BUG: Fixes of bugs detected by Coverity Scan.
[GB.VB]
* BUG: Fixes of bugs detected by Coverity Scan.
git-svn-id: svn://localhost/gambas/trunk@5493 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The RAISE instruction now can raise events defined in a parent
class.
* NEW: Timer: The Trigger method now does nothing if there is an already
pending trigger. This behaviour is not backward-compatible, so it may be
removed if problems arise.
[COMPILER]
* NEW: The RAISE instruction now can raise events defined in a parent
class.
[GB.DRAW]
* NEW: Implement standard operators in Point and PointF classes.
* NEW: Automatic conversion between Point and PointF.
* NEW: 'CDraw.c' and 'CDraw.h' source files have been renamed as 'cdraw.c'
and 'cdraw.h'.
* NEW: Rect.Center() and RectF.Center() are two new methods that return the
center of the rectangle.
[GB.FORM]
* NEW: FileChooser: tar archives now can be uncompressed.
git-svn-id: svn://localhost/gambas/trunk@5359 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Fix scrolling of code editor procedure list.
* BUG: Automatic local variable declaration now works correctly when a
method named "Get" is called inside the analyzed expression.
[COMPILER]
* NEW: "[]" now is compiled to return a array with no elements.
[INTERPRETER]
* BUG: Array with no elements can be casted to any other array datatype.
[GB.GUI.BASE]
* BUG: Fix visibility of expanded TreeView items.
[GB.QT4.EXT]
* NEW: When the Editor loses the focus, it does not scroll to the cursor
position automatically anymore.
git-svn-id: svn://localhost/gambas/trunk@5266 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Implement Variant comparison routine.
* NEW: Variant[] now has an Exist() and a Find() method.
git-svn-id: svn://localhost/gambas/trunk@5098 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: New gb.complex component
[INTERPRETER]
* BUG: Automatic array conversion now works with not yet loaded array
classes.
[GB.COMPLEX]
* NEW: New component that implements a rudimentary management of complex
numbers. This component is automatically loaded if a complex number
constant is encountered and no loaded component can already handle
complex numbers.
git-svn-id: svn://localhost/gambas/trunk@4924 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: When converting an instance of A to the class B, try the conversion
interface of A first. If A has no conversion interface, or if it cannot
handle the B class, then try the conversion interface of B if any.
[GB.GSL]
* NEW: Vector class has been implemented.
[GB.JIT]
* NEW: SPEC_CONVERT constant has been replaced by a field in the CLASS
structure.
git-svn-id: svn://localhost/gambas/trunk@4916 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Correctly raise an error when trying to use NULL on classes
implementing the _operators interface.
* NEW: The _convert interface now must handle conversions from any
datatype.
[GB.GSL]
* NEW: Automatic conversion from numbers to Complex.
* NEW: Start implementating the Vector class.
git-svn-id: svn://localhost/gambas/trunk@4913 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: "_operators" is a new interface that allows any native class to be
used with most of arithmetic operators: +, -, *, /, Abs, =, <> at the
moment.
* NEW: The "_convert" interface now allows a class to be converted to any
datatype, not just other classes.
* NEW: Str() and Print uses the "_convert" interface to print a localized
string conversion of any object.
[GB.GSL]
* NEW: Use the new "_operators" interface so that complex numbers can be
handled by standard arithmetic operators.
* NEW: The Complex class now implements the "_convert" interface.
git-svn-id: svn://localhost/gambas/trunk@4908 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: The debug window has a button to switch between "normal view" and
"symbol view". In "normal view", array and collection contents are
displayed. If the object is not an array or a collection, then all
non-hidden symbols are displayed. In "symbol view", all objects symbols
are displayed, whatever the object type is.
[INTERPRETER]
* NEW: The debugger now can display collection-like objects. An object can
be displayed like a collection if it has a Count property, is enumerable,
has a _get special method taking a string, and has a Key property that
returns the key of the last enumerated element.
[GB.DEBUG]
* NEW: The debugger now can display collection-like objects. An object can
be displayed like a collection if it has a Count property, is enumerable,
has a _get special method taking a string, and has a Key property that
returns the key of the last enumerated element.
[GB.FORM]
* BUG: GridView.Clear resets the height of all rows to the default value.
git-svn-id: svn://localhost/gambas/trunk@4558 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Terminal emulation now does not automatically convert NL to CR+NL.
* BUG: Fix the declaration of custom array classes.
[GB.GTK]
* BUG: Stopping a file descriptor watch now correctly check if the event
loop must be exited.
git-svn-id: svn://localhost/gambas/trunk@4398 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Calling native methods on an anonymous reference now correctly casts
the return value to a Variant.
* BUG: Remove all Array class methods that break the inheritance rules.
[GB.GTK]
* BUG: Fix initial position of windows so that window manager constraints
are not overrided.
[GB.SETTINGS]
* BUG: Fix the use of Array class.
git-svn-id: svn://localhost/gambas/trunk@4361 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: A button to show or hide the system tables in the database editor.
* BUG: Copying button is enabled now in the SQL editor.
* NEW: SQL highlighting.
[GB.EVAL.HIGHLIGHT]
* NEW: SQL highlighting routine.
[GB.FORM]
* BUG: Fix an arrangement bug in TabPanel.
[GB.QT4.EXT]
* NEW: Editor.HighlightCurrent flag has been renamed HighlightImmediately.
* BUG: Braces are now highlighted even if they are not on the same line.
* NEW: Editor.HideMargin is a new flag to hide the editor left margin.
git-svn-id: svn://localhost/gambas/trunk@4344 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
* NEW: New "Gamabs" highlight theme.
* BUG: When showing the search dialog, the search text is correctly
selected in all cases now.
* BUG: Importing a report (or any form that is not a GUI form) now
correctly imports the class file.
[EXAMPLES]
* NEW: Add a text clipping example in the 'Painting' example.
[INTERPRETER]
* OPT: Replace() is now faster when the search string and the replace
string are both one character length strings.
[COMPILER]
* NEW: The string escape character '\v' was added.
[GB.GTK]
* BUG: Paint.Text() now works correctly when the alignment is not
specified.
[GB.NET]
* BUG: Correctly check system errors when using a asynchronous DnsClient.
[GB.QT4]
* BUG: Paint.Save() and Paint.Restore() take the clipping path into account
now.
[GB.SETTINGS]
* NEW: Use a temporary file when saving a settings file, and always make a
backup.
[GB.WEB]
* NEW: The Session.Modify() method was replaced by a read/write Modified
property.
git-svn-id: svn://localhost/gambas/trunk@4273 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* BUG: Do not use GB.ReturnNull() when returning a void string anymore. Use
the new GB.ReturnVoidString() API instead.
git-svn-id: svn://localhost/gambas/trunk@4216 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* OPT: Optimization of locale-aware string comparison routine.
* OPT: Do not use sprintf() for searching event handlers in symbol tables.
* OPT: String[].Find() and String.Exist() are now twice faster for ASCII
binary and case insensitive comparisons.
* BUG: Initialize the locale before loading any class.
* OPT: Do not use sprintf() when searching a file inside Gambas archives.
* OPT: Unroll a loop to speed up binary string identity comparison a little
bit.
* BUG: Collection keys are now hashed with their eight last characters.
* BUG: Internal Collection automatic resizing was disabled. Re-enable it!
git-svn-id: svn://localhost/gambas/trunk@4153 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
* NEW: Byte[].FromString() is a now a static method that creates a new byte
array from a string.
git-svn-id: svn://localhost/gambas/trunk@3918 867c0c6c-44f3-4631-809d-bfa615b0a4ec