Commit graph

1048 commits

Author SHA1 Message Date
gambas
cf8abc4639 Make 'gb.gtk' compile again.
[GB.GTK]
* BUG: Make 'gb.gtk' compile again.
2021-01-18 22:03:21 +01:00
gambas
8d652ed193 GTK+ fixes, especially for Wayland.
[GB.GTK]
* NEW: Add minimum size to buttons, TextBox and Slider controls.
* BUG: Handle key events before global shortcuts only for GtkEntry and GtkTextView widgets.
* BUG: Fix client decoration size computation.
* BUG: The size of a window is now always the size of its contents, without the decorations.

[GB.GTK3]
* NEW: Add minimum size to buttons, TextBox and Slider controls.
* BUG: Handle key events before global shortcuts only for GtkEntry and GtkTextView widgets.
* BUG: Fix client decoration size computation.
* BUG: The size of a window is now always the size of its contents, without the decorations.
* NEW: Centering a window is a now platform-specific.
2021-01-18 21:55:07 +01:00
gambas
cfc6de5e08 Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.
[GB.GTK]
* BUG: Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.

[GB.GTK3]
* BUG: Fix GTK+ warnings and errors when freeing stuff before the GUI is initialized.
2021-01-17 20:35:13 +01:00
gambas
c211efd0c8 Creating a control with a NULL container now raises an error instead of crashing.
[GB.GTK]
* BUG: Creating a control with a NULL container now raises an error instead of crashing.

[GB.GTK3]
* BUG: Creating a control with a NULL container now raises an error instead of crashing.
2021-01-16 16:53:36 +01:00
gambas
feeb175c46 Fix Mouse.StartX and Mouse.StartY. Fix underline and strikeout text in Label and TextLabel.
[GB.GTK]
* BUG: Mouse.StartX and Mouse.StartY are now always available during mouse events.
* BUG: Label and TextLabel now correctly display underline or strikeout text.

[GB.GTK3]
* BUG: Mouse.StartX and Mouse.StartY are now always available during mouse events.
* BUG: Label and TextLabel now correctly display underline or strikeout text.
2021-01-16 04:32:04 +01:00
gambas
ce379dadb0 Fix mouse cursor handling of TextBox, ComboBox and TextArea.
[GB.GTK3]
* BUG: Fix mouse cursor handling of TextBox, ComboBox and TextArea.
2021-01-15 00:51:27 +01:00
gambas
1d270de336 Do not crash anymore when loading an Animation fails.
[DEVELOPMENT ENVIRONMENT]
* BUG: Don't use the deprecated MovieBox.Path property anymore.

[GB.GTK]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.GTK3]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.QT4]
* BUG: Do not crash anymore when loading an Animation fails.

[GB.QT5]
* BUG: Do not crash anymore when loading an Animation fails.
2021-01-11 01:24:20 +01:00
gambas
bfb6cce882 Remove include of the deleted 'gmoviebox.h' file.
[GB.GTK]
* BUG: Remove include of the deleted 'gmoviebox.h' file.

[GB.GTK3]
* BUG: Remove include of the deleted 'gmoviebox.h' file.
2021-01-09 10:52:12 +01:00
gambas
a0a2d0379c MovieBox is now implemented in Gambas, through a new Animation class.
[DEVELOPMENT ENVIRONMENT]
* NEW: Support for the MovieBox Animation property.

[GB.GTK]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.GTK3]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.GUI.BASE]
* NEW: MovieBox is now implemented in Gambas.

[GB.QT4]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.

[GB.QT5]
* NEW: Animation is a new class that represents an animated image.
* NEW: MovieBox has been removed.
2021-01-09 10:24:56 +01:00
gambas
0d076a7b7c Fix arrangement of containers having the AutoResize property set and get rid of many deprecated GTK+ API on GTK+3.
[GB.GTK]
* BUG: Fix arrangement of containers having the AutoResize property set.
* BUG: TabStrip: Fix the client area computing routine.

[GB.GTK3]
* BUG: Fix arrangement of containers having the AutoResize property set.
* BUG: Get rid of many deprecated GTK+ API (not all yet).
* BUG: TabStrip: Fix the client area computing routine.
2021-01-08 18:36:02 +01:00
gambas
756b051160 Fixes in keyboard management and default / cancel buttons.
[GB.GTK]
* BUG: Button: Fix button click animation.
* BUG: Button: The default and cancel buttons of all embedded forms of the current window are now taken into account.
* BUG: Button: Unmapped default or cancel buttons are now ignored.
* BUG: Keyboard events are now propagated to the parent containers.

[GB.GTK3]
* BUG: Button: Fix button click animation.
* BUG: Button: The default and cancel buttons of all embedded forms of the current window are now taken into account.
* BUG: Button: Unmapped default or cancel buttons are now ignored.
* BUG: Keyboard events are now propagated to the parent containers.
2021-01-06 23:48:24 +01:00
gambas
647ef86ad2 Fix TabStrip client area size computation and Menu shortcut management.
[GB.GTK]
* BUG: TabStrip: Fix client area size computation.
* BUG: Menu: Fix shortcut management.

[GB.GTK3]
* BUG: TabStrip: Fix client area size computation.
* BUG: Menu: Fix shortcut management.
2021-01-06 20:31:53 +01:00
gambas
26dc727b78 Fix 'gb.gtk' crash when setting the accelerator management workaround, and implement Desktop.Platform.
[GB.GTK]
* BUG: Do not crash anymore when setting the accelerator management workaround.
* NEW: Desktop.Platform is a new property that returns the current platform in use.

[GB.GTK3]
* NEW: Desktop.Platform is a new property that returns the current platform in use.
2020-12-26 22:53:25 +01:00
gambas
93c9cbbe5c Some wayland fixes on menus.
[GB.GTK]
* BUG: Hidden menu bar is now moved in the negative horizontal coordinates so that a click on the CSD title bar does not see it.

[GB.GTK3]
* BUG: Fix Menu.Popup() on Wayland.
* BUG: Hidden menu bar is now moved in the negative horizontal coordinates so that a click on the CSD title bar does not see it.
2020-12-22 03:37:19 +01:00
gambas
10abab3811 Merge branch 'master' into wayland 2020-12-21 17:35:15 +01:00
gambas
7716f08584 Fix how menus are destroyed.
[GB.GTK]
* BUG: Fix how menus are destroyed.

[GB.GTK3]
* BUG: Fix how menus are destroyed.
2020-12-21 17:32:41 +01:00
gambas
5fac3c81a0 Printer: Setting OutputFile property to a void string does not toggle printing to file.
[GB.GTK]
* BUG: Printer: Setting OutputFile property to a void string does not toggle printing to file.

[GB.GTK3]
* BUG: Printer: Setting OutputFile property to a void string does not toggle printing to file.
2020-12-21 17:31:05 +01:00
Benoît Minisini
7d81756ead Some fixes in merge with master.
[GB.GTK3]
* BUG: Some fixes in merge with master.
2020-12-21 06:35:40 +01:00
Benoît Minisini
eefb03c5ba Merge branch 'wayland' of https://gitlab.com/gambas/gambas into wayland 2020-12-21 05:19:07 +01:00
Benoît Minisini
a6311c6b63 Continue working on Wayland support.
[GB.GTK3]
* NEW: Support for specific platforms: X11 & Wayland.

[GB.GTK3.X11]
* NEW: This is the GTK+3 X11 platform component.

[GB.GTK3.WAYLAND]
* NEW: This is the GTK+3 Wayland platform component.
2020-12-21 04:54:14 +01:00
gambas
2387e8c549 Emit keyboard events from the top-level window when no control has the focus.
[GB.GTK]
* BUG: Emit keyboard events from the top-level window when no control has the focus.

