GOEditor

GOEditor

Functions

Types and Values

Description

Functions

go_editor_new ()

GOEditor *
go_editor_new (void);

Returns

a new GOEditor object, which is used to store a collection of property edition widgets (pages). The returned object must be freed using go_editor_free .


go_editor_free ()

void
go_editor_free (GOEditor *editor);

Frees a GOEditor object.

Parameters

editor

a GOEditor

 

go_editor_add_page ()

void
go_editor_add_page (GOEditor *editor,
                    gpointer widget,
                    char const *label);

Adds a page to editor .

Parameters

editor

a GOEditor

 

widget

property edition widget

 

label

a label identifying the widget

 

go_editor_set_store_page ()

void
go_editor_set_store_page (GOEditor *editor,
                          unsigned *store_page);

Sets a placeholder for storing the last active editor page.

Parameters

editor

a GOEditor

 

store_page

placeholder for the last selected page

 

go_editor_get_notebook ()

GtkWidget *
go_editor_get_notebook (GOEditor *editor);

Parameters

editor

a GOEditor

 

Returns

a GtkNotebook from the widget collection stored in editor .


go_editor_get_registered_widget ()

GtkWidget *
go_editor_get_registered_widget (GOEditor *editor,
                                 char const *name);

Parameters

editor

a GOEditor

 

name

the name of the registered widget

 

Returns

a widget previously registered using go_editor_register_widget .


go_editor_register_widget ()

void
go_editor_register_widget (GOEditor *editor,
                           GtkWidget *widget);

Registers a widget that then can be retrieved later using go_editor_get_registered_widget . The main use of this function is to provide the ability to extend a page.

Parameters

editor

a GOEditor

 

widget

a GtkWidget

 

Types and Values

GOEditor

typedef struct {
	unsigned *store_page;		/* pointer to a place for storing last edited page */
	GSList		*pages;			/* GOEditorPage */
	GData		*registered_widgets;
} GOEditor;


GOEditorPage

typedef struct {
	char const *label;		/* label for notebook page */
	gpointer 	 widget; /* GtkWidget* */
} GOEditorPage;