]> git.sur5r.net Git - glabels/blob - glabels2/src/view-object.h
Initial revision
[glabels] / glabels2 / src / view-object.h
1 /*
2  *  (GLABELS) Label and Business Card Creation program for GNOME
3  *
4  *  view_object.h:  GLabels canvas item wrapper widget
5  *
6  *  Copyright (C) 2001-2002  Jim Evins <evins@snaught.com>.
7  *
8  *  This program is free software; you can redistribute it and/or modify
9  *  it under the terms of the GNU General Public License as published by
10  *  the Free Software Foundation; either version 2 of the License, or
11  *  (at your option) any later version.
12  *
13  *  This program is distributed in the hope that it will be useful,
14  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16  *  GNU General Public License for more details.
17  *
18  *  You should have received a copy of the GNU General Public License
19  *  along with this program; if not, write to the Free Software
20  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
21  */
22
23 #ifndef __VIEW_OBJECT_H__
24 #define __VIEW_OBJECT_H__
25
26 #include <glib-object.h>
27 #include <gnome.h>
28 #include "label-object.h"
29
30 G_BEGIN_DECLS
31
32
33 #define GL_TYPE_VIEW_OBJECT            (gl_view_object_get_type ())
34 #define GL_VIEW_OBJECT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GL_TYPE_VIEW_OBJECT, glViewObject))
35 #define GL_VIEW_OBJECT_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GL_TYPE_VIEW_OBJECT, glViewObjectClass))
36 #define GL_IS_VIEW_OBJECT(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GL_TYPE_VIEW_OBJECT))
37 #define GL_IS_VIEW_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GL_TYPE_VIEW_OBJECT))
38
39 typedef struct _glViewObject          glViewObject;
40 typedef struct _glViewObjectClass     glViewObjectClass;
41
42 typedef struct _glViewObjectPrivate   glViewObjectPrivate;
43
44
45 #include "view.h"
46 #include "view-highlight.h"
47
48 struct _glViewObject {
49         GObject              parent_object;
50
51         glViewObjectPrivate  *private;
52 };
53
54 struct _glViewObjectClass {
55         GObjectClass         parent_class;
56 };
57
58 extern GType     gl_view_object_get_type       (void);
59
60 extern GObject  *gl_view_object_new            (void);
61
62 extern void      gl_view_object_set_view       (glViewObject *view_object,
63                                                 glView *view);
64 extern void      gl_view_object_set_object     (glViewObject *view_object,
65                                                 glLabelObject *object,
66                                                 glViewHighlightStyle style);
67 extern void      gl_view_object_set_dialog     (glViewObject *view_object,
68                                                 GtkWidget *dialog);
69
70 extern glView          *gl_view_object_get_view   (glViewObject *view_object);
71 extern glLabelObject   *gl_view_object_get_object (glViewObject *view_object);
72 extern GnomeCanvasItem *gl_view_object_get_group  (glViewObject *view_object);
73 extern GtkMenu         *gl_view_object_get_menu   (glViewObject *view_object);
74
75 extern void      gl_view_object_update_highlight  (glViewObject *view_object);
76 extern void      gl_view_object_show_highlight    (glViewObject *view_object);
77 extern void      gl_view_object_hide_highlight    (glViewObject *view_object);
78
79 extern void      gl_view_object_show_dialog       (glViewObject *view_object);
80
81 extern void      gl_view_object_select            (glViewObject *view_object);
82
83 G_END_DECLS
84
85 #endif /* __VIEW_OBJECT_H__ */