ftp://ftp.redhat.com/pub/redhat/linux/rawhide/SRPMS/SRPMS/gnome-vfs2-2.3.8-1.src.rpm
[gnome-vfs-httpcaptive.git] / libgnomevfs / gnome-vfs-mime-monitor.h
1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*-
2
3    gnome-vfs-mime-monitor.h: Class for noticing changes in MIME data.
4  
5    Copyright (C) 2000 Eazel, Inc.
6   
7    This program is free software; you can redistribute it and/or
8    modify it under the terms of the GNU General Public License as
9    published by the Free Software Foundation; either version 2 of the
10    License, or (at your option) any later version.
11   
12    This program 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.  See the GNU
15    General Public License for more details.
16   
17    You should have received a copy of the GNU General Public
18    License along with this program; if not, write to the
19    Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20    Boston, MA 02111-1307, USA.
21   
22    Author: John Sullivan <sullivan@eazel.com>
23 */
24
25 #ifndef GNOME_VFS_MIME_MONITOR_H
26 #define GNOME_VFS_MIME_MONITOR_H
27
28 #include <glib-object.h>
29
30 G_BEGIN_DECLS
31
32 #define GNOME_VFS_MIME_MONITOR_TYPE        (gnome_vfs_mime_monitor_get_type ())
33 #define GNOME_VFS_MIME_MONITOR(o)          (G_TYPE_CHECK_INSTANCE_CAST ((o), GNOME_VFS_MIME_MONITOR_TYPE, GnomeVFSMIMEMonitor))
34 #define GNOME_VFS_MIME_MONITOR_CLASS(k)    (G_TYPE_CHECK_CLASS_CAST((k), GNOME_VFS_MIME_MONITOR_TYPE, GnomeVFSMIMEMonitorClass))
35 #define GNOME_VFS_IS_MIME_MONITOR(o)       (G_TYPE_CHECK_INSTANCE_TYPE ((o), GNOME_VFS_MIME_MONITOR_TYPE))
36 #define GNOME_VFS_IS_MIME_MONITOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GNOME_VFS_MIME_MONITOR_TYPE))
37
38 typedef struct _GnomeVFSMIMEMonitorPrivate GnomeVFSMIMEMonitorPrivate;
39
40 typedef struct {
41         GObject object;
42
43         GnomeVFSMIMEMonitorPrivate *priv;
44 } GnomeVFSMIMEMonitor;
45
46 typedef struct {
47         GObjectClass parent_class;
48
49         /* signals */
50         void (*data_changed) (GnomeVFSMIMEMonitor *monitor);
51 } GnomeVFSMIMEMonitorClass;
52
53 GType                gnome_vfs_mime_monitor_get_type (void);
54
55 /* There's a single GnomeVFSMIMEMonitor object.
56  * The only thing you need it for is to connect to its signals.
57  */
58 GnomeVFSMIMEMonitor *gnome_vfs_mime_monitor_get      (void);
59
60 G_END_DECLS
61
62 #endif /* GNOME_VFS_MIME_MONITOR_H */