1 /* Dia -- an diagram creation/manipulation program
2 * Copyright (C) 2001 Lars Clausen
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 /** This file contains user_data structures for creating the non-trivial
20 standard objects (polylines & polygons).
23 #ifndef STANDARD_OBJECT_CREATE_H
24 #define STANDARD_OBJECT_CREATE_H
28 /** \brief Can be used as extra parameter at create. Usually discouraged, you can set via StdProp API */
29 struct _MultipointCreateData
{
30 int num_points
; /**< count */
31 Point
*points
; /**< data */
34 /** \brief Can be used as extra parameter at create. Usually discouraged, you can set via StdProp API */
35 struct _BezierCreateData
{
36 int num_points
; /**< count */
37 BezPoint
*points
; /**< data */
40 /** Create a text object for the diagram.
41 * @param xpos X position (in cm from the origo) of the object.
42 * @param ypos Y position (in cm from the origo) of the object.
46 create_standard_text(real xpos
, real ypos
);
48 create_standard_ellipse(real xpos
, real ypos
, real width
, real height
);
50 create_standard_box(real xpos
, real ypos
, real width
, real height
);
52 create_standard_polyline(int num_points
, Point
*points
,
53 Arrow
*end_arrow
, Arrow
*start_arrow
);
55 create_standard_polygon(int num_points
, Point
*points
);
57 create_standard_bezierline(int num_points
, BezPoint
*points
,
58 Arrow
*end_arrow
, Arrow
*start_arrow
);
60 create_standard_beziergon(int num_points
, BezPoint
*points
);
62 create_standard_arc(real x1
, real y1
, real x2
, real y2
,
64 Arrow
*end_arrow
, Arrow
*start_arrow
);
66 create_standard_image(real xpos
, real ypos
, real width
, real height
,
69 create_standard_group(GList
*items
);