1 /* gEDA - GPL Electronic Design Automation
2 * libgedacairo - Rendering gEDA schematics with Cairo
3 * Copyright (C) 2010-2019 gEDA Contributors (see ChangeLog for details)
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Library General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 #ifndef __EDA_CAIRO_H__
21 #define __EDA_CAIRO_H__
25 typedef enum _EdaCairoFlags EdaCairoFlags
;
28 EDA_CAIRO_ENABLE_HINTS
= 1,
31 void eda_cairo_set_source_color (cairo_t
*cr
, int color
, GArray
*map
);
33 void eda_cairo_line (cairo_t
*cr
, int flags
, int line_end
, double w_line_width
,
34 double w_x1
, double w_y1
, double w_x2
, double w_y2
);
36 void eda_cairo_box (cairo_t
*cr
, int flags
, double line_width
,
37 double x1
, double y1
, double x2
, double y2
);
39 void eda_cairo_center_box (cairo_t
*cr
, int flags
, double center_width
,
40 double line_width
, double x
, double y
,
41 double half_width
, double half_height
);
43 void eda_cairo_arc (cairo_t
*cr
, int flags
, double width
, double x
, double y
,
44 double radius
, double start_angle
, double sweep_angle
);
46 void eda_cairo_center_arc (cairo_t
*cr
, int flags
, double center_width
,
47 double line_width
, double x
, double y
,
48 double radius
, double start_angle
, double sweep_angle
);
50 void eda_cairo_stroke (cairo_t
*cr
, int flags
, int line_type
, int line_end
,
51 double wwidth
, double wlength
, double wspace
);
53 void eda_cairo_path (cairo_t
*cr
, int flags
, double line_width
, int nsections
,
54 PATH_SECTION
*sections
);
57 #endif /* !__EDA_CAIRO_H__ */