Commit graph

1104 commits

Author SHA1 Message Date
Benoît Minisini
2b7588c047 Hide menu before destroying it, so that the top-level menu bar is correctly updated.
[GB.GTK]
* BUG: Hide menu before destroying it, so that the top-level menu bar is correctly updated.

[GB.GTK3]
* BUG: Hide menu before destroying it, so that the top-level menu bar is correctly updated.
2022-05-28 16:27:29 +02:00
Benoît Minisini
8c4b6b5fef Implement Application.ShowTooltips property.
[GB.GTK3]
* BUG: Implement Application.ShowTooltips property.
2022-05-19 14:06:58 +02:00
Benoît Minisini
90634d9cb5 The parent window of a modal window is now always the current active window.
[GB.GTK]
* BUG: The parent window of a modal window is now always the current active window.

[GB.GTK3]
* BUG: The parent window of a modal window is now always the current active window.

[GB.QT4]
* BUG: The parent window of a modal window is now always the current active window.

[GB.QT5]
* BUG: The parent window of a modal window is now always the current active window.
2022-05-15 20:06:26 +02:00
Benoît Minisini
0cd8047efa Closing the main window when it is persistent correctly quits the application. Reparenting a window correctly triggers automatic arrangement.
[GB.GTK]
* BUG: Reparenting a window correctly triggers automatic arrangement.
* BUG: Closing the main window when it is persistent correctly quits the application.

[GB.GTK3]
* BUG: Reparenting a window correctly triggers automatic arrangement.
* BUG: Closing the main window when it is persistent correctly quits the application.
2022-05-14 20:10:19 +02:00
Benoît Minisini
0c0b1e0dc2 TextArea: Modifying the contents by code now refreshes the control as expected.
[GB.GTK]
* BUG: TextArea: Modifying the contents by code now refreshes the control as expected.

[GB.GTK3]
* BUG: TextArea: Modifying the contents by code now refreshes the control as expected.
2022-05-14 19:46:38 +02:00
Benoît Minisini
38aea6b3d5 * The new proxy of a control is now correctly unlinked if it was already the proxy of another control.
[GB.GTK]
* BUG: The new proxy of a control is now correctly unlinked if it was already the proxy of another control.

[GB.GTK3]
* BUG: The new proxy of a control is now correctly unlinked if it was already the proxy of another control.

[GB.QT4]
* BUG: The new proxy of a control is now correctly unlinked if it was already the proxy of another control.

[GB.QT5]
* BUG: The new proxy of a control is now correctly unlinked if it was already the proxy of another control.
2022-04-28 23:48:30 +02:00
gambas
1c985ac3ad Allow calling 'WAIT' alone during a keyboard event handler.
[GB.GTK]
* BUG: Allow calling 'WAIT' alone during a keyboard event handler.

[GB.GTK3]
* BUG: Allow calling 'WAIT' alone during a keyboard event handler.
2022-04-12 20:00:06 +02:00
gambas
41ee2c8f9c Remove now useless ComboBox source code.
[GB.GTK]
* NEW: Remove now useless ComboBox source code.

[GB.GTK3]
* NEW: Remove now useless ComboBox source code.

[GB.QT4]
* NEW: Remove now useless ComboBox source code.

[GB.QT5]
* NEW: Remove now useless ComboBox source code.
2022-04-12 13:32:10 +02:00
gambas
4b6c6e2d0f Remove the native ComboBox.
[GB.GTK]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* BUG: UserControl_Draw() event handler is called before drawing the control children.
* NEW: Remove the native ComboBox.

[GB.GTK3]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* BUG: UserControl_Draw() event handler is called before drawing the control children.
* NEW: Remove the native ComboBox.

[GB.QT4]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* NEW: Style methods draw focus and tab focus.
* NEW: Remove the native ComboBox.

[GB.QT5]
* NEW: UserControl._Focus is a new property that defines if a UserControl can take focus.
* NEW: Style methods draw focus and tab focus.
* NEW: Remove the native ComboBox.
2022-04-12 13:06:38 +02:00
gambas
2742b48afa Support for "Wait 0" syntax. Fix support of "Wait" alone syntax in GTK+ components.
[GB.GTK]
* NEW: Support for "Wait 0" syntax.
* BUG: Fix support of "Wait" alone syntax.

[GB.GTK3]
* NEW: Support for "Wait 0" syntax.
* BUG: Fix support of "Wait" alone syntax.

[GB.SDL2]
* NEW: Support for "Wait 0" syntax.

[GB.QT4]
* NEW: Support for "Wait 0" syntax.

[GB.QT5]
* NEW: Support for "Wait 0" syntax.
2022-04-09 19:11:56 +02:00
gambas
b2c199e4fc The WAIT instruction alone now ignores input events like Qt components.
[GB.GTK]
* BUG: The WAIT instruction alone now ignores input events like Qt components.

