menus: implement a bunch of menus in GtkBuilder format.

It's not all of them yet, just the ones which work out of the box with current
code and which I could easily trigger.
This commit is contained in:
Jehan 2023-02-23 21:15:40 +01:00
parent 9c5812ffbb
commit dcd911ba60
18 changed files with 406 additions and 1 deletions

18
menus/brushes-menu.ui Normal file
View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/brushes-popup">
<item><attribute name="action">app.brushes-edit</attribute></item>
<item><attribute name="action">app.brushes-open-as-image</attribute></item>
<section>
<item><attribute name="action">app.brushes-new</attribute></item>
<item><attribute name="action">app.brushes-duplicate</attribute></item>
<item><attribute name="action">app.brushes-copy-location</attribute></item>
<item><attribute name="action">app.brushes-show-in-file-manager</attribute></item>
<item><attribute name="action">app.brushes-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.brushes-refresh</attribute></item>
</section>
</menu>
</interface>

16
menus/buffers-menu.ui Normal file
View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/buffers-popup">
<section>
<item><attribute name="action">app.buffers-paste</attribute></item>
<item><attribute name="action">app.buffers-paste-in-place</attribute></item>
<item><attribute name="action">app.buffers-paste-into</attribute></item>
<item><attribute name="action">app.buffers-paste-into-in-place</attribute></item>
<item><attribute name="action">app.buffers-paste-as-new-layer</attribute></item>
<item><attribute name="action">app.buffers-paste-as-new-layer-in-place</attribute></item>
<item><attribute name="action">app.buffers-paste-as-new-image</attribute></item>
<item><attribute name="action">app.buffers-delete</attribute></item>
</section>
</menu>
</interface>

32
menus/channels-menu.ui Normal file
View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/channels-popup">
<item><attribute name="action">app.channels-edit-attributes</attribute></item>
<submenu>
<attribute name="label">Color Tags</attribute>
<item><attribute name="action">app.channels-color-tag-none</attribute></item>
<item><attribute name="action">app.channels-color-tag-blue</attribute></item>
<item><attribute name="action">app.channels-color-tag-green</attribute></item>
<item><attribute name="action">app.channels-color-tag-yellow</attribute></item>
<item><attribute name="action">app.channels-color-tag-orange</attribute></item>
<item><attribute name="action">app.channels-color-tag-brown</attribute></item>
<item><attribute name="action">app.channels-color-tag-red</attribute></item>
<item><attribute name="action">app.channels-color-tag-violet</attribute></item>
<item><attribute name="action">app.channels-color-tag-gray</attribute></item>
</submenu>
<section>
<item><attribute name="action">app.channels-new</attribute></item>
<item><attribute name="action">app.channels-raise</attribute></item>
<item><attribute name="action">app.channels-lower</attribute></item>
<item><attribute name="action">app.channels-duplicate</attribute></item>
<item><attribute name="action">app.channels-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.channels-selection-replace</attribute></item>
<item><attribute name="action">app.channels-selection-add</attribute></item>
<item><attribute name="action">app.channels-selection-subtract</attribute></item>
<item><attribute name="action">app.channels-selection-intersect</attribute></item>
</section>
</menu>
</interface>

15
menus/colormap-menu.ui Normal file
View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/colormap-popup">
<item><attribute name="action">app.colormap-edit-color</attribute></item>
<item><attribute name="action">app.colormap-add-color-from-fg</attribute></item>
<item><attribute name="action">app.colormap-add-color-from-bg</attribute></item>
<section>
<item><attribute name="action">app.colormap-selection-replace</attribute></item>
<item><attribute name="action">app.colormap-selection-add</attribute></item>
<item><attribute name="action">app.colormap-selection-subtract</attribute></item>
<item><attribute name="action">app.colormap-selection-intersect</attribute></item>
</section>
</menu>
</interface>

18
menus/documents-menu.ui Normal file
View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/documents-popup">
<item><attribute name="action">app.documents-open</attribute></item>
<item><attribute name="action">app.documents-raise-or-open</attribute></item>
<item><attribute name="action">app.documents-file-open-dialog</attribute></item>
<item><attribute name="action">app.documents-copy-location</attribute></item>
<item><attribute name="action">app.documents-show-in-file-manager</attribute></item>
<item><attribute name="action">app.documents-remove</attribute></item>
<item><attribute name="action">app.documents-clear</attribute></item>
<section>
<item><attribute name="action">app.documents-recreate-preview</attribute></item>
<item><attribute name="action">app.documents-reload-previews</attribute></item>
<item><attribute name="action">app.documents-remove-dangling</attribute></item>
</section>
</menu>
</interface>

