~ubuntu-branches/debian/squeeze/galeon/squeeze

1 by Mark Howard
Import upstream version 1.3.15
1
/*
2
 *  Copyright (C) 2000, 2001, 2002 Marco Pesenti Gritti
3
 *
4
 *  This program is free software; you can redistribute it and/or modify
5
 *  it under the terms of the GNU General Public License as published by
6
 *  the Free Software Foundation; either version 2, or (at your option)
7
 *  any later version.
8
 *
9
 *  This program is distributed in the hope that it will be useful,
10
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
 *  GNU General Public License for more details.
13
 *
14
 *  You should have received a copy of the GNU General Public License
15
 *  along with this program; if not, write to the Free Software
16
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17
 */
18
19
#ifndef GALEON_SIDEBAR_H
20
#define GALEON_SIDEBAR_H
21
22
#include <glib-object.h>
23
#include <glib.h>
24
#include <gtk/gtknotebook.h>
25
#include <gtk/gtkvbox.h>
26
	
27
G_BEGIN_DECLS
28
29
typedef struct GaleonSidebarClass GaleonSidebarClass;
30
31
#define GALEON_SIDEBAR_TYPE             (galeon_sidebar_get_type ())
32
#define GALEON_SIDEBAR(obj)             (GTK_CHECK_CAST ((obj), GALEON_SIDEBAR_TYPE, GaleonSidebar))
33
#define GALEON_SIDEBAR_CLASS(klass)     (GTK_CHECK_CLASS_CAST ((klass), GALEON_SIDEBAR_TYPE, GaleonSidebarClass))
34
#define IS_GALEON_SIDEBAR(obj)          (GTK_CHECK_TYPE ((obj), GALEON_SIDEBAR_TYPE))
35
#define IS_GALEON_SIDEBAR_CLASS(klass)  (GTK_CHECK_CLASS_TYPE ((klass), GALEON_SIDEBAR))
36
#define GALEON_SIDEBAR_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), GALEON_SIDEBAR_TYPE, GaleonSidebarClass))
37
38
typedef struct GaleonSidebar GaleonSidebar;
39
typedef struct GaleonSidebarPrivate GaleonSidebarPrivate;
40
41
struct GaleonSidebar 
42
{
43
        GtkVBox parent;
44
        GaleonSidebarPrivate *priv;
45
};
46
47
struct GaleonSidebarClass
48
{
49
        GtkVBoxClass parent_class;
50
51
	void (* close_requested) (GaleonSidebar *sidebar);
52
	
53
	void (* page_changed) (GaleonSidebar *sidebar,
54
			       const char *page_id);
55
	
56
	void (* remove_requested) (GaleonSidebar *sidebar,
57
			           const char *page_id);
58
};
59
60
GType          galeon_sidebar_get_type          (void);
61
62
GtkWidget     *galeon_sidebar_new	        (void);
63
64
void           galeon_sidebar_add_page	        (GaleonSidebar *sidebar,
65
					         const char *title,
66
					         const char *page_id,
67
						 gboolean can_remove);
68
69
gboolean       galeon_sidebar_remove_page	(GaleonSidebar *sidebar,
70
						 const char *page_id);
71
72
gboolean       galeon_sidebar_select_page 	(GaleonSidebar *sidebar,
73
			    			 const char *page_id);
74
75
void           galeon_sidebar_set_content       (GaleonSidebar *sidebar,
76
						 GObject *content);
77
78
79
G_END_DECLS
80
81
#endif
82