Hi Boud, The proposal looks great. I'll forward it to Jan so he can include it with the other Season of Usability projects.
~ Celeste On Tue, Aug 23, 2011 at 5:10 AM, Boudewijn Rempt <b...@valdyas.org> wrote: > Hi Celeste, > > As promised, here's the challenge for Calligra for this year's season of > usability. I sort of feel that this is the kind of project two students could > very well cooperate on, but I'm not sure if that's allowed. Anyway, here goes: > > -------------------------- > Calligra Season of Usability Project Proposal > > As asked, here's a short writeup of what I think Calligra really needs now in > terms of usability work. First what we don't need: a study that examines how > certain tasks can be executed now in a certain Calligra application. The > purpose of this project is to create an interaction design for the creation > and manipulation of objects. > > _Introduction_ > > Calligra uses some specific terminology to describe the components that make > up a document: > > * a document is made up of shapes that are placed on a canvas > * shapes are objects, like text boxes, lines or images > * a shape is created from a set of default values, for instance the width of > a line or the font for text. > * the default values are used whenever a new shape is created. > > _Creating Shapes_ > > Currently, there are two ways to create objects in Calligra: > > * from the "Add Shapes" docker > * using a tool that can create shapes > > Originally, adding shapes from a docker with a collection of shapes was > intended to make it easy to create and save new default settings for a > particular type of shape. Then the new shape would show up in the docker. We > do not have a suitable interaction for actually creating the new shape > defaults, sorting, ordering and tagging them, although the basic code does > exist to create shapes from saved parameters. > Creating shapes with the a tool was intended to be used only for vector > shapes like lines and calligraphic lines where a user would create many > shapes by drawing on the canvas. > > After creation, the settings of a shape can be manipulated in two ways: > > * by selecting the shape and changing some settings in one or more shape > option dockers > * by selecting a tool that can manipulate the shape. Some tools come with > option widgets that set properties on shapes directly. > > By now, more and more option widgets are migrating to tools. > > _Problems we face_ > > * Selecting a shape is quite difficult. Depending on the active tool, a click > can select a shape, manipulate a shape or do nothing. One proposal is to show > a border on hover that when clicked will always select the shape and that > will allow basic manipulation such as dragging and changing geometry. > > However: > > Tt's not as easy as it sounds. If I edit a control point of a path shape > which happens to be on top of another shape, I don't want to accidentally hit > that magic border of the other shape and select that. > > Or the case where there are several shapes on top of each other, editing one > of them would show all selection borders of all these shapes? > > So we have to keep in mind, that shapes are not always nicely separated from > each other but can overlap. > > * Creating new default settings for creating new shapes. We don't have > anything for this, with the result that the Add Shapes docker always shows a > set of rather boring defaults and cannot be customized. > > * When working, it's useful to be able to set values and have those values > carried over to the next object you create. We do not support that either. > > _Goal_ > > The goal of this project would be to create an interaction design for > creating and manipulating shapes. The start should be > http://community.kde.org/Calligra/Usability_and_UX/Common/Dockers_vs_ToolOptions. > Thomas Pfeiffer can work with the students to arrive at a full plan, while I > am volunteering to help with the implementation. > -------------------------- > -- > Boudewijn Rempt > http://www.valdyas.org, http://www.krita.org, http://www.boudewijnrempt.nl > -- Celeste Lyn Paul KDE Usability Project KDE e.V. Board of Directors www.kde.org _______________________________________________ calligra-devel mailing list calligra-devel@kde.org https://mail.kde.org/mailman/listinfo/calligra-devel