[Tickit-dev] Released Tickit 0.09

Paul LeoNerd Evans leonerd at leonerd.org.uk
Sat Aug 13 15:46:08 BST 2011


Just uploaded Tickit 0.09.

A summary of important changes:

 * Move IO::Async-based code out of Tickit into Tickit::Async,
   reimplement a simple IO framework in Tickit itself.

   This means that anyone wanting to use Tickit with IO::Async now has
   to use the Tickit::Async subclass, which looks like a Notifier, to be
   added to a Loop like any other. The Tickit interface is otherwise
   identical. Tickit::Async has existed since 0.07, and Tickit 0.08
   printed a warning if the plan Tickit class was used as an
   IO::Async::Notifier anyway, so this should come as no great surprise.

   My intention is to release a Tickit-Async 0.09 standalone distribution
   and remove Tickit::Async from the Tickit 0.10 distribution when it is
   released.

 * Added Window on_expose event that cascades down the Window tree

 * Implement Widget drawing using Window on_expose events rather than
   cascading logic down the Widget tree

   See below.

-----

From the previous email, the following plans are now implemented:

>  * Give Window an 'on_expose' event, which passes a region.
> 
>  * Since Window keeps a list of all its child windows, to pass mouse
>    events down the window chain, it will be able to pass an on_expose
>    into all the appropriate child windows as well.
> 
>  * Have the Widget that owns a Window hook the 'on_expose' event, and
>    use it to call the render method passing in the region hints.
> 
>  * Use this new expose event chain as the primary way that Widgets get
>    redrawn, retiring the current redraw logic.

These are all done.

This leaves the following still to be done:

>  * Allow Windows to be constructed that aren't just subregions of their
>    parents; clip drawing operations off the boundaries.
> 
>  * Consider how to build layered windows; child windows that obscure
>    content from their parent. Possibly allow floating pop-up windows,
>    for menus and so on.

-- 
Paul "LeoNerd" Evans

leonerd at leonerd.org.uk
ICQ# 4135350       |  Registered Linux# 179460
http://www.leonerd.org.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: Digital signature
URL: <http://mail.leonerd.org.uk/pipermail/tickit-dev/attachments/20110813/dd55f356/attachment.pgp>


More information about the Tickit-dev mailing list