1 #ifndef __SP_STAR_CONTEXT_H__
2 #define __SP_STAR_CONTEXT_H__
4 /*
5 * Star drawing context
6 *
7 * Authors:
8 * Mitsuru Oka <oka326@parkcity.ne.jp>
9 * Lauris Kaplinski <lauris@kaplinski.com>
10 *
11 * Copyright (C) 1999-2002 Lauris Kaplinski
12 * Copyright (C) 2001-2002 Mitsuru Oka
13 *
14 * Released under GNU GPL, read the file 'COPYING' for more information
15 */
17 #include <sigc++/sigc++.h>
18 #include "event-context.h"
19 #include "libnr/nr-point.h"
21 #define SP_TYPE_STAR_CONTEXT (sp_star_context_get_type ())
22 #define SP_STAR_CONTEXT(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_STAR_CONTEXT, SPStarContext))
23 #define SP_STAR_CONTEXT_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_STAR_CONTEXT, SPStarContextClass))
24 #define SP_IS_STAR_CONTEXT(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_STAR_CONTEXT))
25 #define SP_IS_STAR_CONTEXT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_STAR_CONTEXT))
27 class SPStarContext;
28 class SPStarContextClass;
30 struct SPStarContext : public SPEventContext {
31 SPItem *item;
32 Geom::Point center;
34 /* Number of corners */
35 gint magnitude;
36 /* Outer/inner radius ratio */
37 gdouble proportion;
38 /* flat sides or not? */
39 bool isflatsided;
40 /* rounded corners ratio */
41 gdouble rounded;
42 // randomization
43 gdouble randomized;
45 sigc::connection sel_changed_connection;
47 Inkscape::MessageContext *_message_context;
48 };
50 struct SPStarContextClass {
51 SPEventContextClass parent_class;
52 };
54 GtkType sp_star_context_get_type (void);
56 #endif