Travelling Band/Back

finally, back at home after FOSDEM 2008. the last leg of the trip back from Bruxelles has been exceptionally longer because the London Metropolitan Network on weekends is, apparently, made of fail.

the Clutter talk on saturday went, in my opinion, quite well; lots of people listened to my ramblings and watched my simple slide show. about the talk: it was my first with a slightly modified Lessig method approach and I have to say that it’s been a very satisfactory experience – nonetheless because it removes the need to put slides online, which I never end up doing anyway ((I’ve got a git repository with the small application I wrote to give the talk with, so if you want it you can always ask me for the URL to clone)).

Helm, set a course… for love

a GNOME cruise? I already have the theme song…

GNOME-Love Boat, love exciting and new,
Come aboard, we're expecting you.

The GNOME-Love Boat soon will be making another release,
The GNOME-Love Boat promises something for everyone.

Set a course for adventure,
Your box's on a new romance.

And GNOME-Love
Won't hurt anymore,
It's an open source,
On a userfriendly shore.

it's GNOME-Love
Welcome aboard it's GNOME-love


I’ve just sent this to the Clutter mailing list, but I guess that more exposure is fine

as some of you might already know, we have started working on a reference “toolkit” based on Clutter called Tidy.

Tidy is a simple library containing some useful actors and interfaces which can be used by applications developers; it aims to be simple and yet provide some high-level classes that Clutter won’t provide.

it is by no mean complete, or aiming to replace other toolkits; you can think of it as a reference implementation for a toolkit based on Clutter.

Tidy works as a standalone toolkit, but it can also be used as a copy-and-paste repository, like libegg for the gtk+ stack; because of this, it doesn’t provide any kind of API or ABI guarantee, and it probably won’t be released in form of tarballs. it can be seen as a constant work in progress.

right now, Tidy is composed of these classes:

  • TidyActor – a base actor class, implementing stylable actors, with padding and alignment
  • TidyButton – a simple button class
  • TidyFrame – a container capable of aligning its only child
  • TidyListView – a list view using ClutterModel to introspect its structure and contents
    • TidyCellRenderer – base cell renderer class
    • TidyCellRendererDefault – default cell renderer
    • TidyListColumn – base column class
    • TidyListColumnDefault – default column
  • TidyTextureFrame – a texture that efficiently clones a background image so that it can stretch the entire size allocation
  • TidyProxyTexture – a texture class that efficiently caches the source file
    • TidyTextureCache – a cache for textures loaded from on-disk data
  • TidyTextureReflection – an actor using GL to compute a reflection of the parent texture (imported from the toys)
  • TidyStylable – base interface for stylable objects
    • TidyStyle – storage class for a style
  • TidyScrollable – base interface for scrollable actors
    • TidyAdjustment – object for clamping a value between two boundaries (with quantum increments support)
    • TidyScrollBar – scroll bar actor controlling an adjustment
    • TidyViewport – scrollable viewport controlled by a pair of adjustments

Update@2008-02-07T10:01Z: after this announcement, Chris added two new actors:

  • TidyScrollView – a viewport with scoll bars
  • TidyFingerScroll – a viewport with kinetic scrolling

Plus a lot of bug fixes.

there are examples for basically every class and functionality under the tests/ directory.

since everybody want screencasts these days:

this is still in the prototyping stage; meaning: if it breaks (and it will break) you get to keep both the pieces. also, there are rough edges and missing functionality. we’ll keep working on it and adding new classes between now and Clutter 0.6 (and after), and also use Tidy as a testing ground for Clutter functionality and staging ground for actors/data structures/interfaces.

you can check out Tidy from SVN using:

  svn co tidy

or browse the repository from your web browser via: (raw) (viewcvs)

in other, Clutter-related news:

  • Iain has been working on a Clutter and WebKit-based browser actor; you’ll find a very cool screencast of it on Iain’s blog.
  • In Clutter trunk we landed initial support for FBOs and we’re fixing bugs/updating bindings/updating documentation toward the 0.6.0 release.
  • It’s a bit old, but I’ve been updating the Vala bindings for Clutter and Clutter-GTK, so you can now use all the bling with Vala; you’ll need Vala trunk, but it’s worth it.