17
menus/dynamics-menu.ui Normal file
View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/dynamics-popup">
<item><attribute name="action">app.dynamics-edit</attribute></item>
<section>
<item><attribute name="action">app.dynamics-new</attribute></item>
<item><attribute name="action">app.dynamics-duplicate</attribute></item>
<item><attribute name="action">app.dynamics-copy-location</attribute></item>
<item><attribute name="action">app.dynamics-show-in-file-manager</attribute></item>
<item><attribute name="action">app.dynamics-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.dynamics-refresh</attribute></item>
</section>
</menu>
</interface>

View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/error-console-popup">
<item><attribute name="action">app.error-console-clear</attribute></item>
<item><attribute name="action">app.error-console-select-all</attribute></item>
<section>
<item><attribute name="action">app.error-console-save-all</attribute></item>
<item><attribute name="action">app.error-console-save-selection</attribute></item>
</section>
<submenu>
<attribute name="label">_Highlight</attribute>
<item><attribute name="action">app.error-console-highlight-error</attribute></item>
<item><attribute name="action">app.error-console-highlight-warning</attribute></item>
<item><attribute name="action">app.error-console-highlight-info</attribute></item>
</submenu>
</menu>
</interface>

9
menus/fonts-menu.ui Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/fonts-popup">
<section>
<item><attribute name="action">app.fonts-refresh</attribute></item>
</section>
</menu>
</interface>

18
menus/gradients-menu.ui Normal file
View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/gradients-popup">
<item><attribute name="action">app.gradients-edit</attribute></item>
<section>
<item><attribute name="action">app.gradients-new</attribute></item>
<item><attribute name="action">app.gradients-duplicate</attribute></item>
<item><attribute name="action">app.gradients-save-as-pov</attribute></item>
<item><attribute name="action">app.gradients-copy-location</attribute></item>
<item><attribute name="action">app.gradients-show-in-file-manager</attribute></item>
<item><attribute name="action">app.gradients-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.gradients-refresh</attribute></item>
</section>
</menu>
</interface>

9
menus/images-menu.ui Normal file
View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/images-popup">
<item><attribute name="action">app.images-raise-views</attribute></item>
<item><attribute name="action">app.images-new-view</attribute></item>
<item><attribute name="action">app.images-delete</attribute></item>
</menu>
</interface>