[GB.GTK3]
* BUG: Emit keyboard events from the top-level window when no control has the focus.
2020-12-19 22:26:09 +01:00
gambas
50e51284ae Fix popup menus that didn't pop up with some widget themes like 'Yaru'.
[GB.GTK3]
* BUG: Fix popup menus that didn't pop up with some widget themes like 'Yaru'.
2020-12-19 21:55:13 +01:00
gambas
e1fc63ba15 Fixes in Label autoresize, Panel arrangement, and Slider Max property.
[GB.GTK]
* BUG: Panel: Arrangement is now correctly triggered when the background color is set.
* BUG: Label: Fix autoresize behavior when the parent has an automatic arrangement.
* BUG: Slider: Max property works correctly again.

[GB.GTK3]
* BUG: Label: Fix autoresize behavior when the parent has an automatic arrangement.
* BUG: Slider: Max property works correctly again.
2020-12-19 00:26:01 +01:00
gambas
be18f431c7 Fixes in rich text to pango markup conversion.
[GB.GTK]
* NEW: Replace '<code>' by '<tt>' in rich text.
* BUG: '<p>' in rich text is replaced by a single line break.

[GB.GTK3]
* NEW: Replace '<code>' by '<tt>' in rich text.
* BUG: '<p>' in rich text is replaced by a single line break.
2020-12-18 02:57:12 +01:00
gambas
6b4b954cfa Get rid of unused code of native message boxes.
[GB.GTK]
* BUG: Get rid of unused code of native message boxes.

[GB.GTK3]
* BUG: Get rid of unused code of native message boxes.
2020-12-18 02:09:04 +01:00
gambas
c3e07f4a33 Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.
[GB.GTK]
* BUG: Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.

[GB.GTK3]
* BUG: Fix conversion to pango markup language when a rich text markup has spaces after the '<' character.
2020-12-17 04:03:40 +01:00
gambas
e61e7583bc Fix a buffer overflow that makes the component crash on aarch64.
[GB.GTK3]
* BUG: Fix a buffer overflow that makes the component crash on aarch64.
2020-12-12 22:44:57 +01:00
gambas
c2242f5d59 Fix compilation on GTK+ < 3.22.
[GB.GTK]
* BUG: Fix some deprecation warning messages.

[GB.GTK3]
* BUG: Fix compilation on GTK+ < 3.22.
2020-12-11 17:31:44 +01:00
gambas
6593b75980 Remove debugging message.
[GB.GTK]
* BUG: Remove debugging message.

[GB.GTK3]
* BUG: Remove debugging message.
2020-12-10 12:39:35 +01:00
gambas
c0061c86da Window: Lower() and Raise() methods now work as expected.
[GB.GTK]
* BUG: Window: Lower() and Raise() methods now work as expected.

[GB.GTK3]
* BUG: Window: Lower() and Raise() methods now work as expected.
* BUG: Fix use of deprecated functions.
2020-12-09 22:42:05 +01:00
gambas
21b6007e8a Fix TabStrip control.
[GB.GTK]
* BUG: Fix TabStrip control.

[GB.GTK3]
* BUG: Fix TabStrip control.
2020-11-28 20:20:32 +01:00
gambas
dd40941136 Fix menu icons that were sometimes too small.
[GB.GTK]
* BUG: Fix menu icons that were sometimes too small.

[GB.GTK3]
* BUG: Fix menu icons that were sometimes too small.
2020-11-27 20:32:33 +01:00
gambas
03c5e93c7d Default and cancel buttons now work again.
[GB.GTK]
* BUG: Default and cancel buttons now work again.

[GB.GTK3]
* BUG: Default and cancel buttons now work again.
2020-11-24 21:57:57 +01:00
gambas
9c3fc87265 Keyboard management fixes.
[GB.GTK]
* BUG: Fix management of default and cancel buttons shortcuts.
* BUG: Workaround the default accelerator management of GTK, so that they are triggered only if no other widget handle the keyboard event.

[GB.GTK3]
* BUG: Fix management of default and cancel buttons shortcuts.
* BUG: Workaround the default accelerator management of GTK, so that they are triggered only if no other widget handle the keyboard event.
2020-11-24 21:37:55 +01:00
gambas
3906550902 Fix ComboBox and TextBox Border property, and possible problems with minimum size of buttons.
[GB.GTK3]
* BUG: Globally override minimum size of buttons in CSS stylesheet.
* BUG: Fix ComboBox and TextBox Border property.
2020-11-24 00:23:30 +01:00
gambas
0caed621e3 No padding in borderless combobox.
[GB.GTK3]
* NEW: No padding in borderless combobox.
2020-11-23 21:26:42 +01:00
gambas
778feecff6 Use GTK+ internals to make ComboBox Border, Foreground and Background properties work as expected.
[GB.GTK3]
* BUG: Use GTK+ internals to make ComboBox Border, Foreground and Background properties work as expected.
2020-11-23 03:55:46 +01:00
gambas
6e26b524e5 Fix Container.FindChild(), theme change management, and Menu.Popup() warnings on GTK+3.
[GB.GTK]
* BUG: Container.FindChild() now takes UserContainer into account.
* BUG: A few fixes on theme change management.

[GB.GTK3]
* BUG: Menu.Popup() does not print GTK+ warnings anymore when run outside of an event handler.
* BUG: A few fixes on theme change management.
2020-11-19 15:57:25 +01:00
gambas
3352bb6d9d Fixes in menu management and focus navigation.
[GB.GTK]
* BUG: Fix menu layouting routine.
* BUG: Focus navigation now ignore unmapped controls.
* BUG: Window.Resize() now works on non-resizable windows.
* BUG: Menu Click event is now delayed, like in Qt components.

[GB.GTK3]
* BUG: Fix menu layouting routine.
* BUG: Focus navigation now ignore unmapped controls.
* BUG: Menu Click event is now delayed, like in Qt components.
2020-11-17 16:44:02 +01:00
gambas
5c92dbd30f Remove deprecated Stock class.
[GB.GTK]
* BUG: Remove deprecated Stock class.

[GB.GTK3]
* BUG: Remove deprecated Stock class.
2020-11-17 09:32:53 +01:00
gambas
2a849671a5 Fix compilation on GTK+3 version < 3.12.
[GB.GTK3]
* BUG: Fix compilation on GTK+3 version < 3.12.
2020-11-16 22:40:45 +01:00
gambas
71190a534e Fix detection of system colors and react to widget theme change.
[GB.GTK]
* NEW: React to widget theme change.

[GB.GTK3]
* BUG: Fix detection of system colors.
* NEW: React to widget theme change.
2020-11-16 22:02:13 +01:00
gambas
45cfc32a24 Setting the ComboBox.Index property to -1 does not raise the Click event anymore.
[GB.GTK]
* BUG: Setting the ComboBox.Index property to -1 does not raise the Click event anymore.

[GB.GTK3]
* BUG: Setting the ComboBox.Index property to -1 does not raise the Click event anymore.
2020-11-16 01:20:59 +01:00
gambas
b2a55d6bc1 Fix TabStrip Design property behaviour.
[GB.GTK]
* BUG: Fix TabStrip Design property behaviour.

[GB.GTK3]
* BUG: Fix TabStrip Design property behaviour.

[GB.QT4]
* BUG: Fix TabStrip Design property behaviour.

[GB.QT5]
* BUG: Fix TabStrip Design property behaviour.
2020-11-15 23:27:08 +01:00
gambas
faa5f659c3 Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.
[GB.GTK]
* BUG: Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.

[GB.GTK3]
* BUG: Handling the Menu event does not prevent the native menus of TextBox and TextArea to popup anymore.
2020-11-14 22:53:50 +01:00
gambas
4fb647d258 Fix explicit destroying of non-persistent windows.
[GB.GTK]
* BUG: Fix explicit destroying of non-persistent windows.

