Code

Hold perspectives on document level rather than globally; this corrects the changes...
[inkscape.git] / src / widgets / gradient-vector.h
1 #ifndef __SP_GRADIENT_VECTOR_H__
2 #define __SP_GRADIENT_VECTOR_H__
4 /*
5  * Gradient vector selection widget
6  *
7  * Author:
8  *   Lauris Kaplinski <lauris@kaplinski.com>
9  *
10  * Copyright (C) 2001-2002 Lauris Kaplinski
11  * Copyright (C) 2001 Ximian, Inc.
12  *
13  * Released under GNU GPL, read the file 'COPYING' for more information
14  */
16 #include <glib.h>
18 #include <sigc++/connection.h>
20 #include <gtk/gtkvbox.h>
21 #include "../forward.h"
23 #define SP_TYPE_GRADIENT_VECTOR_SELECTOR (sp_gradient_vector_selector_get_type ())
24 #define SP_GRADIENT_VECTOR_SELECTOR(o) (GTK_CHECK_CAST ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelector))
25 #define SP_GRADIENT_VECTOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_CAST ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR, SPGradientVectorSelectorClass))
26 #define SP_IS_GRADIENT_VECTOR_SELECTOR(o) (GTK_CHECK_TYPE ((o), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
27 #define SP_IS_GRADIENT_VECTOR_SELECTOR_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), SP_TYPE_GRADIENT_VECTOR_SELECTOR))
29 struct SPGradientVectorSelector {
30         GtkVBox vbox;
32         guint idlabel : 1;
34         SPDocument *doc;
35         SPGradient *gr;
37         /* Vector menu */
38         GtkWidget *menu;
40         sigc::connection gradient_release_connection;
41         sigc::connection defs_release_connection;
42         sigc::connection defs_modified_connection;
43 };
45 struct SPGradientVectorSelectorClass {
46         GtkVBoxClass parent_class;
48         void (* vector_set) (SPGradientVectorSelector *gvs, SPGradient *gr);
49 };
51 GtkType sp_gradient_vector_selector_get_type (void);
53 GtkWidget *sp_gradient_vector_selector_new (SPDocument *doc, SPGradient *gradient);
55 void sp_gradient_vector_selector_set_gradient (SPGradientVectorSelector *gvs, SPDocument *doc, SPGradient *gr);
57 SPDocument *sp_gradient_vector_selector_get_document (SPGradientVectorSelector *gvs);
58 SPGradient *sp_gradient_vector_selector_get_gradient (SPGradientVectorSelector *gvs);
60 /* fixme: rethink this (Lauris) */
61 GtkWidget *sp_gradient_vector_editor_new (SPGradient *gradient, SPStop *stop = NULL);
65 #endif