document-interface.h revision 9090603e08f72da58468db0e5b91f43ede35af26
/*
* This is where the implementation of the DBus based document API lives.
* All the methods in here (except in the helper section) are
* designed to be called remotly via DBus. application-interface.cpp
* has the methods used to connect to the bus and get a document instance.
*
* Documentation for these methods is in document-interface.xml
* which is the "gold standard" as to how the interface should work.
*
* Authors:
* Soren Berg <Glimmer07@gmail.com>
*
* Copyright (C) 2009 Soren Berg
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#include <glib.h>
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-bindings.h>
#include <dbus/dbus-glib-lowlevel.h>
// this is reguired so that giomm headers won't barf
#include "helper/action-context.h"
// TODO: this define doesn't seem to be used... although the path itself is also hardcoded in dbus-init.cpp
#define DBUS_DOCUMENT_INTERFACE_PATH "/org/inkscape/document"
#define TYPE_DOCUMENT_INTERFACE (document_interface_get_type ())
#define DOCUMENT_INTERFACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), TYPE_DOCUMENT_INTERFACE, DocumentInterface))
#define DOCUMENT_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DOCUMENT_INTERFACE, DocumentInterfaceClass))
#define IS_DOCUMENT_INTERFACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), TYPE_DOCUMENT_INTERFACE))
#define IS_DOCUMENT_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DOCUMENT_INTERFACE))
#define DOCUMENT_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DOCUMENT_INTERFACE, DocumentInterfaceClass))
typedef struct _DocumentInterface DocumentInterface;
typedef struct _DocumentInterfaceClass DocumentInterfaceClass;
struct _DocumentInterface {
};
struct _DocumentInterfaceClass {
};
struct DBUSPoint {
int x;
int y;
};
/****************************************************************************
MISC FUNCTIONS
****************************************************************************/
/****************************************************************************
CREATION FUNCTIONS
****************************************************************************/
gchar *
/****************************************************************************
ENVIORNMENT FUNCTIONS
****************************************************************************/
gchar *
double x0,
double y0,
double x1,
double y1,
double border,
GArray *
/****************************************************************************
OBJECT FUNCTIONS
****************************************************************************/
gchar *
gchar *
gchar *
GArray *
/****************************************************************************
FILE I/O FUNCTIONS
****************************************************************************/
/*
gboolean
document_interface_print_to_file (DocumentInterface *object, GError **error);
*/
/****************************************************************************
PROGRAM CONTROL FUNCTIONS
****************************************************************************/
/****************************************************************************
UPDATE FUNCTIONS
****************************************************************************/
void
void
void
/****************************************************************************
SELECTION FUNCTIONS
****************************************************************************/
GArray *
/****************************************************************************
LAYER FUNCTIONS
****************************************************************************/
gchar *
gchar **
DocumentInterface *document_interface_new (void);
GType document_interface_get_type (void);
extern DocumentInterface *fugly;
document_interface_get_children (DocumentInterface *object, char *name, char ***out, GError **error);
#endif // INKSCAPE_EXTENSION_DOCUMENT_INTERFACE_H_