Skip to content

[New] Edit geometries with programmatic reticle tool #662

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

Open
wants to merge 10 commits into
base: v.next
Choose a base branch
from

Conversation

des12437
Copy link
Contributor

Description

This PR implements Edit geometries with programmatic reticle tool in Edit and Manage Data category.
URL to README: URL

Linked Issue(s)

  • swift/issues/7071

How To Test

  • Use the programmatic reticle tool in the menu
  • Tap on a graphic to edit it with the programmatic reticle tool

Screenshots

edit-geometries-with-programmatic-reticle-tool

@des12437 des12437 self-assigned this Jul 17, 2025
@des12437 des12437 marked this pull request as ready for review July 17, 2025 22:51
@des12437 des12437 requested review from a team, philium and rolson and removed request for a team July 17, 2025 22:51
Copy link
Contributor

@philium philium left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't reviewed everything yet, but here is some initial feedback.

@des12437 des12437 requested a review from philium July 21, 2025 18:12
}
}
} label: {
Label("Geometry Editor", systemImage: "pencil.tip.crop.circle")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Menu has an initializer for this:

Menu("Geometry Editor", systemImage: "pencil.tip.crop.circle") {
    ...
}

Please use that instead.

Also, that system image is the one that Apple uses for markup, which could be confusing. Consider using a different symbol. Perhaps pencil.line? In addition, when a geometry is selected, consider updating this button's image to match the selected geometry. It is a bit confusing for the button image to stay the same, yet open different menus based on the context.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the systemImage remain the same to look like the menu in the Create and Edit Geometries sample?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know. I wasn't aware that the same icon is used in a different sample.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, I updated the systemImage to pencil.line.

}
}

private extension GeometryEditorMenu {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of the properties in this extension are a single line and are only called from a single place, so there is no code being consolidated and in fact the code is more complex. I suggest inlining the body of these properties where they are called and then just getting rid of this extension.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I removed and inlined the single line non-optional properties and kept the unwrapped optional properties in this extension.

@des12437 des12437 requested a review from philium July 22, 2025 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy