summaryrefslogtreecommitdiff
path: root/eel/eel-canvas-rect-ellipse.h
diff options
context:
space:
mode:
Diffstat (limited to 'eel/eel-canvas-rect-ellipse.h')
-rw-r--r--eel/eel-canvas-rect-ellipse.h184
1 files changed, 184 insertions, 0 deletions
diff --git a/eel/eel-canvas-rect-ellipse.h b/eel/eel-canvas-rect-ellipse.h
new file mode 100644
index 00000000..06f1eeab
--- /dev/null
+++ b/eel/eel-canvas-rect-ellipse.h
@@ -0,0 +1,184 @@
+/*
+ * Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation
+ * All rights reserved.
+ *
+ * This file is part of the Mate Library.
+ *
+ * The Mate Library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * The Mate Library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with the Mate Library; see the file COPYING.LIB. If not,
+ * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+/*
+ @NOTATION@
+ */
+/* Rectangle and ellipse item types for EelCanvas widget
+ *
+ * EelCanvas is basically a port of the Tk toolkit's most excellent canvas widget. Tk is
+ * copyrighted by the Regents of the University of California, Sun Microsystems, and other parties.
+ *
+ *
+ * Author: Federico Mena <[email protected]>
+ */
+
+#ifndef EEL_CANVAS_RECT_ELLIPSE_H
+#define EEL_CANVAS_RECT_ELLIPSE_H
+
+
+#include <eel/eel-canvas.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+ /* Base class for rectangle and ellipse item types. These are defined by their top-left and
+ * bottom-right corners. Rectangles and ellipses share the following arguments:
+ *
+ * name type read/write description
+ * ------------------------------------------------------------------------------------------
+ * x1 double RW Leftmost coordinate of rectangle or ellipse
+ * y1 double RW Topmost coordinate of rectangle or ellipse
+ * x2 double RW Rightmost coordinate of rectangle or ellipse
+ * y2 double RW Bottommost coordinate of rectangle or ellipse
+ * fill_color string W X color specification for fill color,
+ * or NULL pointer for no color (transparent)
+ * fill_color_gdk GdkColor* RW Allocated GdkColor for fill
+ * outline_color string W X color specification for outline color,
+ * or NULL pointer for no color (transparent)
+ * outline_color_gdk GdkColor* RW Allocated GdkColor for outline
+ * fill_stipple GdkBitmap* RW Stipple pattern for fill
+ * outline_stipple GdkBitmap* RW Stipple pattern for outline
+ * width_pixels uint RW Width of the outline in pixels. The outline will
+ * not be scaled when the canvas zoom factor is changed.
+ * width_units double RW Width of the outline in canvas units. The outline
+ * will be scaled when the canvas zoom factor is changed.
+ */
+
+
+#define EEL_TYPE_CANVAS_RE (eel_canvas_re_get_type ())
+#define EEL_CANVAS_RE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_RE, EelCanvasRE))
+#define EEL_CANVAS_RE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
+#define EEL_IS_CANVAS_RE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_RE))
+#define EEL_IS_CANVAS_RE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RE))
+#define EEL_CANVAS_RE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
+
+
+ typedef struct _EelCanvasRE EelCanvasRE;
+ typedef struct _EelCanvasREClass EelCanvasREClass;
+
+ struct _EelCanvasRE
+ {
+ EelCanvasItem item;
+
+ GdkBitmap *fill_stipple; /* Stipple for fill */
+ GdkBitmap *outline_stipple; /* Stipple for outline */
+
+ GdkGC *fill_gc; /* GC for filling */
+ GdkGC *outline_gc; /* GC for outline */
+
+ gulong fill_pixel; /* Fill color */
+ gulong outline_pixel; /* Outline color */
+
+ double x1, y1, x2, y2; /* Corners of item */
+ double width; /* Outline width */
+
+ guint fill_color; /* Fill color, RGBA */
+ guint outline_color; /* Outline color, RGBA */
+
+ /* Configuration flags */
+
+ unsigned int fill_set : 1; /* Is fill color set? */
+ unsigned int outline_set : 1; /* Is outline color set? */
+ unsigned int width_pixels : 1; /* Is outline width specified in pixels or units? */
+ };
+
+ struct _EelCanvasREClass
+ {
+ EelCanvasItemClass parent_class;
+ };
+
+
+ /* Standard Gtk function */
+ GType eel_canvas_re_get_type (void) G_GNUC_CONST;
+
+
+ /* Rectangle item. No configurable or queryable arguments are available (use those in
+ * EelCanvasRE).
+ */
+
+
+#define EEL_TYPE_CANVAS_RECT (eel_canvas_rect_get_type ())
+#define EEL_CANVAS_RECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRect))
+#define EEL_CANVAS_RECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
+#define EEL_IS_CANVAS_RECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_RECT))
+#define EEL_IS_CANVAS_RECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RECT))
+#define EEL_CANVAS_RECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
+
+
+ typedef struct _EelCanvasRect EelCanvasRect;
+ typedef struct _EelCanvasRectPrivate EelCanvasRectPrivate;
+ typedef struct _EelCanvasRectClass EelCanvasRectClass;
+
+ struct _EelCanvasRect
+ {
+ EelCanvasRE re;
+ EelCanvasRectPrivate *priv;
+ };
+
+ struct _EelCanvasRectClass
+ {
+ EelCanvasREClass parent_class;
+ };
+
+
+ /* Standard Gtk function */
+ GType eel_canvas_rect_get_type (void) G_GNUC_CONST;
+
+
+ /* Ellipse item. No configurable or queryable arguments are available (use those in
+ * EelCanvasRE).
+ */
+
+
+#define EEL_TYPE_CANVAS_ELLIPSE (eel_canvas_ellipse_get_type ())
+#define EEL_CANVAS_ELLIPSE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipse))
+#define EEL_CANVAS_ELLIPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
+#define EEL_IS_CANVAS_ELLIPSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_ELLIPSE))
+#define EEL_IS_CANVAS_ELLIPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_ELLIPSE))
+#define EEL_CANVAS_ELLIPSE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
+
+
+ typedef struct _EelCanvasEllipse EelCanvasEllipse;
+ typedef struct _EelCanvasEllipseClass EelCanvasEllipseClass;
+
+ struct _EelCanvasEllipse
+ {
+ EelCanvasRE re;
+ };
+
+ struct _EelCanvasEllipseClass
+ {
+ EelCanvasREClass parent_class;
+ };
+
+
+ /* Standard Gtk function */
+ GType eel_canvas_ellipse_get_type (void) G_GNUC_CONST;
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif