summaryrefslogtreecommitdiffstats
path: root/src/dialogs/sp-attribute-widget.h
diff options
context:
space:
mode:
authorMenTaLguY <mental@rydia.net>2006-01-16 02:36:01 +0000
committermental <mental@users.sourceforge.net>2006-01-16 02:36:01 +0000
commit179fa413b047bede6e32109e2ce82437c5fb8d34 (patch)
treea5a6ac2c1708bd02288fbd8edb2ff500ff2e0916 /src/dialogs/sp-attribute-widget.h
downloadinkscape-179fa413b047bede6e32109e2ce82437c5fb8d34.tar.gz
inkscape-179fa413b047bede6e32109e2ce82437c5fb8d34.zip
moving trunk for module inkscape
(bzr r1)
Diffstat (limited to 'src/dialogs/sp-attribute-widget.h')
-rw-r--r--src/dialogs/sp-attribute-widget.h128
1 files changed, 128 insertions, 0 deletions
diff --git a/src/dialogs/sp-attribute-widget.h b/src/dialogs/sp-attribute-widget.h
new file mode 100644
index 000000000..d5b2075ce
--- /dev/null
+++ b/src/dialogs/sp-attribute-widget.h
@@ -0,0 +1,128 @@
+#ifndef __SP_ATTRIBUTE_WIDGET_H__
+#define __SP_ATTRIBUTE_WIDGET_H__
+
+/**
+ * \brief SPAttributeWidget
+ *
+ * Widget, that listens and modifies repr attributes
+ *
+ * Authors:
+ * Lauris Kaplinski <lauris@kaplinski.com>
+ *
+ * Copyright (C) 2002 authors
+ * Copyright (C) 2001 Ximian, Inc.
+ *
+ * Licensed under GNU GPL, read the file 'COPYING' for more information
+ */
+
+#include <glib.h>
+
+
+
+#define SP_TYPE_ATTRIBUTE_WIDGET (sp_attribute_widget_get_type ())
+#define SP_ATTRIBUTE_WIDGET(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidget))
+#define SP_ATTRIBUTE_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_WIDGET, SPAttributeWidgetClass))
+#define SP_IS_ATTRIBUTE_WIDGET(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_ATTRIBUTE_WIDGET))
+#define SP_IS_ATTRIBUTE_WIDGET_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_WIDGET))
+
+#define SP_TYPE_ATTRIBUTE_TABLE (sp_attribute_table_get_type ())
+#define SP_ATTRIBUTE_TABLE(obj) (GTK_CHECK_CAST ((obj), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTable))
+#define SP_ATTRIBUTE_TABLE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), SP_TYPE_ATTRIBUTE_TABLE, SPAttributeTableClass))
+#define SP_IS_ATTRIBUTE_TABLE(obj) (GTK_CHECK_TYPE ((obj), SP_TYPE_ATTRIBUTE_TABLE))
+#define SP_IS_ATTRIBUTE_TABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), SP_TYPE_ATTRIBUTE_TABLE))
+
+namespace Inkscape {
+namespace XML {
+class Node;
+}
+}
+
+
+struct SPAttributeWidget;
+struct SPAttributeWidgetClass;
+
+struct SPAttributeTable;
+struct SPAttributeTableClass;
+
+#include <gtk/gtkentry.h>
+#include <gtk/gtkvbox.h>
+
+#include <forward.h>
+
+struct SPAttributeWidget {
+ GtkEntry entry;
+ guint blocked : 1;
+ guint hasobj : 1;
+ union {
+ SPObject *object;
+ Inkscape::XML::Node *repr;
+ } src;
+ gchar *attribute;
+};
+
+struct SPAttributeWidgetClass {
+ GtkEntryClass entry_class;
+};
+
+GtkType sp_attribute_widget_get_type (void);
+
+GtkWidget *sp_attribute_widget_new (SPObject *object, const gchar *attribute);
+GtkWidget *sp_attribute_widget_new_repr (Inkscape::XML::Node *repr, const gchar *attribute);
+
+void sp_attribute_widget_set_object ( SPAttributeWidget *spw,
+ SPObject *object,
+ const gchar *attribute );
+void sp_attribute_widget_set_repr ( SPAttributeWidget *spw,
+ Inkscape::XML::Node *repr,
+ const gchar *attribute );
+
+/* SPAttributeTable */
+
+struct SPAttributeTable {
+ GtkVBox vbox;
+ guint blocked : 1;
+ guint hasobj : 1;
+ GtkWidget *table;
+ union {
+ SPObject *object;
+ Inkscape::XML::Node *repr;
+ } src;
+ gint num_attr;
+ gchar **attributes;
+ GtkWidget **entries;
+};
+
+struct SPAttributeTableClass {
+ GtkEntryClass entry_class;
+};
+
+GtkType sp_attribute_table_get_type (void);
+
+GtkWidget *sp_attribute_table_new ( SPObject *object, gint num_attr,
+ const gchar **labels,
+ const gchar **attributes );
+GtkWidget *sp_attribute_table_new_repr ( Inkscape::XML::Node *repr, gint num_attr,
+ const gchar **labels,
+ const gchar **attributes );
+void sp_attribute_table_set_object ( SPAttributeTable *spw,
+ SPObject *object, gint num_attr,
+ const gchar **labels,
+ const gchar **attrs );
+void sp_attribute_table_set_repr ( SPAttributeTable *spw,
+ Inkscape::XML::Node *repr, gint num_attr,
+ const gchar **labels,
+ const gchar **attrs );
+
+
+#endif
+
+/*
+ Local Variables:
+ mode:c++
+ c-file-style:"stroustrup"
+ c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
+ indent-tabs-mode:nil
+ fill-column:99
+ End:
+*/
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :