Re: canvas notes [zoom dependent container]
- From: Øyvind Kolås <islewind gmail com>
- To: Arjan Molenaar <a molenaar yirdis nl>
- Cc: gtk-devel-list gnome org, Havoc Pennington <hp redhat com>, Alexander Larsson <alexl redhat com>, Soeren Sandmann <sandmann daimi au dk>
- Subject: Re: canvas notes [zoom dependent container]
- Date: Thu, 8 Sep 2005 09:30:13 +0200
On 8/23/05, Arjan Molenaar <a molenaar yirdis nl> wrote:
> Quoting Alexander Larsson <alexl redhat com>:
> > On Mon, 2005-08-15 at 20:06 +0200, Soeren Sandmann wrote:
> >> Havoc Pennington <hp redhat com> writes:
> >>
> >> > So random thoughts.
> >>
> >> A few more random thoughts:
> >>
> >> - Zooming is more than just setting a transformation matrix because
> >> the reason you want to zoom is to see more details. So somehow a
> >> model needs to be aware of how much detail should be drawn.
> >>
> > Text is extra tricky here. Do you want zooming to show you more text, or
> > do you want it to make the font larger. Even if you choose to just make
> > the font larger the text object won't scale linearly with the
> > magnification, because of font hinting etc. I guess you could avoid this
> > by always rendering text unhinted, ...
>
> You can not simply favour one over the other. I guess an application like
> Nautilus would benefit from the first option (show more text), while Dia (or
> Gaphor) would benefit from the second: ...
When playing around with some zoomable canvas prototypes using cairo
earlier, I created a canvas container element that acted as a switch.
At one zoom level it was showing one set of children, and when zoomed
beyond a defined threshold it alternate children were shown.
This way of doing things allows a progressive revealing of the interface:
Tiny icon ->
Icon ->
Icon with text ->
Tiny icon with label as title with basic controls ->
Tiny icon with label as title with basic controls and advanced controls ->
All of the above with additional debug information ;-]
One further extension to make this more usable (apart from excessive
use) would be to allow defining transitions between the two sets of
children.
/pippin
--
«The future is already here. It's just not very evenly distributed»
-- William Gibson
http://pippin.gimp.org/ http://ffii.org/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]