|  |  |  | Goffice Reference Manual |  | 
|---|---|---|---|---|
#define GO_PLUGIN_SERVICE_TYPE #define GO_PLUGIN_SERVICE (o) #define IS_GO_PLUGIN_SERVICE (o) GType plugin_service_get_type (void); #define GO_PLUGIN_SERVICE_GENERAL_TYPE #define GO_PLUGIN_SERVICE_GENERAL (o) #define IS_GO_PLUGIN_SERVICE_GENERAL (o) GType plugin_service_general_get_type (void); PluginServiceGeneral; PluginServiceGeneralCallbacks; #define GO_PLUGIN_SERVICE_FILE_OPENER_TYPE #define GO_PLUGIN_SERVICE_FILE_OPENER (o) #define IS_GO_PLUGIN_SERVICE_FILE_OPENER (o) GType plugin_service_file_opener_get_type (void); PluginServiceFileOpener; PluginServiceFileOpenerCallbacks; #define GO_PLUGIN_SERVICE_FILE_SAVER_TYPE #define GO_PLUGIN_SERVICE_FILE_SAVER (o) #define IS_GO_PLUGIN_SERVICE_FILE_SAVER (o) GType plugin_service_file_saver_get_type (void); PluginServiceFileSaver; PluginServiceFileSaverCallbacks; #define GO_PLUGIN_SERVICE_PLUGIN_LOADER_TYPE #define GO_PLUGIN_SERVICE_PLUGIN_LOADER (o) #define IS_GO_PLUGIN_SERVICE_PLUGIN_LOADER (o) GType plugin_service_plugin_loader_get_type (void); PluginServicePluginLoader; PluginServicePluginLoaderCallbacks; GType plugin_service_plugin_loader_generate_type (GOPluginService *service, ErrorInfo **ret_error); #define GO_PLUGIN_SERVICE_GOBJECT_LOADER_TYPE #define GO_PLUGIN_SERVICE_GOBJECT_LOADER (o) #define IS_GO_PLUGIN_SERVICE_GOBJECT_LOADER (o) GType plugin_service_gobject_loader_get_type (void); PluginServiceGObjectLoader; #define GO_PLUGIN_SERVICE_SIMPLE_TYPE #define GO_PLUGIN_SERVICE_SIMPLE (o) #define IS_GO_PLUGIN_SERVICE_SIMPLE (o) GType plugin_service_simple_get_type (void); PluginServiceSimple; GOPluginService* plugin_service_new (GOPlugin *plugin, xmlNode *tree, ErrorInfo **ret_error); charconst * plugin_service_get_id (const GOPluginService *service); charconst * plugin_service_get_description (GOPluginService *service); GOPlugin* plugin_service_get_plugin (GOPluginService *service); gpointer plugin_service_get_cbs (GOPluginService *service); void plugin_service_activate (GOPluginService *service, ErrorInfo **ret_error); void plugin_service_deactivate (GOPluginService *service, ErrorInfo **ret_error); void plugin_service_load (GOPluginService *service, ErrorInfo **ret_error); void plugin_service_unload (GOPluginService *service, ErrorInfo **ret_error); GType (*GOPluginServiceCreate) (void); void plugin_services_init (void); void plugin_services_shutdown (void); void plugin_service_define (char const *type_str, GOPluginServiceCreate ctor);
  GObject
   +----GOPluginService
         +----PluginServiceGeneral
  GObject
   +----GOPluginService
         +----PluginServiceFileOpener
  GObject
   +----GOPluginService
         +----PluginServiceFileSaver
  GObject
   +----GOPluginService
         +----PluginServicePluginLoader
  GObject
   +----GOPluginService
         +----PluginServiceSimple
               +----PluginServiceGObjectLoader
  GObject
   +----GOPluginService
         +----PluginServiceSimple
               +----PluginServiceGObjectLoader
#define GO_PLUGIN_SERVICE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_TYPE, GOPluginService))
| 
 | 
#define IS_GO_PLUGIN_SERVICE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_TYPE))
| 
 | 
#define GO_PLUGIN_SERVICE_GENERAL_TYPE (plugin_service_general_get_type ())
#define GO_PLUGIN_SERVICE_GENERAL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_GENERAL_TYPE, PluginServiceGeneral))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_GENERAL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_GENERAL_TYPE))
| 
 | 