[GB.GTK3]
* BUG: The WAIT instruction alone now ignores input events like Qt components.
2022-04-08 23:06:47 +02:00
gambas
9f8b1734fd Fix a memory leak in the style function that paint widget background.
[GB.GTK3]
* BUG: Fix a memory leak in the style function that paint widget background.
2022-04-07 13:21:50 +02:00
gambas
313b0c1526 Current modal window is not incorrectly reset at each window initialization anymore.
[GB.GTK]
* BUG: Current modal window is not incorrectly reset at each window initialization anymore.
* BUG: Don't grab the current modal window, it seems unnecessary.

[GB.GTK3]
* BUG: Current modal window is not incorrectly reset at each window initialization anymore.
* BUG: Don't grab the current modal window, it seems unnecessary.
2022-03-11 03:06:40 +01:00
gambas
d7b5486d85 Image.Stretch() now takes a third optional argument to stretch without antialiasing.
[GB.GTK]
* NEW: Image.Stretch() now takes a third optional argument to stretch without antialiasing.

[GB.GTK3]
* NEW: Image.Stretch() now takes a third optional argument to stretch without antialiasing.

[GB.QT4]
* NEW: Image.Stretch() now takes a third optional argument to stretch without antialiasing.

[GB.QT5]
* NEW: Image.Stretch() now takes a third optional argument to stretch without antialiasing.
2022-02-25 20:30:55 +01:00
gambas
118be55717 Style.BackgroundOf() returns the accurate color now for TextBox, TextArea and ComboBox.
[GB.GTK3]
* BUG: Style.BackgroundOf() returns the accurate color now for TextBox, TextArea and ComboBox.
2022-02-23 20:31:43 +01:00
gambas
86caf66c56 Fix focus management and container arrangement.
[GB.GTK]
* BUG: Fix focus management and container arrangement.

[GB.GTK3]
* BUG: Fix focus management and container arrangement.
2022-02-23 19:29:21 +01:00
gambas
ec051a231e Image.Rotate() is now antialiased.
[GB.GTK]
* BUG: Image.Rotate() is now antialiased.

[GB.GTK3]
* BUG: Image.Rotate() is now antialiased.

[GB.QT4]
* BUG: Image.Rotate() is now antialiased.

[GB.QT5]
* BUG: Image.Rotate() is now antialiased.
2022-02-22 02:44:55 +01:00
gambas
ff768fa834 Initialize event mask correctly when a control recreates its internal (when reparenting or for any other reason).
[GB.GTK]
* BUG: Initialize event mask correctly when a control recreates its internal (when reparenting or for any other reason).

[GB.GTK3]
* BUG: Initialize event mask correctly when a control recreates its internal (when reparenting or for any other reason).
2022-02-21 21:27:44 +01:00
gambas
361cd35de5 Some fixes in window reparent method and focus management.
[GB.GTK]
* BUG: Some fixes in window reparent method and focus management.

[GB.GTK3]
* BUG: Some fixes in window reparent method and focus management.
2022-02-18 23:09:35 +01:00
gambas
71877e0903 Make component compile again on older versions of Pango.
[GB.GTK]
* BUG: Make component compile again on older versions of Pango.

[GB.GTK3]
* BUG: Make component compile again on older versions of Pango.
2022-02-18 04:14:18 +01:00
gambas
114d825ede Text drawing alignment is now based on text direction.
[GB.GTK]
* BUG: Text drawing alignment is now based on text direction.

[GB.GTK3]
* BUG: Text drawing alignment is now based on text direction.

[GB.QT4]
* BUG: Text drawing alignment is now based on text direction.

[GB.QT5]
* BUG: Text drawing alignment is now based on text direction.
2022-02-18 00:08:05 +01:00
gambas
da4002dede ComboBox now correctly takes language direction into account.
[GB.GTK3]
* BUG: ComboBox now correctly takes language direction into account.
2022-02-11 01:29:47 +01:00
gambas
acc912ef68 Fix font management according to the new uncompatible Pango behaviour.
[GB.GTK]
* BUG: Fix font management according to the new uncompatible Pango
  behaviour. I don't know if it is backward-compatible yet.

[GB.GTK3]
* BUG: Fix font management according to the new uncompatible Pango
  behaviour. I don't know if it is backward-compatible yet.
2022-02-06 20:42:42 +01:00
gambas
1a05e73d1a Fix management of text direction at control level.
[GB.GTK]
* BUG: Fix management of text direction at control level.

[GB.GTK3]
* BUG: Fix management of text direction at control level.
2022-01-31 00:25:04 +01:00
gambas
47208e1da2 Fix focus management when a control is hidden.
[GB.GTK]
* BUG: Fix focus management when a control is hidden.

