calligra season of usability project idea
Celeste Lyn Paul
celeste at kde.org
Tue Aug 23 11:39:11 BST 2011
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 <boud at 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
More information about the calligra-devel
mailing list