Adds axonometric grid#1541
Conversation
|
@cameronwhite I tried everything, but the formatting continues to fail. Any ideas? 😵💫 |
I tried to implement angle changes, but was getting some problems with floating point rounding errors, so I'll keep that to a future merge request. |
cameronwhite
left a comment
There was a problem hiding this comment.
Looks great! Just one a minor comment on code style
|
What do you guys think of hiding/showing the respective spin buttons depending on the checked/unchecked status of the checkboxes? From my research, I think it would be easy to implement through value bindings. I believe these are not currently used in Pinta, but could help us make the code tidy if used correctly, and this could be a good place to try a pilot of it. A summary I found says:
So imagine binding the |
|
👍 I don't have any objection to using value bindings for this if it's easy to set up (if not, just using some regular event handlers isn't difficult either) |
What about using a checkbox with a GTK expander? I think showing/hiding the Spin Buttons without animation would look quite bad, but the expander probably fixes that.
I'm also ok with disabling the inputs. |
|
Thanks! The comments look fine to me 👍 I think let's just disable the inputs here since there aren't many widgets |
Done! |
|
Todo for future MR: Only render any grid lines inside viewport boundaries to improve performance. If we add a regular grid or an axonometric grid (or both) with size 1 when zoomed in, we get a lot of lag. That's because our loops consider the whole canvas for grid line creation, and not only the viewport area. |
|
The binding changes look good, thank you! |
Re: performance, one other thing to try out would be caching the |

Implements #1438. Does not implement color and angle changes (fixed #000 and 45deg). Does implement size, though.
Please squash the commits.