Commit graph

10718 commits

Author SHA1 Message Date
Benoît Minisini
b4ab4c0d04 Update 'language' icon.
[GB.FORM.STOCK]
* NEW: Update 'language' icon.
2022-08-06 18:02:35 +02:00
Benoît Minisini
c5f1d4603b Use the new support of file paths in the Drag.Paste() method.
[GB.FORM.TERMINAL]
* NEW: Use the new support of file paths in the Drag.Paste() method.
2022-08-06 18:01:59 +02:00
Benoît Minisini
ce88aab1c2 Automatic DnD support and a few other enhancements in FileView.
[GB.FORM]
* NEW: FileView: Add a 'ShowTitle' property, that toggles a title bar.
* NEW: FileView: 'Title' is a new property that allows to define the title displayed on top. By default it's the path of the current directory.
* NEW: FileView: Add a 'Filter' event, that allows to filter what is displayed file by file.
* NEW: FileView: 'Paths' is a new property that returns the absolute paths of all selected elements.
* NEW: FileView: Automatic support of drag & drop.
* NEW: FileView: 'Copy()' is a new method that copy the selected elements to the clipboard as a "text/uri-list".
* NEW: Update icon map.
2022-08-06 18:00:40 +02:00
Benoît Minisini
60daa96a2e Fix DnD support, IconView, and add automatic support for file paths array in clipboard.
[GB.GUI.BASE]
* NEW: Clipboard: Remove 'CopyPath()' and 'CopyPaths()' methods.
* NEW: Clipboard: 'Copy()' now can takes a file path array as soon as the mime type is "text/uri-list".
* NEW: Clipboard: 'Paste()' now returns a file path array as soon as the mime type is "text/uri-list".
* NEW: Drag: 'Drag()' now can takes a file path array as soon as the mime type is "text/uri-list".
* BUG: GridView: 'RowAt()' now returns rows at negative coordinates.
* BUG: GridView: Use 'Color.TextBackground' when the 'Background' property is set to 'Color.Default'.
* NEW: IconView: Add 'Scroll' event.
* NEW: IconView: Rubberband selection is more clever.
* NEW: IconView: Support for DnD.
* BUG: IconView: Use 'Color.TextBackground' when the 'Background' property is set to 'Color.Default'.
* NEW: ScrollArea: Automatic scrolling during DnD now should work as expected.
* NEW: Drag: The Dnd Frame now has a darker border.
2022-08-06 17:55:06 +02:00
Benoît Minisini
83aaf28641 DnD now takes the proxy control into account. Watcher now should finally raise their Show event correctly.
[GB.GTK]
* BUG: Setting the Drop property now acts on the proxy, and the DnD events are handled by the proxy first.
* BUG: Watcher now should finally raise their Show event correctly.

[GB.GTK3]
* BUG: Setting the Drop property now acts on the proxy, and the DnD events are handled by the proxy first.
* BUG: Watcher now should finally raise their Show event correctly.
2022-08-06 17:42:48 +02:00
Benoît Minisini
02a593dc23 DnD now takes the proxy control into account.
[GB.QT4]
* BUG: Setting the Drop property now acts on the proxy, and the DnD events are handled by the proxy first.