typedef struct {
	void (*plugin_func_init) (GOPluginService *service, ErrorInfo **ret_error);
	void (*plugin_func_cleanup) (GOPluginService *service, ErrorInfo **ret_error);
} PluginServiceGeneralCallbacks;
#define GO_PLUGIN_SERVICE_FILE_OPENER_TYPE (plugin_service_file_opener_get_type ())
#define GO_PLUGIN_SERVICE_FILE_OPENER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_FILE_OPENER_TYPE, PluginServiceFileOpener))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_FILE_OPENER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_FILE_OPENER_TYPE))
| 
 | 
typedef struct {
	/* plugin_func_file_probe may be NULL */
	gboolean (*plugin_func_file_probe) (
	         GOFileOpener const *fo, GOPluginService *service,
	         GsfInput *input, FileProbeLevel pl);
	void     (*plugin_func_file_open) (
	         GOFileOpener const *fo, GOPluginService *service,
	         IOContext *io_context, gpointer fixme_workbook_view,
		 GsfInput *input);
} PluginServiceFileOpenerCallbacks;
#define GO_PLUGIN_SERVICE_FILE_SAVER_TYPE (plugin_service_file_saver_get_type ())
#define GO_PLUGIN_SERVICE_FILE_SAVER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_FILE_SAVER_TYPE, PluginServiceFileSaver))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_FILE_SAVER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_FILE_SAVER_TYPE))
| 
 | 
typedef struct {
	void  (*plugin_func_file_save) (
	      GOFileSaver const *fs, GOPluginService *service,
	      IOContext *io_context, gconstpointer fixme_workbook_view,
	      GsfOutput *output);
} PluginServiceFileSaverCallbacks;
#define GO_PLUGIN_SERVICE_PLUGIN_LOADER_TYPE (plugin_service_plugin_loader_get_type ())
#define GO_PLUGIN_SERVICE_PLUGIN_LOADER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_PLUGIN_LOADER_TYPE, PluginServicePluginLoader))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_PLUGIN_LOADER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_PLUGIN_LOADER_TYPE))
| 
 | 
GType               plugin_service_plugin_loader_get_type
                                                        (void);
| Returns : | 
typedef struct {
	GType (*plugin_func_get_loader_type) (
	      GOPluginService *service, ErrorInfo **ret_error);
} PluginServicePluginLoaderCallbacks;
GType               plugin_service_plugin_loader_generate_type
                                                        (GOPluginService *service,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | |
| Returns : | 
#define GO_PLUGIN_SERVICE_GOBJECT_LOADER_TYPE (plugin_service_gobject_loader_get_type ())
#define GO_PLUGIN_SERVICE_GOBJECT_LOADER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_GOBJECT_LOADER_TYPE, PluginServiceGObjectLoader))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_GOBJECT_LOADER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_GOBJECT_LOADER_TYPE))
| 
 | 
GType               plugin_service_gobject_loader_get_type
                                                        (void);
| Returns : | 
#define GO_PLUGIN_SERVICE_SIMPLE_TYPE (plugin_service_simple_get_type ())
#define GO_PLUGIN_SERVICE_SIMPLE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GO_PLUGIN_SERVICE_SIMPLE_TYPE, PluginServiceSimple))
| 
 | 
#define IS_GO_PLUGIN_SERVICE_SIMPLE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_PLUGIN_SERVICE_SIMPLE_TYPE))
| 
 | 
GOPluginService*    plugin_service_new                  (GOPlugin *plugin,
                                                         xmlNode *tree,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | |
| 
 | |
| Returns : | 
charconst * plugin_service_get_id (const GOPluginService *service);
| 
 | |
| Returns : | 
charconst * plugin_service_get_description (GOPluginService *service);
| 
 | |
| Returns : | 
GOPlugin* plugin_service_get_plugin (GOPluginService *service);
| 
 | |
| Returns : | 
gpointer plugin_service_get_cbs (GOPluginService *service);
| 
 | |
| Returns : | 
void                plugin_service_activate             (GOPluginService *service,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | 
void                plugin_service_deactivate           (GOPluginService *service,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | 
void                plugin_service_load                 (GOPluginService *service,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | 
void                plugin_service_unload               (GOPluginService *service,
                                                         ErrorInfo **ret_error);
| 
 | |
| 
 | 
void                plugin_service_define               (char const *type_str,
                                                         GOPluginServiceCreate ctor);
| 
 | |
| 
 |