[Sugar-devel] [Design] ColorButton

Albert Cahalan acahalan at gmail.com
Mon Sep 14 05:18:29 EDT 2009


Aleksey Lim writes:

> Another option is that picker should contain only predefined colors
> (and maybe one custom) by default and having click-to-close behaviour.
> Then if users want to make(change) custom color, they click "add.."
> (or so) button and palette opens right panel and click on predefined
> color will just change custom color.

Here are two ideas that would be interesting to test with users who
lack the expectation that a proper selector is defined by Microsoft
and/or Adobe.

The first is simply a colorful square that you click on. The trouble
is that most methods of mapping the 3-D RGB space onto a 2-D square
are really awful. Consider a 3-D space-filling curve in a 64*64*64
color cube. Use that to map 0x40000 colors onto a 1-D space. Now
consider a 2-D space-filling curve in a 512*512 square. Use that to
map the 1-D space onto a 2-D image. The result is that you can
cover the RGB space nicely, with similar colors mostly together.
This should be precomputed. Also note that the 64*64*64 would ideally
have the spacing adjusted for gamma; try 1.0 and 1.8 for gamma.

The second is an iterative selector with a notion of "current" color.
The selector displays color patches that are visually related to the
current color. Each time you click on a patch, it becomes current.
This lets the user walk his way through the color space, allowing
access to all colors without the need to understand color spaces.
The user just picks the closest color of those available until he is
happy with the current color.


More information about the Sugar-devel mailing list