86
menus/layers-menu.ui Normal file
View File

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/layers-popup">
<item><attribute name="action">app.layers-edit-text</attribute></item>
<item><attribute name="action">app.layers-edit-attributes</attribute></item>
<submenu>
<attribute name="label">Blend Space</attribute>
<item><attribute name="action">app.layers-blend-space-auto</attribute></item>
<item><attribute name="action">app.layers-blend-space-rgb-linear</attribute></item>
<item><attribute name="action">app.layers-blend-space-rgb-perceptual</attribute></item>
</submenu>
<submenu>
<attribute name="label">Composite Space</attribute>
<item><attribute name="action">app.layers-composite-space-auto</attribute></item>
<item><attribute name="action">app.layers-composite-space-rgb-linear</attribute></item>
<item><attribute name="action">app.layers-composite-space-rgb-perceptual</attribute></item>
</submenu>
<submenu>
<attribute name="label">Composite Mode</attribute>
<item><attribute name="action">app.layers-composite-mode-auto</attribute></item>
<item><attribute name="action">app.layers-composite-mode-union</attribute></item>
<item><attribute name="action">app.layers-composite-mode-clip-to-backdrop</attribute></item>
<item><attribute name="action">app.layers-composite-mode-clip-to-layer</attribute></item>
<item><attribute name="action">app.layers-composite-mode-intersection</attribute></item>
</submenu>
<submenu>
<attribute name="label">Color Tags</attribute>
<item><attribute name="action">app.layers-color-tag-none</attribute></item>
<item><attribute name="action">app.layers-color-tag-blue</attribute></item>
<item><attribute name="action">app.layers-color-tag-green</attribute></item>
<item><attribute name="action">app.layers-color-tag-yellow</attribute></item>
<item><attribute name="action">app.layers-color-tag-orange</attribute></item>
<item><attribute name="action">app.layers-color-tag-brown</attribute></item>
<item><attribute name="action">app.layers-color-tag-red</attribute></item>
<item><attribute name="action">app.layers-color-tag-violet</attribute></item>
<item><attribute name="action">app.layers-color-tag-gray</attribute></item>
</submenu>
<section>
<item><attribute name="action">app.layers-new</attribute></item>
<item><attribute name="action">app.layers-new-from-visible</attribute></item>
<item><attribute name="action">app.layers-new-group</attribute></item>
<!--
<item><attribute name="action">app.layers-raise</attribute></item>
<item><attribute name="action">app.layers-raise-to-top</attribute></item>
<item><attribute name="action">app.layers-lower</attribute></item>
<item><attribute name="action">app.layers-lower-to-bottom</attribute></item>
-->
<item><attribute name="action">app.layers-duplicate</attribute></item>
<item><attribute name="action">app.layers-anchor</attribute></item>
<item><attribute name="action">app.layers-merge-down</attribute></item>
<item><attribute name="action">app.layers-merge-group</attribute></item>
<item><attribute name="action">app.layers-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-text-discard</attribute></item>
<item><attribute name="action">app.layers-text-to-vectors</attribute></item>
<item><attribute name="action">app.layers-text-along-vectors</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-resize</attribute></item>
<item><attribute name="action">app.layers-resize-to-image</attribute></item>
<item><attribute name="action">app.layers-scale</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-mask-add</attribute></item>
<item><attribute name="action">app.layers-mask-apply</attribute></item>
<item><attribute name="action">app.layers-mask-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-mask-show</attribute></item>
<item><attribute name="action">app.layers-mask-edit</attribute></item>
<item><attribute name="action">app.layers-mask-disable</attribute></item>
<item><attribute name="action">app.layers-mask-selection-replace</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-alpha-add</attribute></item>
<item><attribute name="action">app.layers-alpha-remove</attribute></item>
<item><attribute name="action">app.layers-alpha-selection-replace</attribute></item>
</section>
<section>
<item><attribute name="action">app.layers-merge-layers</attribute></item>
<item><attribute name="action">app.layers-flatten-image</attribute></item>
</section>
</menu>
</interface>

View File

@ -39,6 +39,30 @@ install_data(menus_files,
install_dir: menus_dir,
)
ui_menus_files = files(
'brushes-menu.ui',
'buffers-menu.ui',
'channels-menu.ui',
'colormap-menu.ui',
'documents-menu.ui',
'dynamics-menu.ui',
'error-console-menu.ui',
'fonts-menu.ui',
'gradients-menu.ui',
'images-menu.ui',
'layers-menu.ui',
'mypaint-brushes-menu.ui',
'palettes-menu.ui',
'patterns-menu.ui',
'quick-mask-menu.ui',
'templates-menu.ui',
'vectors-menu.ui',
)
install_data(ui_menus_files,
install_dir: menus_dir,
)
unstable_menus_args = stable ? [] : [ '--stringparam', 'unstable-menus', 'yes' ]
menus_built_files = []
@ -100,7 +124,7 @@ if xmllint.found()
xmllint,
'--output', '@OUTPUT@',
'--path', meson.current_source_dir(),
menus_ui_built_files
ui_menus_files, menus_ui_built_files
],
# The output file is only useful as a flag file, so that the command
# knows if it has been run already.

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/mypaint-brushes-popup">
<item><attribute name="action">app.mypaint-brushes-copy-location</attribute></item>
<item><attribute name="action">app.mypaint-brushes-show-in-file-manager</attribute></item>
<item><attribute name="action">app.mypaint-brushes-delete</attribute></item>
<section>
<item><attribute name="action">app.mypaint-brushes-refresh</attribute></item>
</section>
</menu>
</interface>

