* plugins/project-wizard/templates/terminal.wiz,
[anjuta-git-plugin.git] / plugins / class-inheritance / plugin.h
blob436dd65ad6bfb659059bea9471190f365267e865
1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
2 /*
3 * plugin.h
4 * Copyright (C) Massimo Cora' 2005 <maxcvs@email.it>
5 *
6 * plugin.h is free software.
7 *
8 * You may redistribute it and/or modify it under the terms of the
9 * GNU General Public License, as published by the Free Software
10 * Foundation; either version 2, or (at your option) any later version.
12 * plugin.h is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15 * See the GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with plugin.h. See the file "COPYING". If not,
19 * write to: The Free Software Foundation, Inc.,
20 * 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301, USA.
24 #ifndef _CLASS_INHERITANCE_H_
25 #define _CLASS_INHERITANCE_H_
27 #include <libanjuta/anjuta-plugin.h>
29 #include <gvc.h> /* graphviz */
31 G_BEGIN_DECLS
33 extern GType class_inheritance_get_type (GTypeModule *module);
34 #define ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE (class_inheritance_get_type (NULL))
35 #define ANJUTA_PLUGIN_CLASS_INHERITANCE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE, AnjutaClassInheritance))
36 #define ANJUTA_PLUGIN_CLASS_INHERITANCE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE, AnjutaClassInheritanceClass))
37 #define ANJUTA_IS_PLUGIN_CLASS_INHERITANCE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE))
38 #define ANJUTA_IS_PLUGIN_CLASS_INHERITANCE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE))
39 #define ANJUTA_PLUGIN_CLASS_INHERITANCE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), ANJUTA_TYPE_PLUGIN_CLASS_INHERITANCE, AnjutaClassInheritanceClass))
42 typedef struct _AnjutaClassInheritance AnjutaClassInheritance;
43 typedef struct _AnjutaClassInheritanceClass AnjutaClassInheritanceClass;
45 struct _AnjutaClassInheritance {
46 AnjutaPlugin parent;
48 GtkWidget *widget; /* a vbox */
49 GtkWidget *update_button;
50 GtkWidget *menu;
51 GtkWidget *update;
53 GtkWidget *canvas;
54 GList *drawable_list; /* GnomeCanvasItem* list. Edges, arrows and texts */
55 GList *node_list; /* NodeData* list */
57 GHashTable *expansion_node_list; /* expansion_status for the nodes */
59 /* graphviz stuff */
60 GVC_t *gvc;
61 Agraph_t *graph;
63 gchar *top_dir;
64 guint root_watch_id;
65 gint uiid;
68 struct _AnjutaClassInheritanceClass {
69 AnjutaPluginClass parent_class;
72 G_END_DECLS
74 #endif