Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Layer box right-click menu #516

Merged
merged 7 commits into from
Jan 5, 2024
Merged

New Layer box right-click menu #516

merged 7 commits into from
Jan 5, 2024

Conversation

tannerhelland
Copy link
Owner

This commit brings two meaningful improvements to PhotoDemon:

  1. A new Unicode-capable popup menu class, which supports nested submenus, checkmarks, and other features necessary for localized right-click menus throughout PhotoDemon.

  2. A comprehensive new right-click menu for the Layers toolbox. This was the menu I used to build and test the new popup menu class.

image

Going forward, I hope to add more right-click menus throughout the program. Thank you to everyone who has suggested this feature.

(Relates to #444)

The first draft of this class was quick and dirty, designed around minimalist, single-level right-click popup menus for a few select UI elements.

Now it's time to expand.  pdPopupMenu now supports submenus in any arrangement, which will finally allow for full-blown right-click (localized!) menus throughout PD.

Now to actually construct all those menus... 😭
Relates to #444

Because all PhotoDemon Layer menu actions were only designed to work on the currently active layer, this new right-click menu required reworking many of layer functions to accept a custom target layer.
... when the operation completes.

This is how Photoshop behaves (it is also more intuitive).
@tannerhelland tannerhelland merged commit b4ac42e into main Jan 5, 2024
@tannerhelland tannerhelland deleted the right-click-menus branch January 5, 2024 18:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant