Gambas 3.20.1

What's new?

This release includes some bug fixes made since the 3.20.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 README and README.md files.

DEVELOPMENT ENVIRONMENT

Database editor

  • Fix table copying.

Debugger

  • Fix a crash occurring when clicking in a void stack backtrace list.

Form editor

  • Fix a possible crash when dropping a control on the background from the toolbox.

  • Fix toolbox refresh, when sometimes no tab were selected.

Help browser

  • Fix offline help browser in dark mode.

  • Implement the readme wiki command.

Image editor

  • Take dark theme into account when drawing available shapes.

  • "ellipse", "rectangle" and "polygon" tool now uses the ALT key for centering. SHIFT is for ignoring snapping.

  • Remove diagonal grids, they are useless.

  • Fix how grid state is saved.

  • Always use ALT instead of SHIFT for resizing tools.

  • Use the invert stock icon everywhere.

  • Draw shapes with solid lines.

  • Make the shape delete button smaller.

  • Correctly detect shape points located on the shape extents.

Option dialog

  • Correctly save the "Automatically revert non important files" settings.

Profiling editor

  • Fix background color of duration column in the code viewer in dark mode.

Search panel

  • Fix background color of last column.

System information dialog

  • Add the value of Application.DarkTheme.

  • Some little redesign.

Welcome dialog

  • Draw selected button with a frame.

  • Don't invert big Gambas head on dark themes.

Miscellaneous

  • No need to call Stock.Refresh in Application_Change anymore, as it is done automatically now.

  • Don't crash when closing a project if reverting non important files fails. Display a message instead.

  • Ignore unknown inherited classes when loading information about a component or a project.

  • Invert project icons when a dark theme is used.

  • Fix incorrect icon references in the main form.

  • Update French translation.

  • Update Simplified Chinese translation.

SELFTEST

  • OldBugs.BugStringToFloatConversion no works with 3.20.

WIKI

  • Implements dark mode support.

  • New upload interface for image pages.

  • Fix page width.

INTERPRETER

  • Add GB.CheckString() API.

  • Do not crash when loading misaligned archive files on ARM 32 bits systems.

ARCHIVER

  • Do not emit misaligned archive files anymore.

GB.DB2

  • Result.Update() does not crash anymore when not setting any field.

GB.FORM

TabPanel

  • The tab bar width was sometimes not correctly refreshed.

MenuButton

  • Don't use selected colors to draw the button when the Menu property is not defined.

  • Correctly react to system colors change.

ColorChooser

  • Color component icons are now correctly refreshed on theme change.

DocumentView

  • Mouse wheel works again.

  • Zooming with mouse wheel now uses the mouse position as zoom center point.

FontChooser

  • Fix font preview in dark mode.

  • Font preview works correctly with gb.qt6 now.

  • Add more characters in the text preview.

Miscellaneous

  • Update French translation.

GB.FORM.EDITOR

  • TextEditor: Fix how modification markers are drawn so that it looks correct on dark mode.

  • TextEditor: Prevent a possible infinite recursion when setting the Theme property.

GB.FORM.STOCK

  • Add some new stock icons and redraw some others.

  • Add some new application icons.

  • Modify some gambas-thin icons that were not very readable when converted to dark mode.

  • Default stock icons now use the gambas-thin theme.

  • Icon map fixes. Right-to-left icon list fixes.

GB.GTK

  • UserContainer._Container now correctly handles properties proxied to the actual internal container.

  • Control.Drop is not proxied anymore.

  • Call Stock.Refresh if Application.Theme changes.

GB.GTK3

  • UserContainer._Container now correctly handles properties proxied to the actual internal container.

  • Control.Drop is not proxied anymore.

  • Call Stock.Refresh if Application.Theme changes.

  • Fix default naming of controls so that GTK+3 stylesheets work.

  • Forgot to remove a debugging message.

GB.GUI.BASE

  • Call Stock.Refresh if Application.Theme changes.

GB.HIGHLIGHT

  • CSS highlighting: Fix highlighting of identifiers starting with dashes.

GB.JIT

  • Put all headers inside the translated code without using #include, so that the cache is not incorrectly used if the headers contents change.

GB.PDF

  • Fix compilation with poppler version >= 24.12.

GB.QT4

  • UserContainer._Container now correctly handles properties proxied to the actual internal container.

  • Control.Drop is not proxied anymore.

  • Call Stock.Refresh if Application.Theme changes.

  • Paint.LineWidth returns 1 when it has been set to 1.

  • Use the same default naming of controls as gb.gtk3.

GB.QT5

  • UserContainer._Container now correctly handles properties proxied to the actual internal container.

  • Control.Drop is not proxied anymore.

  • Call Stock.Refresh if Application.Theme changes.

  • Paint.LineWidth returns 1 when it has been set to 1.

  • Use the same default naming of controls as gb.gtk3.

GB.QT6

  • UserContainer._Container now correctly handles properties proxied to the actual internal container.

  • Control.Drop is not proxied anymore.

  • Call Stock.Refresh if Application.Theme changes.

  • Paint.LineWidth returns 1 when it has been set to 1.

  • Use the same default naming of controls as gb.gtk3.

GB.UTIL

  • Shell.Copy: Fix the behaviour when the target is a directory.