[GB.GTK3]
* BUG: Fix explicit destroying of non-persistent windows.
2020-11-14 17:17:36 +01:00
gambas
5b48b7763a Deleting a window now raises the Close event immediately, like in Qt components.
[GB.GTK]
* BUG: Deleting a window now raises the Close event immediately, like in Qt components.

[GB.GTK3]
* BUG: Deleting a window now raises the Close event immediately, like in Qt components.
2020-11-14 16:20:20 +01:00
gambas
677e1086ef Many fixes and clean-ups.
[GB.GTK]
* BUG: Setting the ComboBox.List property does not raise the Click event anymore, like in Qt components.
* BUG: Watcher objects now correctly follow controls that recreate their inner widget.
* NEW: Controls initial geometry is now the same as in Qt components.

[GB.GTK3]
* BUG: Setting the ComboBox.List property does not raise the Click event anymore, like in Qt components.
* BUG: Watcher objects now correctly follow controls that recreate their inner widget.
* NEW: Controls initial geometry is now the same as in Qt components.
2020-11-14 03:42:52 +01:00
gambas
ab7f329f12 Fix crash when clicking on a top-level menu.
[GB.GTK]
* BUG: Fix crash when clicking on a top-level menu.

[GB.GTK3]
* BUG: Fix crash when clicking on a top-level menu.
2020-11-13 18:32:13 +01:00
gambas
1cd8bd9035 Rework Design property management so that it works better.
[GB.GTK]
* NEW: Rework Design property management so that it works better.
* OPT: Cache font metrics to speed up some font properties.

[GB.GTK3]
* NEW: Rework Design property management so that it works better.
* OPT: Cache font metrics to speed up some font properties.

[GB.QT4]
* NEW: Rework Design property management so that it works better.

[GB.QT5]
* NEW: Rework Design property management so that it works better.
2020-11-12 19:58:51 +01:00
gambas
c2ffd3c7b9 TextArea now have no minimum size if they have no scrollbars. Icons of disabled menus are now desaturated.
[GB.GTK]
* BUG: TextArea now have no minimum size if they have no scrollbars.
* BUG: Icons of disabled menus are now desaturated.

[GB.GTK3]
* BUG: TextArea now have no minimum size if they have no scrollbars.
* BUG: Icons of disabled menus are now desaturated.
2020-11-11 00:21:54 +01:00
gambas
9256c5d1af Don't call a 'gb.gtk3' method.
[GB.GTK]
* BUG: Don't call a 'gb.gtk3' method.
2020-11-10 02:06:11 +01:00
gambas
1c478df760 Fix spurious resizing of embedded windows having menus.
[GB.GTK]
* BUG: Fix spurious resizing of embedded windows having menus.

[GB.GTK3]
* BUG: Fix spurious resizing of embedded windows having menus.
2020-11-09 20:46:12 +01:00
gambas
c732871271 Workaround for Pango not being able to display the Gambas font correctly. Fix Control.Reparent()
[GB.GTK]
* BUG: Control.Reparent() now correctly restores the control position in all cases.

[GB.GTK3]
* BUG: Implement a workaround for Pango not being able to display the Gambas font correctly.
* BUG: Control.Reparent() now correctly restores the control position in all cases.
2020-11-09 20:12:15 +01:00
gambas
52d7ddf745 WebView widget is now patched.
[GB.GTK3]
* NEW: Allow other GTK+3 components to patch their widget.

[GB.GTK3.WEBVIEW]
* NEW: WebView widget is now patched.
2020-11-09 03:31:34 +01:00
gambas
fa57dd5934 Make keyboard data available the same way as in Qt components.
[GB.GTK]
* BUG: Make keyboard data available the same way as in Qt components.

[GB.GTK3]
* BUG: Make keyboard data available the same way as in Qt components.
2020-11-09 03:27:55 +01:00
gambas
1e7babd1ee Popup the same window several times now works correctly.
[GB.GTK]
* BUG: Popup the same window several times now works correctly.

[GB.GTK3]
* BUG: Popup the same window several times now works correctly.
2020-11-09 03:27:07 +01:00
gambas
3da8c41bdc TextArea works again.
[GB.GTK]
* BUG: TextArea works again.

[GB.GTK3]
* BUG: TextArea works again.
2020-11-07 10:53:17 +01:00
gambas
0b6359e697 Fix the workaround on TabStrip layout error messages.
[GB.GTK3]
* BUG: Fix the workaround on TabStrip layout error messages.
2020-11-07 00:45:17 +01:00
gambas
526919c990 Workaround GTK+ layouting errors on TabStrip.
[GB.GTK3]
* BUG: Workaround GTK+ layouting errors on TabStrip.
2020-11-07 00:36:28 +01:00
gambas
7c5605051f New menu positioning functions are available since GTK+ 3.22 only.
[GB.GTK3]
* BUG: New menu positioning functions are available since GTK+ 3.22 only.
2020-11-06 14:15:43 +01:00
gambas
339cde7d15 Container children are not incorrectly shown in some cases anymore.
[GB.GTK]
* OPT: Get rid of the 'g_typ' gControl variable.
* BUG: Menu having children cannot be checked anymore.
* BUG: Container children are not incorrectly shown in some cases anymore.

[GB.GTK3]
* OPT: Get rid of the 'g_typ' gControl variable.
* BUG: Menu having children cannot be checked anymore.
* BUG: Container children are not incorrectly shown in some cases anymore.
2020-11-06 13:40:14 +01:00
gambas
e93cdacf10 Checking or unchecking a menu does not raise the Click event anymore.
[GB.GTK]
* BUG: Checking or unchecking a menu does not raise the Click event anymore.

[GB.GTK3]
* BUG: Checking or unchecking a menu does not raise the Click event anymore.
2020-11-05 03:01:39 +01:00
gambas
3282fe3cca Fix management of menus.
[GB.GTK]
* BUG: Get rid of glib deprecation warnings.
* OPT: Lazy initialization of input methods for widgets having none by default.
* BUG: Fix management of menus and make them behave like in Qt components.

[GB.GTK3]
* OPT: Lazy initialization of input methods for widgets having none by default.
* BUG: Fix management of menus and make them behave like in Qt components.
2020-11-05 01:38:57 +01:00
gambas
905c2f568d Handle focus traversal our owns way.
[GB.GTK]
* NEW: Handle focus traversal our owns way.

[GB.GTK3]
* NEW: Handle focus traversal our owns way.
2020-11-01 08:38:56 +01:00
gambas
8f68f26233 Allow the value of markup attributes not to be embedded between quotes in rich text.
[GB.GTK]
* BUG: Allow the value of markup attributes not to be embedded between quotes in rich text.

[GB.GTK3]
* BUG: Allow the value of markup attributes not to be embedded between quotes in rich text.
2020-10-31 18:53:36 +01:00
gambas
d20832fd74 Control.Reparent() correctly moves the control if the parent is not changed.
[GB.GTK]
* BUG: Control.Reparent() correctly moves the control if the parent is not changed.

[GB.GTK3]
* BUG: Control.Reparent() correctly moves the control if the parent is not changed.
2020-10-31 16:46:18 +01:00
gambas
ca20c1f87f Fix AutoResize arrangement.
[GB.GTK]
* BUG: Fix AutoResize arrangement.

[GB.GTK3]
* BUG: Fix AutoResize arrangement.
2020-10-27 22:32:42 +01:00
gambas
abf6b9fbcf Fix menu shortcuts.
[GB.GTK]
* BUG: Fix menu shortcuts.

[GB.GTK3]
* BUG: Fix menu shortcuts.
2020-10-23 01:29:51 +02:00
gambas
a7f8a18ca2 Fix menu Show event and allow Mouse key modifiers properties outside of Mouse event handlers.
[GB.GTK]
* BUG: Mouse key modifiers properties are now available outside of Mouse event handlers as in Qt components.
* BUG: Menu Show event now behaves as expected, and allow recreating the menu contents during its event handler.