19
menus/palettes-menu.ui Normal file
View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/palettes-popup">
<item><attribute name="action">app.palettes-edit</attribute></item>
<section>
<item><attribute name="action">app.palettes-new</attribute></item>
<item><attribute name="action">app.palettes-import</attribute></item>
<item><attribute name="action">app.palettes-duplicate</attribute></item>
<item><attribute name="action">app.palettes-merge</attribute></item>
<item><attribute name="action">app.palettes-copy-location</attribute></item>
<item><attribute name="action">app.palettes-show-in-file-manager</attribute></item>
<item><attribute name="action">app.palettes-delete</attribute></item>
</section>
<section>
<item><attribute name="action">app.palettes-refresh</attribute></item>
</section>
</menu>
</interface>

22
menus/patterns-menu.ui Normal file
View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/patterns-popup">
<item><attribute name="action">app.patterns-open-as-image</attribute></item>
<!-- disabled because they are useless now
<item><attribute name="action">app.patterns-edit</attribute></item>
<section>
<item><attribute name="action">app.patterns-new</attribute></item>
<item><attribute name="action">app.patterns-duplicate</attribute></item>
</section>
-->
<item><attribute name="action">app.patterns-copy-location</attribute></item>
<item><attribute name="action">app.patterns-show-in-file-manager</attribute></item>
<item><attribute name="action">app.patterns-delete</attribute></item>
<section>
<item><attribute name="action">app.patterns-refresh</attribute></item>
</section>
</menu>
</interface>

14
menus/quick-mask-menu.ui Normal file
View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/quick-mask-popup">
<item><attribute name="action">app.quick-mask-toggle</attribute></item>
<section>
<item><attribute name="action">app.quick-mask-invert-on</attribute></item>
<item><attribute name="action">app.quick-mask-invert-off</attribute></item>
</section>
<section>
<item><attribute name="action">app.quick-mask-configure</attribute></item>
</section>
</menu>
</interface>

13
menus/templates-menu.ui Normal file
View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/templates-popup">
<item><attribute name="action">app.templates-create-image</attribute></item>
<section>
<item><attribute name="action">app.templates-new</attribute></item>
<item><attribute name="action">app.templates-duplicate</attribute></item>
<item><attribute name="action">app.templates-edit</attribute></item>
<item><attribute name="action">app.templates-delete</attribute></item>
</section>
</menu>
</interface>

45
menus/vectors-menu.ui Normal file
View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<interface>
<menu id="/vectors-popup">
<item><attribute name="action">app.vectors-edit</attribute></item>
<item><attribute name="action">app.vectors-edit-attributes</attribute></item>
<submenu>
<attribute name="label">Color Tags</attribute>
<item><attribute name="action">app.vectors-color-tag-none</attribute></item>
<item><attribute name="action">app.vectors-color-tag-blue</attribute></item>
<item><attribute name="action">app.vectors-color-tag-green</attribute></item>
<item><attribute name="action">app.vectors-color-tag-yellow</attribute></item>
<item><attribute name="action">app.vectors-color-tag-orange</attribute></item>
<item><attribute name="action">app.vectors-color-tag-brown</attribute></item>
<item><attribute name="action">app.vectors-color-tag-red</attribute></item>
<item><attribute name="action">app.vectors-color-tag-violet</attribute></item>
<item><attribute name="action">app.vectors-color-tag-gray</attribute></item>
</submenu>
<section>
<item><attribute name="action">app.vectors-new</attribute></item>
<item><attribute name="action">app.vectors-raise</attribute></item>
<item><attribute name="action">app.vectors-lower</attribute></item>
<item><attribute name="action">app.vectors-duplicate</attribute></item>
<item><attribute name="action">app.vectors-delete</attribute></item>
<item><attribute name="action">app.vectors-merge-visible</attribute></item>
</section>
<section>
<item><attribute name="action">app.vectors-selection-replace</attribute></item>
<item><attribute name="action">app.vectors-selection-add</attribute></item>
<item><attribute name="action">app.vectors-selection-subtract</attribute></item>
<item><attribute name="action">app.vectors-selection-intersect</attribute></item>
<item><attribute name="action">app.vectors-selection-to-vectors</attribute></item>
</section>
<section>
<item><attribute name="action">app.vectors-fill</attribute></item>
<item><attribute name="action">app.vectors-stroke</attribute></item>
</section>
<section>
<item><attribute name="action">app.vectors-copy</attribute></item>
<item><attribute name="action">app.vectors-paste</attribute></item>
<item><attribute name="action">app.vectors-export</attribute></item>
<item><attribute name="action">app.vectors-import</attribute></item>
</section>
</menu>
</interface>