Week 2 - Improving DrawPanel UI#

What did you do this week?#

This week I had to refactor and make my code cleaner along with some bug fixing, I started by adding tests and tutorials so that my changes could be tested by everyone. Then I separated the mode for selection so that it would be easy to select an individual element and work along with it. Once the selection mode was complete I started with the deletion of the elements.

Now, as we have various modes the question arises, How do we know which mode is currently active and how would users know it?? For this, I took references from some other similar applications and came up with an idea to toggle the icon of the selected mode whenever the mode is selected/deselected as we had individual buttons with an icon for each mode.

fury-gl/fury#599

https://user-images.githubusercontent.com/64432063/174710174-87604e78-e563-458d-8db7-28941301b02c.gif

Along with this I also started to learn how to access key events so that in near future some keyboard shortcuts can be added.

Did you get stuck anywhere?#

No, Everything went well.

What is coming up next?#

In the current version of the DrawPanel, the shapes can be created and translated beyond the canvas boundaries, so we have to clamp the positions according to the canvas.