[GB.GTK3]
* BUG: Mouse key modifiers properties are now available outside of Mouse event handlers as in Qt components.
* BUG: Menu Show event now behaves as expected, and allow recreating the menu contents during its event handler.
2020-10-22 10:06:40 +02:00
gambas
5a506877ab When changing the geometry of a control, the move is done before the resize, to get the same behaviour as the Qt components.
[GB.GTK]
* BUG: Fix an uninitialized flag in 'gmainwindow.cpp'.
* BUG: When changing the geometry of a control, the move is done before the resize, to get the same behaviour as the Qt components.

[GB.GTK3]
* BUG: Fix an uninitialized flag in 'gmainwindow.cpp'.
* BUG: When changing the geometry of a control, the move is done before the resize, to get the same behaviour as the Qt components.
2020-10-21 00:49:32 +02:00
gambas
279e56381f Lots of 'gb.gtk' and 'gb.gtk3' fixes.
[GB.GTK]
* NEW: Control.Design is partially implemented.
* BUG: A control being dragged cannot be explicitely destroyed anymore.
* NEW: DrawingArea: Paint default color is now its foreground color.
* BUG: ToolButtons do not steal focus anymore.
* BUG: Fix focus management so that it behaves like Qt.
* OPT: Control: Modifying the Expand property does not trigger an arrangement anymore if the Ignore property is set.
* BUG: Control: Fix Raise() and Lower() method that sometimes hid the control.
* BUG: Windows can now take focus by default.
* BUG: Menu: Shortcuts are now automatically disabled when the menu or one if its parent is disabled.

[GB.GTK3]
* NEW: Control.Design is partially implemented.
* BUG: Fix Style.PaintCheck() and Style.PaintOption().
* BUG: A control being dragged cannot be explicitely destroyed anymore.
* NEW: DrawingArea: Paint default color is now its foreground color.
* BUG: ToolButtons do not steal focus anymore.
* BUG: Fix focus management so that it behaves like Qt.
* OPT: Control: Modifying the Expand property does not trigger an arrangement anymore if the Ignore property is set.
* BUG: Control: Fix Raise() and Lower() method that sometimes hid the control.
* BUG: Color: Fix button, tooltip and link system colors and support more themes.
* BUG: Windows can now take focus by default.
* BUG: Menu: Fix indicator drawing.
* BUG: Menu: Shortcuts are now automatically disabled when the menu or one if its parent is disabled.
2020-10-19 22:42:15 +02:00
gambas
10427e7ac9 Many bug fixes in GTK components.
[GB.GTK]
* BUG: Button text is not truncated anymore.
* BUG: Disabled button icons are now correctly desaturated.
* BUG: Fix a memory leak in the Application.Restart property.
* BUG: Window close management is now similar to QT components' one.
* BUG: Form.Load() now behaves correctly if the static instance is already created.
* NEW: Separators are drawn he same wat as in Qt components.

[GB.GTK3]
* BUG: Button text is not truncated anymore.
* BUG: Disabled button icons are now correctly desaturated.
* BUG: Fix a memory leak in the Application.Restart property.
* BUG: Window close management is now similar to QT components' one.
* BUG: Form.Load() now behaves correctly if the static instance is already created.
* NEW: Separators are drawn he same wat as in Qt components.
2020-10-10 16:17:54 +02:00
gambas
834ad5d882 Fix control arrangement, buttons appearance, ToolButton focus stealing, and embedded windows resize event.
[GB.GTK]
* BUG: Control: Make MoveResize() method behave the same way as in QT components.
* BUG: Container: Arrange contents only when mapped, as in QT components.
* BUG: ToolButton: Do not steal the focus anymore when clicked.
* NEW: Button & ToolButton: Draw buttons the same way as in QT components.

[GB.GTK3]
* BUG: Control: Make MoveResize() method behave the same way as in QT components.
* BUG: Container: Arrange contents only when mapped, as in QT components.
* BUG: ToolButton: Do not steal the focus anymore when clicked.
* NEW: Button & ToolButton: Draw buttons the same way as in QT components.
* BUG: Window: Embedded windows now correctly raise their Resize event.
2020-10-08 01:22:16 +02:00
gambas
c4f7b69ee4 Fix Control Lower(), Raise() and Refresh() methods.
[GB.GTK]
* BUG: Fix Control.Lower() and Control.Raise() methods.
* BUG: Fix Control.Refresh() method when the update area is specified.

[GB.GTK3]
* BUG: Fix Control.Lower() and Control.Raise() methods.
* BUG: Fix Control.Refresh() method when the update area is specified.
2020-10-07 00:43:54 +02:00
gambas
fa65f45d5d Fix management of Paint.Font. Underline and Strikeout properties are now correctly drawn.
[GB.GTK]
* BUG: Fix management of Paint.Font. Underline and Strikeout properties are now correctly drawn.

[GB.GTK3]
* BUG: Fix management of Paint.Font. Underline and Strikeout properties are now correctly drawn.
2020-10-06 01:39:12 +02:00
gambas
0330156ab0 Void tooltips do not display anything anymore.
[GB.GTK]
* OPT: Moving or resizing a control with Ignore property set does not trigger a arrangment anymore.
* BUG: Void tooltips do not display anything anymore.

[GB.GTK3]
* OPT: Moving or resizing a control with Ignore property set does not trigger a arrangment anymore.
* BUG: Void tooltips do not display anything anymore.
2020-10-03 02:48:38 +02:00
gambas
2370d3507a TextArea: Fix both Font and Background property.
[GB.GTK3]
* BUG: TextArea: Fix both Font and Background property.
2020-10-02 09:53:57 +02:00
gambas
df83543ab3 Fix Menu proxy management and Control.Refresh().
[GB.GTK]
* BUG: Fix Menu proxy management.
* BUG: Fix Control.Refresh() method when arguments are specified.
* BUG: Fix an uninitalized internal control flag.

[GB.GTK3]
* BUG: Fix Menu proxy management.
* BUG: Fix Control.Refresh() method when arguments are specified.
* BUG: Fix an uninitalized internal control flag.
2020-10-01 23:23:40 +02:00
gambas
d9e2d27580 Button grab is now automatically released when a new event loop is started.
[GB.GTK]
* BUG: Button grab is now automatically released when a new event loop is started.

[GB.GTK3]
* BUG: Button grab is now automatically released when a new event loop is started.
2020-09-30 21:02:47 +02:00
gambas
0692547c25 TextArea background color property now works as expected.
[GB.GTK3]
* BUG: TextArea background color property now works as expected.
2020-09-29 23:32:50 +02:00
gambas
df30233faa WebView: Implement events, and the Icon and Progress properties.
[GB.GTK3.WEBVIEW]
* NEW: WebView: Implement events.
* NEW: WebView: Implement the Icon and the Progress properties.

[GB.QT5.WEBVIEW]
* NEW: WebView: Implement events.
* NEW: WebView: Implement the Icon and the Progress properties.
2020-09-29 00:36:23 +02:00
gambas
66e1539a4f Fix containers Indent property.
[GB.GTK]
* BUG: Fix containers Indent property.

[GB.GTK3]
* BUG: Fix containers Indent property.

[GB.QT4]
* BUG: Fix containers Indent property.

[GB.QT5]
* BUG: Fix containers Indent property.
2020-09-29 00:33:42 +02:00
gambas
63e83807c2 Widget tooltips now handle newlines and linefeeds the same way as in Qt.
[GB.GTK]
* BUG: Widget tooltips now handle newlines and linefeeds the same way as in Qt.

[GB.GTK3]
* BUG: Widget tooltips now handle newlines and linefeeds the same way as in Qt.
2020-09-26 18:47:04 +02:00
gambas
b770395a3b Start development of new GTK+ and QT web browser components.
[DEVELOPMENT ENVIRONMENT]
* NEW: Add description of gb.gtk3.webview and gb.qt5.webview

