Synopsis
            GOComponent;
#define     GO_COMPONENT_TYPE
#define     GO_COMPONENT                    (o)
#define     IS_GO_COMPONENT                 (o)
#define     GOC_PARAM_PERSISTENT
GType       go_component_get_type           (void);
GOComponent* go_component_new_by_mime_type  (char const *mime_type);
void        go_component_set_default_size   (GOComponent *component,
                                             double width,
                                             double ascent,
                                             double descent);
gboolean    go_component_needs_window       (GOComponent *component);
void        go_component_set_window         (GOComponent *component,
                                             GdkWindow *window);
void        go_component_set_pixbuf         (GOComponent *component,
                                             GdkPixbuf *pixbuf);
void        go_component_set_data           (GOComponent *component,
                                             char const *data,
                                             int length);
gboolean    go_component_get_data           (GOComponent *component,
                                             gpointer *data,
                                             int *length,
                                             void (*clearfunc) (gpointer data),
                                             gpointer *user_data);
void        go_component_set_size           (GOComponent *component,
                                             double width,
                                             double height);
void        go_component_draw               (GOComponent *component,
                                             int width_pixels,
                                             int height_pixels);
gboolean    go_component_is_resizable       (GOComponent *component);
gboolean    go_component_is_editable        (GOComponent *component);
gboolean    go_component_edit               (GOComponent *component);
void        go_component_print              (GOComponent *component,
                                             GnomePrintContext *gpc,
                                             double width,
                                             double height);
void        go_component_emit_changed       (GOComponent *component);
char*       go_component_export_to_svg      (GOComponent *component);
void        go_component_set_command_context
                                            (GOCmdContext *cc);
GOCmdContext* go_component_get_command_context
                                            (void);
void        go_component_draw_cairo         (GOComponent *component,
                                             gpointer data,
                                             double width,
                                             double height);
 
Details
GOComponent
typedef struct {
	GObject parent;
	/*protected*/
	char *mime_type;
	double width, ascent, descent, height;
	double default_width, default_ascent, default_descent;
	gboolean needs_window, resizable, editable;
	char const *data;
	int length;
	GdkWindow *window;
	GdkPixbuf *pixbuf;
} GOComponent;
 
GO_COMPONENT_TYPE
#define GO_COMPONENT_TYPE	(go_component_get_type ())
 
GO_COMPONENT()
#define GO_COMPONENT(o)	(G_TYPE_CHECK_INSTANCE_CAST ((o), GO_COMPONENT_TYPE, GOComponent))
 
IS_GO_COMPONENT()
#define IS_GO_COMPONENT(o)	(G_TYPE_CHECK_INSTANCE_TYPE ((o), GO_COMPONENT_TYPE))
 
GOC_PARAM_PERSISTENT
#define GOC_PARAM_PERSISTENT	(1 << (G_PARAM_USER_SHIFT+0))
 
go_component_get_type ()
GType       go_component_get_type           (void);
 
go_component_new_by_mime_type ()
GOComponent* go_component_new_by_mime_type  (char const *mime_type);
 
go_component_set_default_size ()
void        go_component_set_default_size   (GOComponent *component,
                                             double width,
                                             double ascent,
                                             double descent);
| component: |  | 
| width: |  | 
| ascent: |  | 
| descent: |  | 
 
go_component_set_window ()
void        go_component_set_window         (GOComponent *component,
                                             GdkWindow *window);
 
go_component_set_pixbuf ()
void        go_component_set_pixbuf         (GOComponent *component,
                                             GdkPixbuf *pixbuf);
 
go_component_set_data ()
void        go_component_set_data           (GOComponent *component,
                                             char const *data,
                                             int length);
| component: |  | 
| data: |  | 
| length: |  | 
 
go_component_get_data ()
gboolean    go_component_get_data           (GOComponent *component,
                                             gpointer *data,
                                             int *length,
                                             void (*clearfunc) (gpointer data),
                                             gpointer *user_data);
| component: |  | 
| data: |  | 
| length: |  | 
| clearfunc: |  | 
| user_data: |  | 
| Returns : |  | 
 
go_component_set_size ()
void        go_component_set_size           (GOComponent *component,
                                             double width,
                                             double height);
| component: |  | 
| width: |  | 
| height: |  | 
 
go_component_draw ()
void        go_component_draw               (GOComponent *component,
                                             int width_pixels,
                                             int height_pixels);
| component: |  | 
| width_pixels: |  | 
| height_pixels: |  | 
 
go_component_print ()
void        go_component_print              (GOComponent *component,
                                             GnomePrintContext *gpc,
                                             double width,
                                             double height);
| component: |  | 
| gpc: |  | 
| width: |  | 
| height: |  | 
 
go_component_emit_changed ()
void        go_component_emit_changed       (GOComponent *component);
 
go_component_export_to_svg ()
char*       go_component_export_to_svg      (GOComponent *component);
 
go_component_set_command_context ()
void        go_component_set_command_context
                                            (GOCmdContext *cc);
 
go_component_get_command_context ()
GOCmdContext* go_component_get_command_context
                                            (void);
 
go_component_draw_cairo ()
void        go_component_draw_cairo         (GOComponent *component,
                                             gpointer data,
                                             double width,
                                             double height);
| component: |  | 
| data: |  | 
| width: |  | 
| height: |  |