GogEditor

GogEditor — Property editor build helper

Synopsis




            GogEditor;
            GogEditorPage;
GogEditor*  gog_editor_new                  (void);
void        gog_editor_free                 (GogEditor *editor);
void        gog_editor_add_page             (GogEditor *editor,
                                             gpointer widget,
                                             char const *label);
void        gog_editor_set_store_page       (GogEditor *editor,
                                             unsigned *store_page);
GtkWidget*  gog_editor_get_notebook         (GogEditor *editor);
GtkWidget*  gog_editor_get_registered_widget
                                            (GogEditor *editor,
                                             char const *name);
void        gog_editor_register_widget      (GogEditor *editor,
                                             GtkWidget *widget);

Description

Details

GogEditor

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


GogEditorPage

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


gog_editor_new ()

GogEditor*  gog_editor_new                  (void);

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

Returns :

gog_editor_free ()

void        gog_editor_free                 (GogEditor *editor);

Frees a GogEditor object.

editor : a GogEditor

gog_editor_add_page ()

void        gog_editor_add_page             (GogEditor *editor,
                                             gpointer widget,
                                             char const *label);

Adds a page to editor.

editor : a GogEditor
widget : property edition widget
label : a label identifying the widget

gog_editor_set_store_page ()

void        gog_editor_set_store_page       (GogEditor *editor,
                                             unsigned *store_page);

Sets a placeholder for storing the last active editor page.

editor : a GogEditor
store_page : placeholder for the last selected page

gog_editor_get_notebook ()

GtkWidget*  gog_editor_get_notebook         (GogEditor *editor);

Buils a GtkNotebook from the widget collection stored in editor.

editor : a GogEditor
Returns :

gog_editor_get_registered_widget ()

GtkWidget*  gog_editor_get_registered_widget
                                            (GogEditor *editor,
                                             char const *name);

editor : a GogEditor
name : the name of the registered widget
Returns : a widget previously registered using gog_editor_register_widget.

gog_editor_register_widget ()

void        gog_editor_register_widget      (GogEditor *editor,
                                             GtkWidget *widget);

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

editor : a GogEditor
widget : a GtkWidget