- The source package installation process has been modified, so that creating
RPM package of Gambas does not need patching anymore.
- The IDE packager wizard relies on one package for each component. So, distributing
Gambas applications depends on the distributions packagers. A Mandrake '.spec' file
is provided in the source package, that build all needed packages for the
MandrakeLinux distribution.
Development Environment
- Containers control that layout their children now automatically sort them
when the form is saved.
- The grid snap is now the same horizontally and vertically.
- Many fixes in the file selector.
- The automatic completion does not use its own window anymore, but a child
control in the editor window. This way, it will display correctly whatever
the window manager is.
- The debug window is now a toolbar integrated in the project window.
- The three debug information windows were unified in one window with tabs.
- You can use a smaller font for the project and properties window.
- The packager wizard now manage the SuSE distribution.
- The control icons were redesigned.
Database Manager
- The interface has been redesigned. It does not use the Workspace control anymore.
- You can export the result of a SQL request to a file or directly to the clipboard.
The format is comma separated values.
- You can choose the table type when creating a table in a MySQL database.
- Server connections are automatically saved and restores.
- User management seems to be broken.
Compiler
- BUG: Hexadecimal constants with the 31th bit set does not raise a syntax error
anymore.
Interpreter
- BUG: The interpreter has its own case unsensitive string comparison functions,
that are not localization aware. These functions are exported to the components
by the Gambas API. This was necessary, because, for example, in Turkish,
UCase$("i") <> "I".
- All array classes got a new method named Copy, that return a deep copy of the array.
- BUG: calling methods on an inherited class now works correctly.
Qt Component
- New layout controls: HBox, VBox, HPanel, VPanel.
- Many controls now can automatically layout their children: Form, TabStrip, Panel,
HBox, VBox, HPanel, VPanel. The layout is controlled by the following properties:
Arrangement, Padding, Spacing, AutoResize.
- The Arrangement property gives the way the child controls are arranged.
- Padding gives how many pixels is not used in the border of the container.
- Spacing gives how many pixels separate the child controls.
- AutoResize tells that the container should resize so that all its children
are visible.
- All controls have a new property: Expand. This property is used only if the control
container has an automatic arrangement. It tells that the control can automatically
grow to take the space not used by the other sibbling controls.
- A new kind of mesage box: Message.Delete.
- Now panel and label frames follow the global widget style.
- Now you can have a icon in each tab of a TabStrip control.
- The TextArea control has a new method, EnsureVisible. This method scrolls the
TextArea so that the character under the cursor is visible on the screen.
- The Adjust method of the ColumnView control has been replaced by an AutoResize
property.
- Form.Load() now takes an optional parameter, which is a parent control the form will
be embedded into when shown.
- Dialog and message boxes are now centered on the screen, and do not appear in the
task bar anymore.
Qt Extended Component
- The Splitter control has been replaced by two layout controls: HSplit and VSplit.
- BUG: The Layout property of HSplit and VSplit now work correcly.
- A MovieBox control, that can display animated GIF and MNG.
Gambas Editor Component
- BUG: GambasEditor.TabLength now works correctly.
Kde Component
- More QT/KDE datatypes are now translated in a DCOP method call: QPixmap, QImage,
QCursor, QPoint, QSize, QRect, QFont and KURL::List.
Database Component
- All changes made by Nigel Gerrard should have been merged.
- You can specify a talbe type when creating a table. This is used by the MySQL
driver.
- You can get the version of the database backend.
- When a request is a join between two tables with identical fields, the field
names are prefixed with the table name.
- BUG: many fixes in the SQLite database driver.
- You can create a database directly in memory with the SQLite driver. Just
specify ':memory:' as database name.
- The SQLite databases are now stored by default in /tmp/gambas.${UID}/sqlite,
where ${UID} is your user id.
- BUG: reading field information now works correctly. A buggy mysql function
is not used anymore.
|