-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME
59 lines (44 loc) · 2.19 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
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.)