Code

Added code to initialize DBus (if enabled.)
[inkscape.git] / src / extension / dbus / application-interface.h
1 #ifndef INKSCAPE_EXTENSION_APPLICATION_INTERFACE_H_
2 #define INKSCAPE_EXTENSION_APPLICATION_INTERFACE_H_
4 #include <glib.h>
5 #include <dbus/dbus-glib.h>
6 #include <dbus/dbus-glib-bindings.h>
7 #include <dbus/dbus-glib-lowlevel.h>
9 #define DBUS_APPLICATION_INTERFACE_PATH  "/org/inkscape/application"
10         
11 #define TYPE_APPLICATION_INTERFACE            (application_interface_get_type ())
12 #define APPLICATION_INTERFACE(object)         (G_TYPE_CHECK_INSTANCE_CAST ((object), TYPE_APPLICATION_INTERFACE, ApplicationInterface))
13 #define APPLICATION_INTERFACE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_APPLICATION_INTERFACE, ApplicationInterfaceClass))
14 #define IS_APPLICATION_INTERFACE(object)      (G_TYPE_CHECK_INSTANCE_TYPE ((object), TYPE_APPLICATION_INTERFACE))
15 #define IS_APPLICATION_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_APPLICATION_INTERFACE))
16 #define APPLICATION_INTERFACE_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_APPLICATION_INTERFACE, ApplicationInterfaceClass))
18 G_BEGIN_DECLS
20 typedef struct _ApplicationInterface ApplicationInterface;
21 typedef struct _ApplicationInterfaceClass ApplicationInterfaceClass;
23 struct _ApplicationInterface {
24         GObject parent;
25 };
27 struct _ApplicationInterfaceClass {
28         GObjectClass parent;
29 };
31 /****************************************************************************
32      DESKTOP FUNCTIONS
33 ****************************************************************************/
35 gchar* 
36 application_interface_desktop_new (ApplicationInterface *object, 
37                                    GError **error);
39 gchar** 
40 application_interface_get_desktop_list (ApplicationInterface *object);
42 gchar* 
43 application_interface_get_active_desktop (ApplicationInterface *object, 
44                                           GError **error);
46 gboolean
47 application_interface_set_active_desktop (ApplicationInterface *object,
48                                           gchar* document_name, 
49                                           GError **error);
51 gboolean
52 application_interface_desktop_close_all (ApplicationInterface *object, 
53                                          GError **error);
55 gboolean
56 application_interface_exit (ApplicationInterface *object, GError **error);
58 /****************************************************************************
59      DOCUMENT FUNCTIONS
60 ****************************************************************************/
62 gchar* 
63 application_interface_document_new (ApplicationInterface *object, 
64                                     GError **error);
66 gchar** 
67 application_interface_get_document_list (ApplicationInterface *object);
69 gboolean
70 application_interface_document_close_all (ApplicationInterface *object,
71                                           GError **error);
74 /****************************************************************************
75      SETUP
76 ****************************************************************************/
78 ApplicationInterface *application_interface_new (void);
79 GType application_interface_get_type (void);
82 G_END_DECLS
84 #endif // INKSCAPE_EXTENSION_APPLICATION_INTERFACE_H_