Older blog entries for kz (starting at number 4)

Project gybe is getting on the right way, I suppose.

Subproject dominigue is hold now, and GTypeInterfaces representing each IDL interfaces from W3C DOM Recommendation disposed in subdirectory dom under gybe cvs.

Now gybe will implement such interfaces with libxml, libcroco and GTK+. I've already tried a little bit of them, writing code of gybe is not rocket-science.

But considering all the possibility (even that I never know) from relative libraries and a bunch of W3C Recommendations is almost brain-melting challenge.

Applying CSS box model to GTK+

Among all the properties in CSS box model,

  • only GtkBorder is present in GTK.
  • property padding is on list of TODO, AFAIK.
  • property margin is missing 'til this time.

GtkAlignment was said to implement padding. Why not GtkContainer?

GtkContainer has ::set_border_width API. But the argument is not a GtkBorder but a integer. ::set_border with GtkBorder must implemented.

24 Apr 2003 (updated 24 Apr 2003 at 07:05 UTC) »
How to give a good appearance to widgets in gybe?

One of idea is to build GtkStyle from CSS text and set the style to a widget. GtkStyle possible created by a GtkRcStyle, and I don't know how to make a good GtkRcStyle, yet. GtkRcStyle itself should contain all the properties of CSS text.

libcroco the SAC implementation may be the parser of CSS to RC.

How to sync between two (int) variables, NodeList::length and xmlNodeSet::nodeNr?

19 Apr 2003 (updated 24 Apr 2003 at 07:03 UTC) »

Build breakage of dominigue vanished; was typo on copy-and-pasting ..._finalize() code from characterdata.c to nodelist.c. cwryu notified me.

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!