[GB.GTK]
* NEW: Enhance gb.gtk API for child components like gb.gtk3.webview.

[GB.GTK3.WEBVIEW]
* NEW: Beginning of a new web browser component based on WebKitGTK.

[GB.QT5.WEBVIEW]
* NEW: Beginning of a new web browser component based on QWebEngineView.
2020-09-21 01:09:47 +02:00
gambas
183936cfe7 Drawing a null rich text string does not crash anymore.
[GB.GTK]
* BUG: Drawing a null rich text string does not crash anymore.

[GB.GTK3]
* BUG: Drawing a null rich text string does not crash anymore.
2020-08-30 21:25:10 +02:00
gambas
362e6ce64d The automatic width of RadioButton and CheckBox is now larger to avoid GTK+ warnings.
[GB.GTK]
* BUG: The automatic width of RadioButton and CheckBox is now larger to avoid GTK+ warnings.

[GB.GTK3]
* BUG: The automatic width of RadioButton and CheckBox is now larger to avoid GTK+ warnings.
2020-08-20 21:44:24 +02:00
gambas
ea6c2d6074 Wayland compositors and client-side decorations support.
[GB.GTK3]
* BUG: Popups now work on Wayland compositors.
* BUG: Support for client-side decorations.
2020-08-20 01:45:35 +02:00
gambas
0720b6763d Fix popup management, and save drawing context when running a style method.
[GB.GTK]
* BUG: Fix popup management.
* BUG: Save drawing context when running a style method.

[GB.GTK3]
* BUG: Fix popup management.
* BUG: Save drawing context when running a style method.
2020-08-03 02:22:02 +02:00
gambas
577fe110ba Fix keyboard and mouse grab when opening a popup.
[GB.GTK]
* BUG: Fix keyboard and mouse grab when opening a popup.

[GB.GTK3]
* BUG: Fix keyboard and mouse grab when opening a popup.
2020-08-02 21:01:36 +02:00
gambas
1783308623 Opening a popup always raise it to the pop now.
[GB.GTK]
* BUG: Opening a popup always raises it to the pop now.

[GB.GTK3]
* BUG: Opening a popup always raises it to the pop now.
2020-06-29 20:21:47 +02:00
gambas
577779961a Negative values are replaced by zero when setting Application.Busy.
[GB.GTK]
* NEW: Negative values are replaced by zero when setting Application.Busy.

[GB.GTK3]
* NEW: Negative values are replaced by zero when setting Application.Busy.

[GB.QT4]
* NEW: Negative values are replaced by zero when setting Application.Busy.

[GB.QT5]
* NEW: Negative values are replaced by zero when setting Application.Busy.
2020-06-17 18:26:08 +02:00
gambas
517fd52b20 Add Mouse.Click property and fix gb.gtk3 style methods.
[GB.GTK]
* NEW: Mouse.Click is a new property that returns the click index in a multi-click event.
* NEW: Style.Name is now lowercase.

[GB.GTK3]
* NEW: Mouse.Click is a new property that returns the click index in a multi-click event.
* NEW: Style.Name is now lowercase.
* BUG: Fix Style.PaintCheck() and Style.PaintArrow() for GTK+ >= 3.14.
2020-05-19 22:23:02 +02:00
gambas
a520d12ef4 Application.DarkTheme is a new property that returns if the current color scheme is dark.
[GB.GTK]
* NEW: Application.DarkTheme is a new property that returns if the current color scheme is dark.

[GB.GTK3]
* NEW: Application.DarkTheme is a new property that returns if the current color scheme is dark.

[GB.QT4]
* NEW: Application.DarkTheme is a new property that returns if the current color scheme is dark.

[GB.QT5]
* NEW: Application.DarkTheme is a new property that returns if the current color scheme is dark.
2020-05-18 13:23:27 +02:00
gambas
c443337973 The Window State event is correctly raised now, and the state properties are now correctly synchronized.
[GB.GTK]
* BUG: The Window State event is correctly raised now, and the state properties are now correctly synchronized.

[GB.GTK3]
* BUG: The Window State event is correctly raised now, and the state properties are now correctly synchronized.
2020-04-23 19:05:48 +02:00
gambas
ee81637c72 Window: Add a State event that is raised when the window is minimized, maximized or set to fullscreen.
[GB.GTK]
* NEW: Window: Add a State event that is raised when the window is minimized, maximized or set to fullscreen.

[GB.GTK3]
* NEW: Window: Add a State event that is raised when the window is minimized, maximized or set to fullscreen.

[GB.QT4]
* NEW: Window: Add a State event that is raised when the window is minimized, maximized or set to fullscreen.

[GB.QT5]
* NEW: Window: Add a State event that is raised when the window is minimized, maximized or set to fullscreen.
2020-04-21 08:39:07 +02:00
gambas
e71c1c8e5f Printer.Paper now works as expected.
[GB.GTK]
* BUG: Printer.Paper now works as expected.

[GB.GTK3]
* BUG: Printer.Paper now works as expected.
2020-02-14 00:45:36 +01:00
gambas
ccf1491037 Fix Drag() that was returning the drag frame instead of the target control.
[GB.GTK]
* BUG: Fix Drag() that was returning the drag frame instead of the target control.

[GB.GTK3]
* BUG: Fix Drag() that was returning the drag frame instead of the target control.

[GB.GUI.BASE]
* BUG: Fix Drag() that was returning the drag frame instead of the target control.

[GB.QT4]
* BUG: Fix Drag() that was returning the drag frame instead of the target control.

[GB.QT5]
* BUG: Fix Drag() that was returning the drag frame instead of the target control.
2020-01-24 08:12:01 +01:00
gambas
da2db608bf TextBox: Add Placeholder property.
[GB.GTK]
* NEW: TextBox: Add Placeholder property. Beware that it does nothing as GTK+2 entry widget does not support placeholder text.

[GB.GTK3]
* NEW: TextBox: Add Placeholder property.

[GB.QT4]
* NEW: TextBox: Add Placeholder property.

[GB.QT5]
* NEW: TextBox: Add Placeholder property.
2020-01-24 08:08:42 +01:00
gambas
63000a27fe WAIT NEXT is a new instruction that waits for the next event and process it.
[INTERPRETER]
* NEW: WAIT NEXT is a new instruction that waits for the next event and process it.

[COMPILER]
* NEW: Support for the new WAIT NEXT instruction.

[GB.GTK]
* NEW: Support for the new WAIT NEXT instruction.

[GB.GTK3]
* NEW: Support for the new WAIT NEXT instruction.

[GB.QT4]
* NEW: Support for the new WAIT NEXT instruction.

[GB.QT5]
* NEW: Support for the new WAIT NEXT instruction.
2020-01-02 13:08:45 +01:00
gambas
4771af3b27 TextBox and TextArea KeyPress events cannot be stolen by other controls anymore.
[GB.GTK]
* BUG: TextBox and TextArea KeyPress events cannot be stolen by other controls anymore.

[GB.GTK3]
* BUG: TextBox and TextArea KeyPress events cannot be stolen by other controls anymore.
2019-12-19 08:59:55 +01:00
Laurent Carlier
f1deb8e330 Remove register keyword, deprecated, now reserved keyword with C++17
Fixes "warning: 'register' storage class specifier is deprecated and incompatible with C++17 [-Wdeprecated-register]"
with clang

https://en.cppreference.com/w/cpp/keyword/register
2019-10-30 06:53:09 +00:00
gambas
65d2b783fe Paint.TextHeight is a new property that returns the height of one line of text, and Paint.FontScale is now "transparent".
[GB.DRAW]
* NEW: Paint.TextHeight is a new property that returns the height of one line of text. This is not the same as Paint.Font.Height, as the device resolution is taken into account.