[GB.QT5]
* BUG: Setting the Drop property now acts on the proxy, and the DnD events are handled by the proxy first.
2022-08-06 17:40:17 +02:00
Benoît Minisini
bd94c90721 Welcome dialog: Fix project items layout.
[DEVELOPMENT ENVIRONMENT]
* BUG: Welcome dialog: Fix project items layout.
2022-08-04 00:11:54 +02:00
Benoît Minisini
c2a2b60790 Project browser: Implement file renaming. Lock the project tree while closing the current project, so that it raises no deferred events.
[DEVELOPMENT ENVIRONMENT]
* NEW: Update French translation.
* NEW: Project browser: Implement file renaming.
* BUG: Lock the project tree while closing the current project, so that it raises no deferred events.
2022-08-03 13:52:21 +02:00
Benoît Minisini
386201347d FileView: Add a 'Rename' event that allows to implement a custom file renaming.
[GB.FORM]
* NEW: FileView: Add a 'Rename' event that allows to implement a custom file renaming.
2022-08-03 13:50:47 +02:00
Benoît Minisini
72481d964a IconView: fix a few problems.
[GB.GUI.BASE]
* BUG: IconView: UnselectAll() now always reset the current item.
* NEW: IconView: ESC key now unselects all items.
* BUG: IconView: Fix computation of text icon position when renaming.
2022-08-03 13:50:06 +02:00
Benoît Minisini
1179e3a0fc FileView: Correctly set the item texts so that renaming works as expected in all cases.
[GB.FORM]
* BUG: FileView: Correctly set the item texts so that renaming works as expected in all cases.
2022-08-03 12:57:00 +02:00
Benoît Minisini
4e0dcdc19d Toolbar: Configuring is a new property that returns if the toolbar is in configuration mode.
[GB.FORM.MDI]
* NEW: Toolbar: Configuring is a new property that returns if the toolbar is in configuration mode.
2022-08-03 11:38:45 +02:00
Benoît Minisini
5b1bafb69f Paint: Implement LineWidth as a write-only property.
[GB.WEB.GUI]
* NEW: Paint: Implement LineWidth as a write-only property.
2022-08-03 11:36:42 +02:00
Benoît Minisini
9382328db0 Project browser: Implement copy, cut, paste and delete actions.
[DEVELOPMENT ENVIRONMENT]
* NEW: Project browser: Handle paste actions by moving or copying files.
* NEW: Project browser: Implement file deletion.
* NEW: Redesign the unique file name generation function.
2022-08-03 11:35:26 +02:00
Benoît Minisini
2dd20ec882 FileView: Add Selected property that returns if at least one item is selected.
[GB.FORM]
* NEW: FileView: Add Selected property that returns if at least one item is selected.
2022-08-03 11:33:24 +02:00
Benoît Minisini
365fcd2b8c TreeView, ColumnView, ListView, IconView: Add a Selected property that returns if at least one item is selected.
[GB.GUI.BASE]
* NEW: TreeView, ColumnView, ListView, IconView: Add a Selected property that returns if at least one item is selected.
2022-08-03 11:32:57 +02:00
Benoît Minisini
e323b08347 FileView: Correctly refresh icons on icon theme change.
[GB.FORM]
* BUG: FileView: Correctly refresh icons on icon theme change.
2022-08-03 10:06:38 +02:00
Benoît Minisini
62330a4992 Clipboard: PastePaths() method is a new method that does the contrary as CopyPaths().
[GB.GUI.BASE]
* NEW: Clipboard: PastePaths() method is a new method that does the contrary as CopyPaths().
2022-08-03 10:05:41 +02:00
Benoît Minisini
3a8c36a823 Project browser: Add a space in the toolbar for the project tree workspace button.
[DEVELOPMENT ENVIRONMENT]
* BUG: Project browser: Add a space in the toolbar for the project tree workspace button.
* OPT: Welcome dialog: Load and show the welcome dialog only if needed.
2022-08-03 02:54:57 +02:00
Benoît Minisini
ecbc19cdd4 Project browser: Correctly initialize toolbar state.
[DEVELOPMENT ENVIRONMENT]
* BUG: Project browser: Correctly initialize toolbar state.
* NEW: Update French translation.
* BUG: Form editor: Fix multicontainer menu icon.
2022-08-03 00:45:15 +02:00
Benoît Minisini
179de49ffb Fix menu relayout after the 'Show' event has been handled..
[GB.GTK]
* BUG: Fix menu relayout after the 'Show' event has been handled..

