Version 0.14.0

Arjan Molenaar

Abstract

This is the DiaCanvas2 reference manual. It contains information about how to use the DiaCanvas2. This documentation is written for people who want to start programming with DiaCanvas2.

In The Canvas the canvas model is discussed. In Linear Constraint Solver the usage and rationale behind the DiaSolver class is explained. The solver is used to keep connections between objects true. The third chapter tells you about some standard objects. Visualization is explained in Visualization and Interaction. A view will allow you to display the (abstract) contents of a DiaCanvas in a window. This will also tell you something about the default behavior of the canvas(-views). The last chapter discusses some functions for determining distances and intersections of points, lines and rectangles.


Table of Contents

The Canvas
DiaCanvas - Class that holds the canvas model.
DiaCanvasGroupable - Interface for groupable classes.
DiaCanvasEditable - Interface for editable classes.
DiaCanvasItem - Base class for objects placed in a DiaCanvas.
DiaCanvasGroup - Holds a set of DiaCanvasItem's.
DiaShape - Shapes define the look of an object.
DiaHandle - Handles are used to modify objects on the canvas.
DiaUndoManager - Interface for undo/redo functionality in DiaCanvas
Exporting -
Linear Constraint Solver
DiaStrength - Strength for DiaVariable's.
DiaVariable - Variable value objects used by DiaSolver.
DiaExpression - A linear expression, part of a DiaConstraint.
DiaConstraint - Constraints used by the DiaSolver.
DiaSolver - A linear constraint solver.
Standard objects
DiaCanvasLine - Line object.
DiaCanvasElement - Abstract class for element like objects.
DiaCanvasBox - A rectangle shape.
DiaCanvasImage - Creates an image element.
DiaCanvasText - Creates an editable text element on the canvas.
Visualization and Interaction
DiaCanvasView - Create a view of a DiaCanvas model.
DiaCanvasViewItem - Object that contains the visual representation of a DiaCanvasItem.
Tools - Tools are used to add behavior to a canvas view.
DiaHandleLayer - Special class used by DiaCanvasView to visualize handles.
DiaShape functions for LibArt rendering - Shape renderer for the anti-alias canvas.
DiaShape functions for X11 rendering - Shape renderer for the X11 based canvas.
DiaCanvas2 Geometric Functions
DiaGeometry - Stuff with points and rectangles.
Python bindings
Creating canvas items in Python

List of Figures

1. UML model of the DiaCanvas model
1. UML model of the DiaSolver
1. A line
2. Arrow head
3. A box element
1. UML model of the DiaCanvasView

List of Examples

1. Undo example from dia-canvas-line.c