Code

63cabdd5b96ee17a4f067c5cb98c96e1f714b4a4
[inkscape.git] / src / flood-context.h
1 #ifndef __SP_FLOOD_CONTEXT_H__
2 #define __SP_FLOOD_CONTEXT_H__
4 /*
5  * Flood fill drawing context
6  *
7  * Authors:
8  *   Lauris Kaplinski <lauris@kaplinski.com>
9  *   John Bintz <jcoswell@coswellproductions.org>
10  *
11  * Released under GNU GPL
12  */
14 #include <sigc++/sigc++.h>
15 #include <gtk/gtk.h>
16 #include "event-context.h"
17 struct SPKnotHolder;
19 #define SP_TYPE_FLOOD_CONTEXT            (sp_flood_context_get_type ())
20 #define SP_FLOOD_CONTEXT(obj)            (GTK_CHECK_CAST ((obj), SP_TYPE_FLOOD_CONTEXT, SPFloodContext))
21 #define SP_FLOOD_CONTEXT_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_FLOOD_CONTEXT, SPFloodContextClass))
22 #define SP_IS_FLOOD_CONTEXT(obj)         (GTK_CHECK_TYPE ((obj), SP_TYPE_FLOOD_CONTEXT))
23 #define SP_IS_FLOOD_CONTEXT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_FLOOD_CONTEXT))
25 #define FLOOD_COLOR_CHANNEL_R 1
26 #define FLOOD_COLOR_CHANNEL_G 2
27 #define FLOOD_COLOR_CHANNEL_B 4
28 #define FLOOD_COLOR_CHANNEL_A 8
30 class SPFloodContext;
31 class SPFloodContextClass;
33 struct SPFloodContext : public SPEventContext {
34         SPItem *item;
36         sigc::connection sel_changed_connection;
38         Inkscape::MessageContext *_message_context;
39 };
41 struct SPFloodContextClass {
42         SPEventContextClass parent_class;
43 };
45 /* Standard Gtk function */
47 GtkType sp_flood_context_get_type (void);
49 GList* flood_channels_dropdown_items_list (void);
50 void flood_channels_changed(GtkComboBox *cbox, GtkWidget *tbl);
52 #endif