[GB.GTK3]
* BUG: Fix menu relayout after the 'Show' event has been handled..
2022-08-03 00:42:29 +02:00
Benoît Minisini
74be963d5b Add a project browser. Not finished yet!
[DEVELOPMENT ENVIRONMENT]
* NEW: Update French translation.
* NEW: Add a project browser.
* NEW: Add a button that toggles the new project browser.
* BUG: Use the 'paste-special' stock icon where appropriate.
2022-08-02 17:41:01 +02:00
Benoît Minisini
c07451ee73 New stock icons 'export' and 'import'.
[GB.FORM.STOCK]
* NEW: New stock icons 'export' and 'import'.
2022-08-02 17:38:33 +02:00
Benoît Minisini
dadeb18e32 New stock icon 'import' and 'export'. Enhance FileView control.
[GB.FORM]
* NEW: New stock icon 'import' and 'export'.
* NEW: FileView: Add a Refresh event that triggers just after the FileView has refreshed its contents.
* NEW: FileView: Add FileCount, DirCount and TotalSize properties, to get statistics on the current directory contents.
* NEW: FileView: Add a permission column in detailed view mode.
* NEW: FileView: Display a 'lock' emblem on non-readable files in icon view mode.
2022-08-02 17:38:07 +02:00
Benoît Minisini
40918a8363 TreeView: treeview items now have a Selectable property. If set to FALSE, the item is not selectable anymore.
[GB.GUI.BASE]
* BUG: GridView: Take custom row border into account correctly.
* NEW: IconView: Selection is new property that returns an array of the keys of all selected items.
* NEW: IconView: Selection is updated during rubberband selection.
* NEW: ColumnView: The extra columns have now a default horizontal padding.
2022-08-02 17:35:35 +02:00
Benoît Minisini
1d3ace3178 Remove a debugging message.
[GB.MEDIA]
* BUG: Remove a debugging message.
2022-08-02 16:55:53 +02:00
Benoît Minisini
e65aed8ba9 Correctly send wheel events to widgets that handle them when the associated control is a proxy.
[GB.QT4]
* BUG: Correctly send wheel events to widgets that handle them when the associated control is a proxy.

[GB.QT5]
* BUG: Correctly send wheel events to widgets that handle them when the associated control is a proxy.
2022-08-02 03:36:49 +02:00
Benoît Minisini
5f62893d8f New stock icon 'chart' and 'office-math'. Update icon map.
[GB.FORM]
* NEW: New stock icon 'chart' and 'office-math'.
* NEW: Update icon map.
2022-08-01 22:16:53 +02:00
Benoît Minisini
df2c1b1808 New stock icon 'office-math'. Redraw some icons.
[GB.FORM.STOCK]
* NEW: New stock icon 'office-math'.
* NEW: Redraw some icons.
2022-08-01 22:16:09 +02:00
Benoît Minisini
c723d4c018 Support for write-only properties.
[DEVELOPMENT ENVIRONMENT]
* NEW: Support for write-only properties.
2022-08-01 22:15:20 +02:00
Benoît Minisini
600a4d961d Switch bytecode version to 3.18, because of the write-only properties support.
[CONFIGURATION]
* NEW: Switch bytecode version to 3.18, because of the write-only properties support.
2022-08-01 22:05:21 +02:00
Benoît Minisini
56e9129f85 PROPERTY WRITE now declares a write-only property.
[INTERPRETER]
* NEW: Support for write-only properties.