[GB.GTK3]
* BUG: Fix focus management when a control is hidden.
2022-01-29 22:58:27 +01:00
gambas
1308dc95ab Window: Fix the initial focus of a window when it is opened.
[GB.GTK]
* BUG: Window: Fix the initial focus of a window when it is opened.
* BUG: Window: Don't raise spurious Hide or Show events.

[GB.GTK3]
* BUG: Window: Fix the initial focus of a window when it is opened.
* BUG: Window: Don't raise spurious Hide or Show events.
2022-01-28 23:47:32 +01:00
gambas
8f0f5c765a DrawingArea: Reading the window handle now automatically assign a specific window to the control. Fix background color management.
[GB.GTK]
* BUG: DrawingArea: Background color is now correctly drawn in all cases.
* NEW: DrawingArea: Reading the window handle now automatically assign a specific window to the control.

[GB.GTK3]
* BUG: DrawingArea: Background color is now correctly drawn in all cases.
* NEW: DrawingArea: Reading the window handle now automatically assign a specific window to the control.
2022-01-27 01:53:59 +01:00
gambas
0f58f04691 TextBox: Be more tolerant with minimum width.
[GB.GTK]
* NEW: TextBox: Be more tolerant with minimum width.

[GB.GTK3]
* NEW: TextBox: Be more tolerant with minimum width.
2022-01-24 03:11:01 +01:00
gambas
6fa9fa4286 Make all GUI components behave the same when dealing with focus and modal or popup windows.
[GB.GTK]
* BUG: Make all GUI components behave the same when dealing with focus and modal or popup windows.

[GB.GTK3]
* BUG: Make all GUI components behave the same when dealing with focus and modal or popup windows.

[GB.QT4]
* BUG: Make all GUI components behave the same when dealing with focus and modal or popup windows.

[GB.QT5]
* BUG: Make all GUI components behave the same when dealing with focus and modal or popup windows.
2022-01-22 22:38:40 +01:00
gambas
13df084748 Text direction can now be specified at control level.
[GB.GTK]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.GTK3]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.QT4]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.

[GB.QT5]
* NEW: Control.Direction is a new property that allows to specify the text direction of the control.
* NEW: Control.RightToLeft is a new property that returns if a control is right-to-left oriented.
2022-01-22 16:27:17 +01:00
gambas
0b3d48b698 Check if the event loop must be stopped each time a timer is disabled.
[GB.GTK]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.GTK3]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.QT4]
* BUG: Check if the event loop must be stopped each time a timer is disabled.

[GB.QT5]
* BUG: Check if the event loop must be stopped each time a timer is disabled.
2022-01-14 19:17:09 +01:00
gambas
4ba0b9ad3c Don't quit if there is still one active timer.
[GB.GTK]
* NEW: Don't quit if there is still one active timer.

[GB.GTK3]
* NEW: Don't quit if there is still one active timer.

[GB.QT4]
* NEW: Don't quit if there is still one active timer.

[GB.QT5]
* NEW: Don't quit if there is still one active timer.
2022-01-14 12:34:40 +01:00
gambas
a8619a6177 Fix compilation of 'gb.gtk'.
[GB.GTK]
* BUG: Fix compilation of 'gb.gtk'.
2022-01-14 04:41:13 +01:00
gambas
d29ccc5951 Fix font dependency of global application font.
[GB.GTK]
* BUG: Fix font dependency of global application font.

[GB.GTK3]
* BUG: Fix font dependency of global application font.
2022-01-14 04:17:02 +01:00
gambas
50c96044e7 Fix drag & drop management.
[GB.GTK]
* BUG: Fix drag & drop management.

[GB.GTK3]
* BUG: Fix drag & drop management.
2022-01-05 20:30:13 +01:00
gambas
79fbe6c0a8 Fix tab focus management.
[GB.GTK]
* BUG: Fix tab focus management.

[GB.GTK3]
* BUG: Fix tab focus management.
2022-01-05 16:07:57 +01:00
gambas
0fccd1d5ee Setting Application.Busy now displays the busy cursor correctly again.
[GB.GTK]
* BUG: Setting Application.Busy now displays the busy cursor correctly again.

[GB.GTK3]
* BUG: Setting Application.Busy now displays the busy cursor correctly again.
2022-01-04 16:09:29 +01:00
gambas
d10aa23ffb Remove debugging message.
[GB.GTK]
* BUG: Remove debugging message.

[GB.GTK3]
* BUG: Remove debugging message.
2022-01-04 15:53:11 +01:00
gambas
06d751bb0b Do nothing when setting a control font with the same font. Finish removing dynamic event callbacks.
[GB.GTK]
* OPT: Replace all dynamic event callback functions (one by object) by unique global functions.
* BUG: Do nothing when setting a control font with the same font.