[GB.GTK]
* NEW: Paint.FontScale is now "transparent". Paint.Font.Size is not changed anymore when assigning the Paint.Font property.

[GB.GTK3]
* NEW: Paint.FontScale is now "transparent". Paint.Font.Size is not changed anymore when assigning the Paint.Font property.

[GB.QT4]
* NEW: Paint.FontScale is now "transparent". Paint.Font.Size is not changed anymore when assigning the Paint.Font property.

[GB.QT5]
* NEW: Paint.FontScale is now "transparent". Paint.Font.Size is not changed anymore when assigning the Paint.Font property.
* BUG: Utility windows now kept being in front of their parent window correctly.
2019-10-26 01:06:18 +02:00
gambas
47dddd944a Do not imbricate focus events.
[GB.GTK]
* BUG: Do not imbricate focus events.

[GB.GTK3]
* BUG: Do not imbricate focus events.

[GB.QT4]
* BUG: Do not imbricate focus events.

[GB.QT5]
* BUG: Do not imbricate focus events.
2019-10-12 23:55:38 +02:00
gambas
9409b6be64 Windows whose Utility property is set now use '_NET_WM_WINDOW_TYPE_DIALOG' instead of '_NET_WM_WINDOW_TYPE_DIALOG'.
[GB.GTK]
* NEW: Windows whose Utility property is set now use '_NET_WM_WINDOW_TYPE_DIALOG' instead of '_NET_WM_WINDOW_TYPE_DIALOG'.

[GB.GTK3]
* NEW: Windows whose Utility property is set now use '_NET_WM_WINDOW_TYPE_DIALOG' instead of '_NET_WM_WINDOW_TYPE_DIALOG'.
2019-10-09 17:17:30 +02:00
gambas
8a188342ec Don't leak control reference when raising an error from a click event handler.
[GB.GTK]
* BUG: Don't leak control reference when raising an error from a click event handler.

[GB.GTK3]
* BUG: Don't leak control reference when raising an error from a click event handler.

[GB.QT]
* BUG: Don't leak control reference when raising an error from a click event handler.

[GB.QT4]
* BUG: Don't leak control reference when raising an error from a click event handler.
2019-09-17 10:12:48 +02:00
gambas
7a49f039b5 Uncatched errors raised from an event handler can be ignored now.
[INTERPRETER]
* NEW: Uncatched errors raised from an event handler can be ignored now.

[GB.GTK]
* NEW: Uncatched errors raised from an event handler can be ignored now.

[GB.GTK3]
* NEW: Uncatched errors raised from an event handler can be ignored now.

[GB.QT4]
* NEW: Uncatched errors raised from an event handler can be ignored now.

[GB.QT5]
* NEW: Uncatched errors raised from an event handler can be ignored now.
2019-09-17 10:10:36 +02:00
gambas
24c3bdcf51 Fix menu proxy management that could crash combo-box popups.
[GB.GTK]
* BUG: Fix menu proxy management that could crash combo-box popups.

[GB.GTK3]
* BUG: Fix menu proxy management that could crash combo-box popups.
2019-09-03 00:06:30 +02:00
gambas
c044148d52 Fix some memory leaks in font management.
[GB.GTK]
* BUG: Fix a memory leak when getting the size of a piece of text.

[GB.GTK3]
* BUG: Fix a memory leak in font object creation.
* BUG: Fix a memory leak when getting the size of a piece of text.
2019-09-01 00:03:36 +02:00
gambas
ad7b2a4937 Automatically set Paint.FontScale when painting on a printer, so that font size is actually the same as on the screen.
[GB.GTK]
* NEW: Automatically set Paint.FontScale when painting on a printer, so that font size is actually the same as on the screen.

[GB.GTK3]
* NEW: Automatically set Paint.FontScale when painting on a printer, so that font size is actually the same as on the screen.

[GB.QT4]
* NEW: Automatically set Paint.FontScale when painting on a printer, so that font size is actually the same as on the screen.
* BUG: Fix rich text size margins between paragraphs and titles.
* BUG: Fix rich text size computation.

[GB.QT5]
* NEW: Automatically set Paint.FontScale when painting on a printer, so that font size is actually the same as on the screen.
* BUG: Fix rich text size margins between paragraphs and titles.
* BUG: Fix rich text size computation.
2019-07-10 04:19:02 +02:00
gambas
798b1d54cc Add Paint.FontScale, and make gb.gtk and gb.gtk3 printer drawing behave the same as QT components.
[GB.DRAW]
* NEW: Paint: FontScale is a new property that defines a scale applied to the size of the fonts assigned to the Paint.Font property.
* NEW: Paint: Scale() second argument is now optional, and takes the same value as the first argument if omitted.

[GB.GTK]
* NEW: Paint: Implementation of Paint.FontScale.
* BUG: Printer: All printer events are raised between a single Paint.Begin() / Paint.End().

[GB.GTK3]
* NEW: Paint: Implementation of Paint.FontScale.
* BUG: Printer: All printer events are raised between a single Paint.Begin() / Paint.End().
* BUG: Printer: Print() does now crash anymore.
* BUG: Printer: Font sizes now are the same as with QT components.

[GB.QT4]
* NEW: Paint: Implementation of Paint.FontScale.

[GB.QT5]
* NEW: Paint: Implementation of Paint.FontScale.
2019-07-09 19:35:01 +02:00
gambas
e2581fb116 Control: Fix the Tooltip property.
[GB.GTK]
* BUG: Control: Fix the symbol lookup error of the Tooltip property.
* BUG: Control: Fix the Tooltip property name.

[GB.GTK3]
* BUG: Control: Fix the symbol lookup error of the Tooltip property.
* BUG: Control: Fix the Tooltip property name.
2019-06-05 10:33:39 +02:00
gambas
dd121d669f Replace the message box native implementation by a Gambas implementation.
[GB.FORM.STOCK]
* NEW: Add a 128 pixel version of the 'delete' stock icon.

[GB.GTK]
* NEW: Message: Remove the message box native implementation.

[GB.GTK3]
* NEW: Message: Remove the message box native implementation.

[GB.GUI.BASE]
* NEW: Message: Implement the message boxes entirely in Gambas.

[GB.QT4]
* NEW: Message: Remove the message box native implementation.

[GB.QT5]
* NEW: Message: Remove the message box native implementation.
2019-06-05 03:08:22 +02:00
gambas
f1ac2f553b Implement Drag.Show() in Gambas, and consequently fix it in 'gb.gtk3'.
[GB.GTK]
* NEW: Drag.Show() and Drag.Hide() methods are now implemented in 'gb.gui.base'.
* NEW: Drag.X and Drag.Y properties are now writable.

[GB.GTK3]
* NEW: Drag.Show() and Drag.Hide() methods are now implemented in 'gb.gui.base'.
* NEW: Drag.X and Drag.Y properties are now writable.
* BUG: Finishing a drag & drop now correclty releases the button grab.

[GB.GUI.BASE]
* NEW: GridView: The padding of column headers is at least half of Desktop.Scale.
* NEW: ScrollArea: The Scroll() method returns TRUE now if no scrolling actually occured.
* BUG: TreeView: Item X property now correctly takes the TreeView padding into account.
* NEW: Drag.Show() and Drag.Hide() methods are now implemented in 'gb.gui.base'.

[GB.QT4]
* NEW: Drag.Show() and Drag.Hide() methods are now implemented in 'gb.gui.base'.
* NEW: Drag.X and Drag.Y properties are now writable.

[GB.QT5]
* NEW: Drag.Show() and Drag.Hide() methods are now implemented in 'gb.gui.base'.
* NEW: Drag.X and Drag.Y properties are now writable.
2019-06-01 04:52:25 +02:00
glixx
073208ca3a Patch CVE-2013-7447 2019-05-29 02:15:09 +03:00
gambas
0ab84aa34a Disable top-level menus shortcuts when the window menu bar is hidden.
[GB.FORM]
* BUG: MenuButton: Use selected background color when the MenuOnly property is set and the MenuButton has the focus.

