Gambas Documentation
Application Repository
Code Snippets
Compilation & Installation
Components
Controls pictures
Deprecated components
Developer Documentation
Development Environment Documentation
Documents
About The Best Formula In The World
Architecture details
Benchmarks
Books
By Reference Argument Passing
Compatibility between versions
Creating And Using Libraries
Database Datatype Mapping
Database Request Quoting
Date & time management
Dates and calendars
DBus and Gambas
Differences Between Shell And Exec
Differences From Visual Basic
Distributions & Operating Systems
Drag & Drop
DrawingArea Internal Behaviour
External functions datatype mapping
Frequently Asked Questions
Gambas Farm Server Protocol
Gambas Mailing List Netiquette
Gambas Markdown Syntax
Gambas Naming Conventions
Gambas Object Model
Gambas Scripting
Gambas Server Pages
Gambas Unit Testing
Gambas Wiki Markup Syntax
Getting Started With Gambas
Hall Of Fame
Image Management In Gambas
Including Help Comments in Source Code
Interpreter limits
Introduction
Just In Time Compiler
Just In Time Compiler (old version)
License
Localisation and Internationalization
Mailing Lists & Forums
Naming Conventions
Network Programming
ODBC Component Documentation
PCRE Pattern Syntax
Porting from Gambas 2 to Gambas 3
Previous News
Project Directory Structure
Release Notes
Gambas 2.23.0
Gambas 2.23.1
Gambas 2.24.0
Gambas 3.0.0
Gambas 3.1.0
Gambas 3.1.1
Gambas 3.2.0
Gambas 3.2.1
Gambas 3.3.0
Gambas 3.3.1
Gambas 3.3.2
Gambas 3.3.3
Gambas 3.3.4
Gambas 3.4.0
Gambas 3.4.1
Gambas 3.4.2
Gambas 3.5.0
Gambas 3.5.1
Gambas 3.5.2
Gambas 3.5.3
Gambas 3.5.4
Gambas 3.6.0
Gambas 3.6.1
Gambas 3.6.2
Gambas 3.7.0
Gambas 3.7.1
Gambas 3.8.0
Gambas 3.8.1
Gambas 3.8.2
Gambas 3.8.3
Gambas 3.8.4
Gambas 3.9.0
Gambas 3.9.1
Gambas 3.9.2
Gambas 3.10.0
Gambas 3.11.0
Gambas 3.11.1
Gambas 3.11.2
Gambas 3.11.3
Gambas 3.11.4
Gambas 3.12.0
Gambas 3.12.1
Gambas 3.12.2
Gambas 3.13.0
Gambas 3.14.0
Gambas 3.14.1
Gambas 3.14.2
Gambas 3.14.3
Gambas 3.15.0
Gambas 3.15.1
Gambas 3.15.2
Gambas 3.16.0
Gambas 3.16.1
Gambas 3.16.2
Gambas 3.16.3
Gambas 3.17.0
Gambas 3.17.1
Gambas 3.17.2
Gambas 3.17.3
Gambas 3.18.0
Gambas 3.18.1
Gambas 3.18.2
Gambas 3.18.3
Gambas 3.18.4
Gambas 3.19.0
Gambas 3.19.1
Gambas 3 RC1
Gambas 3 RC2
Gambas 3 RC3
Gambas 3 RC4
Gambas 3 RC5
Gambas 3 RC6
Gambas 3 RC7
Reporting a problem, a bug or a crash
Rich Text Syntax
Screenshots
Text highlighting definition file syntax
The Program has stopped unexpectedly by raising signal #11
Variable Naming Convention
WebPage Syntax
Web site home page
What Is Gambas?
Window & Form Management
Window Activation & Deactivation
Window Life Cycle
XML APIs
Error Messages
Gambas Playground
How To's
Language Index
Language Overviews
Last Changes
Lexicon
README
Search the wiki
To Do
Topics
Tutorials
Wiki License
Wiki Manual

Gambas 3.16.1

What's new?

This release includes important bug fixes made since the 3.16.0 release.

Compilation and installation

Read the instructions there.

If everything was fine, type "gambas3" to run the development environment.

Enjoy it !

Changelog

CONFIGURATION

  • Fix deletion of empty directories for FreeBSD.

  • Update README.md file.

DEVELOPMENT ENVIRONMENT

Debugger

  • Use SIGUSR2 signal instead of SIGUSR1 to stop debugged processes, because SIGUSR1 makes WebKit crash.

Form editor

  • Do not crash if a user-defined control inheriting UserContainer requests a non-container in its DrawWith property. Use a Panel or TabPanel instead.

  • Add an help menu for controls in the toolbox.

  • Put the toolbox buttons in its bottom bar.

  • Do not crash if a control in _Similar does not exist.

  • Fix the coherency test on _DrawWith property.

Help browser

  • Handle the wiki:// links through the Error event.

Project open dialog

  • Change the layout of the buttons to fix behaviour with GTK+3.

Search dialog

  • Replace message boxes by a label.

  • The title now correctly follows the current tab title.

Test panel

  • The spinner now is correctly shown during the test.

  • Display a different message if the test is aborted.

