Skip to content

anderflash/goocanvas

Repository files navigation


			   Welcome to GooCanvas
                           ====================

	         (a cairo-based canvas widget for GTK+)

         GooCanvas Home Page : http://live.gnome.org/GooCanvas


GooCanvas is similar in many ways to GnomeCanvas and FooCanvas, but it uses
cairo for rendering.

NOTE: I am no longer actively developing GooCanvas, so no major new
features will be added (unless a new maintainer takes over). I'll still
try to fix any bugs that appear though, and may accept minor patches.

To build it run './configure' and 'make'. To run the demo cd into 'demo' and
run './demo'. (Or run ./simple-demo for the very simple demo, or ./mv-demo
for the model-view demo.)

Features:

 o Basic items - rect/ellipse/polyline/text/image/grid/group.
 o Path item, using SVG path specification strings.
 o 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.)
 o Embedded GTK+ widgets.
 o Layers/stacking order with raise/lower functions.
 o Affine transformations for all items - rotations/scales/skews.
 o Clip paths to support clipping items.
 o Event handling - button/motion events, "pointer-events" property like SVG.
 o Grabs - support for pointer & keyboard grabs.
 o Keyboard focus traversal.
 o Accessibility (item title & description properties and hierarchy stuff).
 o Printing (output to a given cairo_t).
 o Scrolling.
 o Zooming.
 o Static items that don't move as the canvas is scrolled or zoomed.
 o Tooltips.
 o Item visibility setting - on/off/above zoom threshold.
 o Simple animation.
 o Scalable - support for thousands of items over a large canvas area.
 o Support for different units - pixels/points/inches/millimeters.
 o API docs.

Features that may be removed in future to simplify the code:

 o Optional model/view split.
 o Uses interfaces for items & views.
 o Cascading styles - line width/style/dashes, colors, fill patterns.
   (The style properties will remain, but will not cascade.)


Damon Chaplin ([email protected])

(FooCanvas can be found in GNOME git repository in the 'foocanvas' module.
FooCanvas was based on GnomeCanvas, which is in the 'libgnomecanvas' module.)

Releases

No releases published

Packages

No packages published

Languages