go-editor

go-editor

Synopsis

                    GOEditor;
                    GOEditorPage;
void                go_editor_add_page                  (GOEditor *editor,
                                                         gpointer widget,
                                                         char const *label);
void                go_editor_free                      (GOEditor *editor);
GtkWidget *         go_editor_get_notebook              (GOEditor *editor);
GtkWidget *         go_editor_get_page                  (GOEditor *editor,
                                                         char const *name);
GtkWidget *         go_editor_get_registered_widget     (GOEditor *editor,
                                                         char const *name);
GOEditor *          go_editor_new                       (void);
void                go_editor_register_widget           (GOEditor *editor,
                                                         GtkWidget *widget);
void                go_editor_set_store_page            (GOEditor *editor,
                                                         unsigned *store_page);

Description

Details

GOEditor

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

unsigned *store_page;

pointer to a place for storing last edited page.

GSList *pages;

list of GOEditorPage.

GData *registered_widgets;

registered wigets.

GOEditorPage

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

char const  *label;

label for notebook page.

gpointer widget;

notebook page.

go_editor_add_page ()

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

Adds a page to editor.

editor :

a GOEditor

widget :

property edition widget

label :

a label identifying the widget

go_editor_free ()

void                go_editor_free                      (GOEditor *editor);

Frees a GOEditor object.

editor :

a GOEditor

go_editor_get_notebook ()

GtkWidget *         go_editor_get_notebook              (GOEditor *editor);

editor :

a GOEditor

Returns :

a GtkNotebook from the widget collection stored in editor. [transfer full]

go_editor_get_page ()

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

editor :

GOEditor

name :

page name

Returns :

the page with name as name if any. [transfer none]

go_editor_get_registered_widget ()

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

editor :

a GOEditor

name :

the name of the registered widget

Returns :

a widget previously registered using go_editor_register_widget. [transfer none]

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. [transfer full]

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.

editor :

a GOEditor

widget :

a GtkWidget

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.

editor :

a GOEditor

store_page :

placeholder for the last selected page