Translation dialog

  • Do not use sorted ComboBoxes for choosing languages, as Qt and GTK+ do not sort the same way, and it breaks the behaviour of the dialog when using GTK+3.

  • The "copy all translations" menu works correctly now.

  • Use an explicit background for the untranslated string TextArea, because transparent background does not work with GTK+.

Welcome window

  • Fix the drawing of the close button of project boxes displayed in single column.

  • Project lists scroll to the top when the filter changes.

Miscellaneous

  • Update French translation.

  • Update Turkish translation.

  • webform project template now uses gb.web.gui instead of gb.web.form.

  • Fix "1" character in Gambas 16 pixel regular font.

INTERPRETER

  • Fix compilation on BSD systems.

  • Fix a string memory leak in error management.

  • Abort JIT compilation before executing the QUIT instruction.

  • WAIT with a positive value should not block anymore in some case.

SCRIPTER

  • Fix --convert-project single parameter version.

SELF-TESTER

  • Make the self-tester use the current Gambas version.

GB.DB.ODBC

  • Try to read date fields correctly in most ODBC drivers.

GB.DEBUG

  • Use SIGUSR2 signal instead of SIGUSR1 to stop debugged processes, because SIGUSR1 makes WebKit crash.

GB.FORM

  • FileView: Fix automatic extension behaviour.

  • MenuButton: Custom drawing of shortcut underlines for GTK+.

  • Search for icon themes in /usr/local for BSD systems.

  • SidePanel: Hidden side panels have now a one pixel size. Because GTK+ components cannot handle zero-size controls at the moment.

  • FileChooser: Fix file uncompress that was done twice.

  • DocumentView: Reintroduce the old properties renamed in 3.16.0 for backward-compatibility.

GB.FORM.DIALOG

  • Remove useless gb.gsl from project components.

GB.FORM.EDITOR

  • Sh editor mode: remove quotes from braces list.

  • TextEditor: Remove tabledragger.js test file because it is copyrighted.

GB.FORM.TERMINAL

  • TerminalView: Reset() method does not fail anymore if the currently running process is dead.

GB.GUI.BASE

  • SpinBox: Update the current value before returning it with the Value or the Text property.

  • SpinBox: Take into account that the internal mouse timer may be cleared during its event handler.

  • Frame: Make frame contents cover the entire control area when there is no arrangement, for backward-compatibility.

  • ListBox: Use a natural sort for sorting the ListBox contents.

GB.GTK

  • Display the warning about calling the event loop during a keyboard event once.

  • Clipboard: Always replace "text/plain" format by "text/plain;charset=utf-8" when pasting.

  • The workaround of Pango markup bug makes lines disappear with recent versions of Pango, so remove it.

  • Font.RichTextSize() now uses the same algorithm as Font.TextSize().

  • TextArea: Add a padding proportional to the font height.

  • Automatic container resize now takes the arrangement of the parent of the container into account.

  • Don't remove file descriptors watches in the quit hook to behave like Qt components.

  • Remove a forgotten debugging breakpoint that made reading Key properties crash when there is no keyboard event data.

  • Window: Reparenting a window now keeps the title and the enabled state correctly.

  • Some deferred arrangements were useless, don't do them.

  • Focus navigation works again.

GB.GTK3

  • Display the warning about calling the event loop during a keyboard event once.

  • Clipboard: Always replace "text/plain" format by "text/plain;charset=utf-8" when pasting.

  • The workaround of Pango markup bug makes lines disappear with recent versions of Pango, so remove it.

  • Font.RichTextSize() now uses the same algorithm as Font.TextSize().

  • TextArea: Take focus into account when drawing the border.

  • Workaround many drawing warnings in Slider, CheckBox and RadioButton.

  • TextArea: Add a padding proportional to the font height.

  • Automatic container resize now takes the arrangement of the parent of the container into account.

  • Don't remove file descriptors watches in the quit hook to behave like Qt components.

  • Remove a forgotten debugging breakpoint that made reading Key properties crash when there is no keyboard event data.

  • Window: Reparenting a window now keeps the title and the enabled state correctly.

  • Some deferred arrangements were useless, don't do them.

  • Fix deferred arrangement because of a weird GTK+3 behaviour.

  • Focus navigation works again.

GB.GTK3.WEBVIEW

  • WebView: Disable a setting flag deprecated in WebKitGTK >= 2.32.0.

  • WebView: Try to make Qt5 and GTK+3 webview raise their events the same way when loading pages.

GB.QT4

  • Display the warning about calling the event loop during a keyboard event once.

  • TextArea: Add a padding proportional to the font height.

  • Automatic container resize now takes the arrangement of the parent of the container into account.

GB.QT5

  • Display the warning about calling the event loop during a keyboard event once.

  • TextArea: Add a padding proportional to the font height.

  • Automatic container resize now takes the arrangement of the parent of the container into account.

GB.QT5.WEBVIEW

  • WebView: Clear the internal cancel flag if the Finish event is raised before the acceptationRequest method is called.

  • WebView: Try to make Qt5 and GTK+3 webview raise their events the same way when loading pages.

GB.TEST

  • New test suite Production that excludes tests which are not reliable in all circumstances.

  • gb.test didn't print a real error's text.

GB.WEB.GUI

  • Use SIGUSR1, now that SIGUSR2 is used by the Gambas debugger.