[GB.GTK]
* NEW: Disable top-level menus shortcuts when the window menu bar is hidden.

[GB.GTK3]
* NEW: Disable top-level menus shortcuts when the window menu bar is hidden.

[GB.GUI.BASE]
* NEW: Add helper function for disabling/enabling top-level menu shortcuts.

[GB.QT4]
* NEW: Disable top-level menus shortcuts when the window menu bar is hidden.

[GB.QT5]
* NEW: Disable top-level menus shortcuts when the window menu bar is hidden.
2019-05-25 22:25:13 +02:00
gambas
baa18e8522 Tooltips now support rich text, like in the QT components.
[GB.GTK]
* BUG: Tooltips now support rich text, like in the QT components.

[GB.GTK3]
* BUG: Tooltips now support rich text, like in the QT components.
2019-05-24 01:58:28 +02:00
gambas
0bfe40ac76 Message boxes now correctly use the translated title.
[GB.GTK]
* BUG: Message boxes now correctly use the translated title.

[GB.GTK3]
* BUG: Message boxes now correctly use the translated title.
* BUG: Rudimentary support for GDK backends that are not X11.
2019-05-23 19:15:03 +02:00
gambas
a0bcf85bd4 Active file descriptor watches and active timers are now automatically transferred to the component declaring a custom event loop.
[INTERPRETER]
* BUG: Active file descriptor watches and active timers are now automatically transferred to the component declaring a custom event loop. Consequently, a process started before the declaration of the event loop will have its termination signal correctly catched.
* NEW: Use waitpid() instead of wait4().

[GB.GTK]
* BUG: Declare the event loop hook last so that active file descriptor watches and active transfer are automatically transferred.

[GB.GTK3]
* BUG: Declare the event loop hook last so that active file descriptor watches and active transfer are automatically transferred.

[GB.QT4]
* BUG: Declare the event loop hook last so that active file descriptor watches and active transfer are automatically transferred.

[GB.QT5]
* BUG: Declare the event loop hook last so that active file descriptor watches and active transfer are automatically transferred.
2019-03-12 03:46:30 +01:00
gambas
aa66e9bcd5 Windows without any active child control correctly catch keyboard events now.
[GB.GTK]
* BUG: Windows without any active child control correctly catch keyboard events now.

[GB.GTK3]
* BUG: Windows without any active child control correctly catch keyboard events now.
2019-02-23 00:15:35 +01:00
gambas
6bd779d2f6 Make component compile with GTK+ < 3.20.
[GB.GTK3]
* BUG: Make component compile with GTK+ < 3.20.
2019-01-26 16:11:19 +01:00
gambas
7b75f31e81 TabStrip: Tab labels are now correctly displayed when the tab has no icon.
[GB.GTK3]
* BUG: TabStrip: Tab labels are now correctly displayed when the tab has no icon.
2019-01-26 15:25:51 +01:00
gambas
9a77f14b5c Do not propagate mouse wheel events of ComboBox, TextArea, Slider and ScrollBar, as in Qt components.
[GB.GTK]
* BUG: Do not propagate mouse wheel events of ComboBox, TextArea, Slider and ScrollBar, as in Qt components.

[GB.GTK3]
* BUG: Do not propagate mouse wheel events of ComboBox, TextArea, Slider and ScrollBar, as in Qt components.
2019-01-07 22:44:03 +01:00
gambas
245427b08e * Get rid of many gcc warnings. 2019-01-02 00:48:58 +01:00
gambas
b3c305d8bf Control.Parent does not crash anymore.
[GB.GTK]
* BUG: Control.Parent does not crash anymore.

[GB.GTK3]
* BUG: Control.Parent does not crash anymore.
2018-11-29 23:55:09 +01:00
gambas
44fa1bb634 Do not add spurious spaces in rich text anymore.
[GB.GTK]
* BUG: Do not add spurious spaces in rich text anymore.

[GB.GTK3]
* BUG: Do not add spurious spaces in rich text anymore.
2018-11-26 12:09:34 +01:00
gambas
44a3f5f664 Control.Parent now ignores the inner containers of Container controls made in Gambas.
[GB.GTK]
* NEW: Control.Parent now ignores the inner containers of Container controls made in Gambas.
* NEW: Control._Parent is the old Parent property renamed.

[GB.GTK3]
* NEW: Control.Parent now ignores the inner containers of Container controls made in Gambas.
* NEW: Control._Parent is the old Parent property renamed.

[GB.QT4]
* NEW: Control.Parent now ignores the inner containers of Container controls made in Gambas.
* NEW: Control._Parent is the old Parent property renamed.

[GB.QT5]
* NEW: Control.Parent now ignores the inner containers of Container controls made in Gambas.
* NEW: Control._Parent is the old Parent property renamed.
2018-11-19 23:21:37 +01:00
bgermann
dace3b09ac Remove boolean definitions except in gb_common.h 2018-10-15 18:48:01 +02:00
gambas
a94bc793fe Mouse.State has flags for keyboard modifiers now.
[GB.GTK]
* NEW: Mouse.State has flags for keyboard modifiers now.

[GB.GTK3]
* NEW: Mouse.State has flags for keyboard modifiers now.
2018-10-08 16:35:45 +02:00
gambas
af3ef8d130 Paint: Text should now be correctly drawn in all cases.
[GB.GTK]
* BUG: Paint: Text should now be correctly drawn in all cases.

[GB.GTK3]
* BUG: Paint: Text should now be correctly drawn in all cases.
2018-10-04 12:17:53 +02:00
gambas
1bf70e1e75 PictureBox is now implemented in Gambas.
[GB.GTK]
* NEW: Remove PictureBox control.

[GB.GTK3]
* NEW: Remove PictureBox control.

[GB.GUI.BASE]
* NEW: PictureBox is now implemented in Gambas.
* NEW: PictureBox: Image is a new property that allows to display an Image instead of a Picture.
* NEW: PictureBox: Mode is a new property that defines how the image fills the control.

[GB.QT4]
* NEW: Remove PictureBox control.

[GB.QT5]
* NEW: Remove PictureBox control.
2018-10-03 16:06:54 +02:00
gambas
6619f59263 Unify and fix the behaviour of the Container.Children property.
[GB.GTK]
* NEW: Container.Children now returns a real object that is a read-only array of references to all container children.
* NEW: Container.Children.Max is a new property that returns the number of container children minus one.

[GB.GTK3]
* NEW: Container.Children now returns a real object that is a read-only array of references to all container children.
* NEW: Container.Children.Max is a new property that returns the number of container children minus one.

[GB.QT4]
* NEW: Container.Children now returns a real object that is a read-only array of references to all container children.
* NEW: Container.Children.Max is a new property that returns the number of container children minus one.

[GB.QT5]
* NEW: Container.Children now returns a real object that is a read-only array of references to all container children.
* NEW: Container.Children.Max is a new property that returns the number of container children minus one.
2018-09-24 15:39:37 +02:00
gambas
1fa7304654 Fix Container.Children.Clear() method.
[GB.GTK]
* BUG: Fix Container.Children.Clear() method.

[GB.GTK3]
* BUG: Fix Container.Children.Clear() method.
* BUG: Remove a warning on deprecated API.
2018-09-24 11:33:30 +02:00
gambas
f5e0d6ebbb Controls having a null size are now taken into by the arrangement routine, and are moved accordingly.
[GB.GTK]
* NEW: Controls having a null size are now taken into by the arrangement routine, and are moved accordingly.
* BUG: Set a cursor by trying all possible API, to be sure to find one existing.

