A new FB header is available for the library libgoocanvas. GooCanvas is a canvas widget for GTK+ that uses the cairo 2D library for drawing. Some features
- Optional model/view split.
- Uses interfaces for items and views.
- Basic items - rect/ellipse/polyline/text/image/grid/group.
- Path item, using SVG path specification strings.
- Table item for layout of other items (similar to the GtkTable widget). (This also supports items whose requested height changes according to their allocated width, such as text items.)
- Embedded GTK+ widgets.
- Layers/stacking order with raise/lower functions.
- Cascading styles - line width/style/dashes, colors, fill patterns.
- Affine transformations for all items - rotations/scales/skews.
- Event handling - button/motion events, "pointer-events" property like SVG.
- Grabs - support for pointer and keyboard grabs.
- Keyboard focus traversal.
- Accessibility (item title and description properties and hierarchy stuff).
- Printing (output to a given cairo_t).
- Static items that don't move as the canvas is scrolled or zoomed.
- Item visibility setting - on/off/above zoom threshold.
- Simple animation.
- Scalable - support for thousands of items over a large canvas area.
- Support for different units - pixels/points/inches/millimeters.
For details and binary download see original website.
Download FB part: goovanvas2.0.0 (GTK widget)
The archiv contains the new FB header and some FB examples, translated from C code from the original tarball.
Have fun, share your results!
To use this header you'll need a GTK installation that includes Cairo (since 2.16, recomended: 2.22) and the GTK-2.22.0_TJF.bi header from GladeToBac3.0.2.zip (ot later - some improvements have been done in gobject).
Edit: Hint added. Links added.