Difference between revisions of "GSoC 2021 Verbs to Gio::Actions"
SushantAA20 (talk | contribs) |
SushantAA20 (talk | contribs) |
||
Line 9: | Line 9: | ||
=== Code === | === Code === | ||
https://gitlab.com/inkscape/inkscape/-/merge_requests/3328 | https://gitlab.com/inkscape/inkscape/-/merge_requests/3328 | ||
=== Blog === | |||
https://sushantaa.github.io/Blog/VerbAction/ | |||
===Time Table=== | ===Time Table=== | ||
=== Community bonding period === | === Community bonding period === |
Revision as of 15:30, 20 August 2021
This page is a progress tracker for project "verb to Gio::Actions"
Project
About
The biggest problem is that most Verbs require a desktop. This means that they cannot be used in a headless Inkscape. While actions are defined independent of the GUI (unlike GtkAction), they can be used by "actionable widgets" (menus, buttons, etc.) by simply referring to them by name. They can also be remotely activated by D-Bus and GNotifications.Gio::Actions will allow a future GUI-free Inkscape version.
Command Palette overall lacks specificity while taking inputs. It would be nice if a hint is given to the user about the input example - Open command Palette > Rotate > 30 ( placeholder = "Enter a double ..."), As In this case the user was not given a hit about the input of angle. It should have been - placeholder = “Give a real number as input for angle”.
Code
https://gitlab.com/inkscape/inkscape/-/merge_requests/3328
Blog
https://sushantaa.github.io/Blog/VerbAction/
Time Table
Community bonding period
- Learn more about the codebase
- Finalizing the Infrastructure design by interacting with #team_dev.
- Start Coding code Gio::Actions Conversion - Menubar: Objects to get feedback ( June starting )
Coding Period
- week 1 : Gio::Actions Conversion - Menubar: Objects
- week 2 : Command Palette Input Improvement
- week 3 : Gio::Actions Conversion - Menubar: Text
- week 4 : Gio::Actions Conversion - Menubar: Edit
- week 5 : Gio::Actions Conversion - Menubar: Help
- week 6 : Gio::Actions Conversion - Menubar: Path
- week 7 : Gio::Actions Conversion - Menubar: View (Already Partially Done), Files
- week 8,9 : Gio::Actions Conversion - Menubar: Filters + Extensions
- week 10 : Gio::Actions Conversion - Menubar: Layer + Documentation
Notes
Custom widgets used in toolbars:
- UnitTracker (not really a widget)
- Units: Selector, Node, Rect, Arc, Calligraphy, Text
- StyleSwatch: Rect, Arc, Star, Spiral, Pen, Pencil, Calligraphy, PaintBucket, Tweak, LPE,
- LabelToolItem: Rect, Arc, Star, Spiral, Pencil, Tweak, Measure
- ComboBoxEntryToolItem
- ComboToolItemColumns
- SpinButtonToolItem: Selector, Node, Rect, Arc, Star, 3D, Spiral, Pen, Pencil, Calligraphy, Text, Gradient, Mesh, PaintBucket, Tweak, Spray, Eraser, Connector, Measure.
The last four are just wrappers around normal widgets. GTK4 has removed the Gtk::Toolbar widget. One can just use a Gtk::Box and put the widgets in directly. This might be worth trying now.