[COMPILER]
* NEW: PROPERTY WRITE now declares a write-only property.
2022-08-01 22:03:54 +02:00
Benoît Minisini
3f9efaad6e Paint: Continue implementation.
[GB.WEB.GUI]
* NEW: Paint: Continue implementation.
2022-08-01 20:53:27 +02:00
Benoît Minisini
9494747a6c Paint: Continue implementation.
[GB.WEB.GUI]
* NEW: Paint: Continue implementation.
2022-08-01 18:21:13 +02:00
Benoît Minisini
0f4521a744 Initial implementation of WebDrawingArea control and Paint class.
[GB.WEB.GUI]
* NEW: WebDrawingArea: Initial implementation.
* NEW: Paint: Initial implementation.
2022-08-01 15:14:21 +02:00
Benoît Minisini
aee4a046fb Code editor: Fix keyword detection (ME, SUPER...) when analyzing an expression to jump to a definition.
[DEVELOPMENT ENVIRONMENT]
* BUG: Code editor: Fix keyword detection (ME, SUPER...) when analyzing an expression to jump to a definition.
2022-08-01 02:19:15 +02:00
Benoît Minisini
d64e07c69a New stock icon 'chart'. Redraw some icons.
[GB.FORM.STOCK]
* NEW: New stock icon 'chart'.
* NEW: Redraw some icons.
2022-07-31 22:12:11 +02:00
Benoît Minisini
dc2b8a8b9f Search: New result presentation.
[DEVELOPMENT ENVIRONMENT]
* NEW: Search: New result presentation.
2022-07-30 20:30:35 +02:00
Benoît Minisini
6114fd8ae7 Code, text and conflict editor: Use the 'gb.form.editor' new goto line panel instead of the custom one.
[DEVELOPMENT ENVIRONMENT]
* NEW: Code, text and conflict editor: Use the 'gb.form.editor' new goto line panel instead of the custom one.
2022-07-30 18:09:24 +02:00
Benoît Minisini
681f91d9bb TextEditor: The 'Remove()' method now normalizes its arguments to avoid crashing if they are outside the document.
[GB.FORM.EDITOR]
* NEW: TextEditor: Add a default popup menu.
* NEW: TextEditor: Add a panel to go to a specific line.
* NEW: TextEditor: ShowFindPanel() and ShowGotoPanel() are now public methods for showing the action panels.
2022-07-30 18:07:50 +02:00
Benoît Minisini
d722446841 TerminalView: Correctly update the popup menu when it opens.
[GB.FORM.TERMINAL]
* BUG: TerminalView: Correctly update the popup menu when it opens.
2022-07-30 17:33:26 +02:00
Benoît Minisini
525f5d72ac TerminalView: Don't open the default popup if the Menu event handler exists.
[GB.FORM.TERMINAL]
* BUG: TerminalView: Don't open the default popup if the Menu event handler exists.
2022-07-30 17:15:22 +02:00
Benoît Minisini
08242daafc Version control: Display the state of the file on top in the information dialog.
[DEVELOPMENT ENVIRONMENT]
* BUG: Project tree: Fix visibility of version control information menu entry.
* NEW: Version control: Display the state of the file on top in the information dialog.
2022-07-30 17:08:15 +02:00
Benoît Minisini
a7045c7e03 Version control: Support for defining Git repository identity. Move statistics to the publish dialog.
[DEVELOPMENT ENVIRONMENT]
* NEW: Version control: Move version control statistics to a new 'Repository' tab in publish dialog.
* NEW: Version control: Add fields to define your Git repository identity in 'Repository' tab.
* NEW: Update French translation.
* BUG: Test suites: Fix test result label colors.
2022-07-30 16:10:10 +02:00
Benoît Minisini
4adaac3377 New stock icon 'version-control'.
[GB.FORM]
* NEW: New stock icon 'version-control'.
2022-07-30 16:07:05 +02:00
Benoît Minisini
15ecb84745 New stock icon 'version-control'.
[GB.FORM.STOCK]
* NEW: New stock icon 'version-control'.
2022-07-30 16:06:49 +02:00
Benoît Minisini
f4832f5b98 String: Add new IsEMail(), IsIP() and IsIPv6() validation methods.
[GB.UTIL]
* NEW: String.IsEmail() is a new function that checks if a string seems to be an e-mail address.
* NEW: String.IsIP() is a new function that checks if a string is an IPv4 address.
* NEW: String.IsIPv6() is a new function that checks if a string is an IPv6 address.
2022-07-30 15:17:13 +02:00
Benoît Minisini
911ba060e7 Menu.Parent is a new property that returns the parent menu of a menu, or NULL if the menu is a top-level one.
[GB.GTK]
* NEW: Menu.Parent is a new property that returns the parent menu of a menu, or NULL if the menu is a top-level one.

[GB.GTK3]
* NEW: Menu.Parent is a new property that returns the parent menu of a menu, or NULL if the menu is a top-level one.

[GB.QT4]
* NEW: Menu.Parent is a new property that returns the parent menu of a menu, or NULL if the menu is a top-level one.

[GB.QT5]
* NEW: Menu.Parent is a new property that returns the parent menu of a menu, or NULL if the menu is a top-level one.
2022-07-30 00:59:05 +02:00
Benoît Minisini
c0de8e87d6 Version control: Support for creating branches.
[DEVELOPMENT ENVIRONMENT]
* NEW: Version control: Support for creating branches.
* NEW: Update French translation.
2022-07-30 00:58:36 +02:00
Benoît Minisini
348c4393f4 Debugger: Support modules, not just classes, when debugging inside components.
[DEVELOPMENT ENVIRONMENT]
* BUG: Debugger: Support modules, not just classes, when debugging inside components.
* NEW: Update default compact layout.
2022-07-29 12:42:11 +02:00