Re: gtk_widget_draw()



On Wed, 2010-08-18 at 12:10 -0400, Paul Davis wrote:
> On Wed, Aug 18, 2010 at 12:06 PM, Paul Davis <paul linuxaudiosystems com> wrote:
> 
>  sometimes i hate gmail keybindings ... so, to finish what i was saying ...
> 
> > in my mind,  a canvas does two things:
> >
> > 1) composites together the result of a variety of different objects
> > drawing themselves/ it does
> 
> this paying attention to the area of a window that needs to be redrawn
> according to external information (e.g. "expose" events) and the
> internal state of the canvas (e.g. invalidated state in something that
> is displayed within the window). the primary information required to
> do this is the extent of each object. most canvases would also take
> z-order stacking into account when ordering the redrawing, but this
> isn't actual critical to this basic model of what is happening.
> 
> > 2) event distribution
> 
> i.e. finding the correct object to deliver an event to in the first
> instance, and then propagating that to other objects until the event
> is handled according to some kind of logical rule or rules.
> 
> it seems to me that GTK (like some other toolkits) is increasingly
> converging on this model, without any specific awareness that this is
> likely where it all ends up.

Gtk+ has always followed this model though, it just now does it more
internally where it previously relied on some support from the windowing
system.

Generally people have a more detailed requirements when they call things
a canvas, like being able to view the object/hierarchies transformed,
and perhaps in multiple places.

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
 Alexander Larsson                                            Red Hat, Inc 
       alexl redhat com            alexander larsson gmail com 
He's a suave arachnophobic jungle king fleeing from a secret government 
programme. She's a warm-hearted nymphomaniac socialite with an MBA from 
Harvard. They fight crime! 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]