[GB.GTK3]
* OPT: Replace all dynamic event callback functions (one by object) by unique global functions.
* BUG: Do nothing when setting a control font with the same font.
2022-01-04 13:11:48 +01:00
gambas
3ac63996b1 DrawingArea: Keep the Focus property when the internal widget is recreated.
[GB.GTK]
* BUG: DrawingArea: Keep the Focus property when the internal widget is recreated.

[GB.GTK3]
* BUG: DrawingArea: Keep the Focus property when the internal widget is recreated.
2022-01-03 14:00:56 +01:00
gambas
67d760db17 Fix a crash on focus management. Do not raise 'Activate' event when showing an embeded window to mimic Qt components behaviour.
[GB.GTK]
* BUG: Embedding a top-level window by reparenting now correctly removes it from the list of top-level windows.
* BUG: Do not raise 'Activate' event when showing an embeded window to mimic Qt components behaviour.
* BUG: Do not crash if a window has no explicit focus and no focusable child control.
* OPT: Start to replace dynamic event callback functions (one by object) by unique global functions.

[GB.GTK3]
* BUG: Embedding a top-level window by reparenting now correctly removes it from the list of top-level windows.
* BUG: Do not raise 'Activate' event when showing an embeded window to mimic Qt components behaviour.
* BUG: Do not crash if a window has no explicit focus and no focusable child control.
* OPT: Start to replace dynamic event callback functions (one by object) by unique global functions.
2022-01-01 16:21:47 +01:00
gambas
2cbfa19117 Fix window initial focus management.
[GB.GTK3]
* BUG: Fix window initial focus management.
2021-12-30 02:15:43 +01:00
gambas
418486f68c Fix accelerator management workaround.
[GB.GTK]
* BUG: Fix accelerator management workaround.

[GB.GTK3]
* BUG: Fix accelerator management workaround.
2021-12-29 18:14:49 +01:00
gambas
dbfa71f602 Fix proxy container management again.
[GB.GTK]
* BUG: Fix proxy container management again.

[GB.GTK3]
* BUG: Fix proxy container management again.
2021-12-22 16:13:37 +01:00
gambas
faff7299a1 The internal '_Container' property of UserControl and UserContainer now behaves the same way as in Qt components.
[GB.GTK]
* BUG: The internal '_Container' property of UserControl and UserContainer now behaves the same way as in Qt components.

[GB.GTK3]
* BUG: The internal '_Container' property of UserControl and UserContainer now behaves the same way as in Qt components.
2021-12-21 20:48:03 +01:00
gambas
a6efc1ae3d Clip the drawing of container children, as GTK+3 does not do that by default.
[GB.GTK3]
* BUG: Clip the drawing of container children, as GTK+3 does not do that by default.
2021-12-12 22:42:53 +01:00
gambas
ab885aabd4 Hide and show all children of a container when it is mapped, to workaround GTK+3 bugs with widget stacking.
[GB.GTK3]
* BUG: Hide and show all children of a container when it is mapped, to workaround GTK+3 bugs with widget stacking.
2021-12-12 00:53:38 +01:00
gambas
618a84f264 Embedded windows now behave the same way as in Qt components, and raise their Open and Show events as expected.
[GB.GTK]
* BUG: Embedded windows now behave the same way as in Qt components, and raise their Open and Show events as expected.

[GB.GTK3]
* BUG: Embedded windows now behave the same way as in Qt components, and raise their Open and Show events as expected.
2021-11-13 00:18:38 +01:00
gambas
cbf9a95351 The Control Lower() and Raise() methods do not trigger any Watcher anymore while temporarily showing and hiding controls.
[GB.GTK]
* BUG: The Control Lower() and Raise() methods do not trigger any Watcher anymore while temporarily showing and hiding controls.

[GB.GTK3]
* BUG: The Control Lower() and Raise() methods do not trigger any Watcher anymore while temporarily showing and hiding controls.
2021-11-07 00:31:19 +01:00
gambas
9789a7bc93 The mouse cursor type constants are now defined in the Cursor class. Add more mouse cursor constants.
[GB.GTK]
* NEW: The mouse cursor type constants are now defined in the Cursor class.
* NEW: Add more mouse cursor constants.

[GB.GTK3]
* NEW: The mouse cursor type constants are now defined in the Cursor class.
* NEW: Add more mouse cursor constants.

[GB.QT4]
* NEW: The mouse cursor type constants are now defined in the Cursor class.
* NEW: Add more mouse cursor constants.

[GB.QT5]
* NEW: The mouse cursor type constants are now defined in the Cursor class.
* NEW: Add more mouse cursor constants.
2021-10-29 16:32:38 +02:00