[GB.GT3]
* NEW: Controls having a null size are now taken into by the arrangement routine, and are moved accordingly.
* BUG: Set a cursor by trying all possible API, to be sure to find one existing.

[GB.QT4]
* NEW: Controls having a null size are now taken into by the arrangement routine, and are moved accordingly.

[GB.QT5]
* NEW: Controls having a null size are now taken into by the arrangement routine, and are moved accordingly.
2018-09-15 22:29:21 +02:00
gambas
1cf0e4bfeb Do not crash anymore when deleting a modal window during its Open event.
[GB.GTK]
* BUG: Do not crash anymore when deleting a modal window during its Open event.
* BUG: Don't send fake configure event anymore when resizing a control. To check if it is actually needed for something.

[GB.GTK3]
* BUG: Do not crash anymore when deleting a modal window during its Open event.
* BUG: Don't send fake configure event anymore when resizing a control. To check if it is actually needed for something.
2018-09-14 00:47:32 +02:00
gambas
386ef35e44 Remove ScrollView control, add a Change event to the DrawingArea control, and propagate MouseWheel events automatically.
[GB.GTK]
* NEW: ScrollView: Remove ScrollView control.
* NEW: DrawingArea: Change is a new event that is raised when the Application.Animations or Application.Shadows property changes.
* NEW: MouseWheel events are now automatically propagated to the parent control if they are not handled by the child.
* BUG: ScrollBar: Correctly raise the Change event in all cases.
* BUG: Slider: Correctly raise the Change event in all cases.

[GB.GTK3]
* NEW: ScrollView: Remove ScrollView control.
* NEW: DrawingArea: Change is a new event that is raised when the Application.Animations or Application.Shadows property changes.
* NEW: MouseWheel events are now automatically propagated to the parent control if they are not handled by the child.
* BUG: ScrollBar: Correctly raise the Change event in all cases.
* BUG: Slider: Correctly raise the Change event in all cases.
2018-09-12 13:54:30 +02:00
gambas
ec5efc1785 [GB.GTK]
* BUG: Frame: Fix arrangement.

[GB.GTK3]
* BUG: Frame: Fix control layout and arrangement.
* BUG: Get rid of most of the GtkAlignment deprecated widgets.
2018-09-07 19:50:45 +02:00
gambas
e78d690ac3 Let's try to compile 'gb.gtk3' on Ubuntu 12.04!
[GB.GTK3]
* BUG: Let's try to compile 'gb.gtk3' on Ubuntu 12.04!
2018-09-06 22:55:19 +02:00
gambas
d61741474f ScrollArea and all its children classes now can animate their scrolling.
[DEVELOPMENT ENVIRONMENT]
* NEW: Update Gambas fonts.
* NEW: Option dialog: Add an option to enable control animations. Move the toolbar size option to the 'Fonts' panel.

[GB.GTK]
* NEW: Application.Animations is a new property that enable or disable control animations.

[GB.GTK3]
* NEW: Application.Animations is a new property that enable or disable control animations.
* NEW: Control.Font is now implemented using GTK+ CSS.

[GB.GUI.BASE]
* NEW: ScrollArea: Animate scrolling if Application.Animations is set.

[GB.QT4]
* NEW: Application.Animations is a new property that enable or disable control animations.

[GB.QT5]
* NEW: Application.Animations is a new property that enable or disable control animations.
2018-09-05 21:19:57 +02:00
gambas
41058b3ff5 Really make gb.gtk3 compile with GTK+ < 3.14.
[GB.GTK3]
* BUG: Really make gb.gtk3 compile with GTK+ < 3.14.
2018-09-05 00:23:53 +02:00
gambas
83a1ee29bc Make gb.gtk3 compile with GTK+ < 3.14.
[GB.GTK3]
* BUG: Make gb.gtk3 compile with GTK+ < 3.14.
2018-09-04 22:23:54 +02:00
gambas
e5b3fa25e0 Compile with gtk+ < 3.20.
[GB.GTK3]
* BUG: Compile with gtk+ < 3.20.
2018-09-04 21:56:08 +02:00
gambas
ee674d9068 Many fixes to the GTK+3 components, and rewrite the SpinBox control in Gambas.
[GB.GTK]
* NEW: Remove the native SpinBox implementation.
* BUG: Add specific fixes for breeze and oxygen themes.

[GB.GTK3]
* NEW: Remove the native SpinBox implementation.
* BUG: ComboBox: Fix rendering.
* BUG: ComboBox: Use a GtkBox instead of the deprecated GtkAlignment.
* BUG: Style: Fix some paint methods and metric properties.
* BUG: Add specific fixes for breeze and oxygen themes.

[GB.GUI.BASE]
* NEW: SpinBox: New implementation of the control in Gambas.
* BUG: ProgressBar: Fix rendering with GTK+ components.

[GB.QT4]
* NEW: Remove the native SpinBox implementation.
* NEW: RadioButton: Fill the widget when the background color is set.
* BUG: Style: Fix some metric properties.

[GB.QT5]
* NEW: Remove the native SpinBox implementation.
* NEW: RadioButton: Fill the widget when the background color is set.
* BUG: Style: Fix some metric properties.
2018-09-04 15:56:23 +02:00
gambas
0eda19df1e Don't remove a control from its parent immediately when destroying it, so that GTK+ components behave like the QT ones.
[GB.GTK]
* NEW: Don't remove a control from its parent immediately when destroying it, so that GTK+ components behave like the QT ones.

[GB.GTK3]
* NEW: Don't remove a control from its parent immediately when destroying it, so that GTK+ components behave like the QT ones.
2018-06-16 15:36:34 +02:00
gambas
74ddac88b8 Fix clipboard instanciation. No more GTK+ warning at the end of the program.
[GB.GTK]
* BUG: Remove unused static cursors.
* BUG: Fix clipboard instanciation. No more GTK+ warning at the end of the program.

[GB.GTK3]
* BUG: Fix clipboard instanciation. No more GTK+ warning at the end of the program.
2018-06-01 14:55:53 +02:00
PICCORO Lenz McKAY
7e622ba756 fix forgotten conditional, not property a bug, conserves minimal build requirements 2018-05-11 20:21:10 +00:00
gambas
0b4adeb361 Implement the menu proxy management.
[GB.GTK]
* NEW: Implement the menu proxy management.

[GB.GTK3]
* NEW: Implement the menu proxy management.
2018-03-06 23:36:43 +01:00
gambas
6b7b59c476 Clipboard.HasChanged is a new property that returns if the clipboard contents has changed since the last call to Clipboard.Paste().
[GB.GTK]
* NEW: Clipboard.HasChanged is a new property that returns if the clipboard contents has changed since the last call to Clipboard.Paste().

[GB.GTK3]
* NEW: Clipboard.HasChanged is a new property that returns if the clipboard contents has changed since the last call to Clipboard.Paste().

[GB.QT4]
* NEW: Clipboard.HasChanged is a new property that returns if the clipboard contents has changed since the last call to Clipboard.Paste().

[GB.QT5]
* NEW: Clipboard.HasChanged is a new property that returns if the clipboard contents has changed since the last call to Clipboard.Paste().
2018-02-26 04:03:21 +01:00
gambas
5969cc0062 Menu.Closed is a new property that returns if a popup menu is closed.
[GB.GTK]
* NEW: Menu.Closed is a new property that returns if a popup menu is closed.

[GB.GTK3]
* NEW: Menu.Closed is a new property that returns if a popup menu is closed.

[GB.QT4]
* NEW: Menu.Closed is a new property that returns if a popup menu is closed.

[GB.QT5]
* NEW: Menu.Closed is a new property that returns if a popup menu is closed.
2018-02-23 04:05:27 +01:00
gambas
09a0573e61 Replace my old sourceforge mail address by the new one.
[CONFIGURATION]
Replace my old sourceforge mail address by the new one.
2018-02-12 02:53:46 +01:00