* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
[INTERPRETER]
* BUG: The &/ operator keeps only one slash if both the last character of
the left string and the first character of the right string is a slash.
* NEW: 'Begins' is a new string operator that checks if the beginning of a
string is equal to another string.
* NEW: 'Ends' is a new string operator that checks if the end of a string
is equal to another string.
* BUG: Errors raised by Eval() are correctly displayed again.
* NEW: The 'Like' operator has a new pattern: '{x,y,...}' tests if a
string matches one of the strings between square brackets, each one being
separated by a comma.
[GB.DB.FORM]
* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
[GB.DESKTOP]
* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
[GB.GTK]
* BUG: Modal windows do not block mouse, keyboard, enter and leave events
anymore.
[GB.FORM]
* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
[GB.FORM.MDI]
* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
[GB.WEB]
* BUG: Use the new Begins and Ends operators instead of Like where it was
necessary or faster.
git-svn-id: svn://localhost/gambas/trunk@2365 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: 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: Controls whose width (or height) is 1 will always be 1 pixel wide
(or high), regardless of the value of Desktop.Scale.
* NEW: Put the property sheet and the hierarchy tree inside the tabstrip.
* BUG: Replace Image.Flip() by Image.Mirror() in the welcome dialog.
[COMPILER]
* BUG: "Ambiguous braces" error message was incorrect, and has been
replaced by "Ambigous brackets".
[GB.IMAGE]
* NEW: Remove Image.Transform().
[GB.FORM.MDI]
* BUG: The default value of Workspace.ButtonPosition is Align.Right.
[GB.QT4]
* NEW: If the width (or height) argument of Control.MoveScaled() or
Control.ResizeScaled() is zero, then the effective width (or height) will
be 1 pixel.
* NEW: Do not activate windows whose type is ToolTip, Notification,
DragAndDrop or Desktop in the Show() method.
* BUG: Wait a little before activating windows, so that they do not stay in
the foreground.
git-svn-id: svn://localhost/gambas/trunk@2255 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Database manager integration continues. You can create, edit and
remove tables now. You cannot rename them yet, nor modify their contents.
* BUG: Fix popup menu activation in text editor.
* NEW: Almost any character is allowed now in the name of directories
storing source files.
[GB.DB.FORM]
* NEW: DataSource.Reset() is a new method that clears the internal
metadata cache. That method is dynamic because it is intended to only
reset the metadata associated with the DataSource. At the moment all the
metadata is dropped.
[GB.FORM]
* NEW: TableView.Save() now returns a boolean that will tell you if the
Save event has been cancelled.
* BUG: TableView should manage arrow keys correctly if the current editor
is a read-only ComboBox.
[GB.FORM.MDI]
* OPT: Toolbars do no useless layout anymore when in design mode.
[GB.QT4]
* BUG: The Message class has been fixed.
* BUG: Fix the behaviour of TabStrip when all its page are hidden.
git-svn-id: svn://localhost/gambas/trunk@2115 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Work continues on integrating the database manager.
* NEW: Some cosmetic changes in the way controls are drawing on the form
editor.
* NEW: Panels with Border property set to None are now drawn with a light
border.
* BUG: Fix the "Show tab" button and menu.
[INTERPRETER]
* NEW: _attach is a new dynamic special method that is called when an
object is attached to or detached from its event observer. The first
argument of this method is the event observer, and the second argument
the event handler prefix.
[COMPILER]
* NEW: An expression can be a NEW instruction now. Beware that it does not
work inside braces.
[GB.DB]
* BUG: Fix an error message in the sqlite handler.
[GB.DB.FORM]
* NEW: DataSource.Table can now be any SQL query. The Filter property is
ignored in that case.
* BUG: Setting DataSource.Table to NULL correctly resets the DataSource and
its children.
* NEW: DataView automatically adjusts the height of its rows to the
contents.
* NEW: DataSource.CacheSize is a new property to set the number of rows
stored in the internal DataSource cache. When this property is set to
zero, the cache size takes its default value (64 rows).
[GB.DB.SQLITE2]
* BUG: Fix a crash in datatype mapping.
[GB.DB.SQLITE3]
* BUG: Fix a crash in datatype mapping.
[GB.QT4]
* BUG: Window.AutoResize property works as expected now.
* OPT: Some optimizations in GridView.
* NEW: GridView.Rows[].Visible returns if a specific row is visible.
* NEW: GridView.Rows[].EnsureVisible ensures that a specific row is
visible.
* BUG: Draw.Style.Panel draws the same thing as a panel border now.
* BUG: Window.Closed always returns the accurate value now.
git-svn-id: svn://localhost/gambas/trunk@2108 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: 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: Use TextEdit.RichText insted of TextEdit.Text.
* BUG: END SUB can be the end of a method. The class analyze now takes
that into account.
[HELP]
* BUG: Fixed the generated treeview.
[COMPILER]
* OPT: The NOT operator used just at the beginning of a conditional
expression is optimized. Consequently, an expression like 'IF NOT 2' is
now equivalent to 'IF 2 = 0' and not to 'IF (NOT 2) <> 0' as before. In
other words, the boolean conversion is now done before the NOT, and not
after. The following instructions are concerned: IF, WHILE, UNTIL.
* NEW: BYREF is new keyword that is a more readable synonymous of '@'.
[GB.DB.FORM]
* BUG: Correctly manage data controls inside TabStrip-like containers.
* BUG: Setting the focus on a non-initialized DataControl does not raise
an error anymore.
[GB.GTK]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a
list of children widths, hidden children having a zero width.
* BUG: Window arrangement is done before the Open event is raised, as in
gb.qt.
* BUG: Keyboard, focus and mouse events now work correctly on Window and
DrawingArea controls.
[GB.QT]
* BUG: HSplitter.Layout and VSplitter.Layout now work correctly. It is a
list of children widths, hidden children having a zero width.
* BUG: Many warning fixes.
* BUG: Now the Control.Visible property works like in gb.gtk, i.e. it
returns if the control was not explicitely hidden.
git-svn-id: svn://localhost/gambas/trunk@1060 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Arguments passed by reference were implemented.
[COMPILER]
* NEW: Arguments passed by reference were implemented.
git-svn-id: svn://localhost/gambas/trunk@1016 867c0c6c-44f3-4631-809d-bfa615b0a4ec
* NEW: Bytecode version is now 2.99.0.
[EXAMPLES]
* BUG: Fixed the TextEdit example according to the new TextEdit properties.
[INTERPRETER]
* NEW: VarPtr() is a function that returns a pointer to the contents of a
variable. Only numeric variable that are local, dynamic or static can be
used.
* BUG: Fixed the loading of classes whose some variables are Pointer.
[COMPILER]
* NEW: VarPtr() is a function that returns a pointer to the contents of a
variable. Only numeric variable that are local, dynamic or static can be
used.
[GB.EVAL]
* NEW: VarPtr() cannot be used with Eval().
git-svn-id: svn://localhost/gambas/trunk@1014 867c0c6c-44f3-4631-809d-bfa615b0a4ec