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

UI improvement: Rewrite rules #71

Closed
RazinShaikh opened this issue Aug 7, 2023 · 11 comments · Fixed by #187
Closed

UI improvement: Rewrite rules #71

RazinShaikh opened this issue Aug 7, 2023 · 11 comments · Fixed by #187
Assignees
Labels
Type: enhancement New feature or request

Comments

@RazinShaikh
Copy link
Collaborator

RazinShaikh commented Aug 7, 2023

The side panel can have the rewrites, simplification routines and the proof steps. The code for sidebar of edit mode might be useful for implementing this.

@RazinShaikh RazinShaikh added the Type: enhancement New feature or request label Aug 7, 2023
@jvdwetering
Copy link
Collaborator

Hmm, I'm not sure I'm a fan of this idea. Wouldn't that make the sidebar very crowded? We have some nice real estate on top of the diagram, so why not use it?
Something I was considering for the top toolbar with the rewrites is to make it have different tabs so that the rewrites are grouped. So you would have a tab for the basic rewrites, but then also a tab for for instance the graph-theoretic rewrites (local complementation and pivoting), and another one for ZH-rewrites. The strategies can then also have their own tab.

@RazinShaikh
Copy link
Collaborator Author

Using tabs sounds like a nice idea :)

@RazinShaikh RazinShaikh changed the title UI improvement: Move rewrites from toolbar to the side panel. UI improvement: Rewrite rules Aug 8, 2023
@boldar99
Copy link
Collaborator

We could do something like that of VSCode.

Rewrites on the side with collapsable groups. We could also implement searching and scrolling.

image

@boldar99 boldar99 self-assigned this Aug 29, 2023
@RazinShaikh
Copy link
Collaborator Author

We should also allow the user to delete custom rewrites from the UI.

@jvdwetering
Copy link
Collaborator

I've now added the tabbed interface for different groups of rewrites.
image

@jvdwetering
Copy link
Collaborator

I think we could also add different tab names based on subfolders in the folder containing the custom rewrite rules. This would make sense if we expect people to be adding a lot of custom rewrite rules.

A design decision we want to consider is whether a rewrite rule can appear in multiple tabs. For instance, should Z-spider fusion only appear in Basic rules, or also in the ZXW rule set and the ZH rule set?

@RazinShaikh
Copy link
Collaborator Author

RazinShaikh commented Oct 10, 2023

Is it possible to add an option to change from horizontal tabs to vertical tabs? Most browsers support this. That would look a bit like Boldi's suggestion. I fell that horizontal list of rewrites is a bit inconvenient if you have a lot of custom rewrites because then you need to scroll horizontally.

@RazinShaikh
Copy link
Collaborator Author

@jvdwetering can you also add these simplifications as a tab?

image

@jvdwetering
Copy link
Collaborator

Is it possible to add an option to change from horizontal tabs to vertical tabs? Most browsers support this. That would look a bit like Boldi's suggestion. I fell that horizontal list of rewrites is a bit inconvenient if you have a lot of custom rewrites because then you need to scroll horizontally.

I believe there is some built in Qt feature that allows you to switch being a horizontal layout and a vertical layout.

@RazinShaikh
Copy link
Collaborator Author

I have added these simplification routines in this commit a3d6260

@RazinShaikh
Copy link
Collaborator Author

The horizontal tabbed interface we have here does not scroll when the there are a lot of rewrites and it compresses the text on the button such that you can't read the full name of the rewrite.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants