ETreeMemoryCallbacks

ETreeMemoryCallbacks

Synopsis

struct              ETreeMemoryCallbacks;
ETreeModel *        e_tree_memory_callbacks_new         (ETreeMemoryCallbacksIconAtFn icon_at,
                                                         ETreeMemoryCallbacksColumnCountFn column_count,
                                                         ETreeMemoryCallbacksHasSaveIdFn has_save_id,
                                                         ETreeMemoryCallbacksGetSaveIdFn get_save_id,
                                                         ETreeMemoryCallbacksHasGetNodeByIdFn has_get_node_by_id,
                                                         ETreeMemoryCallbacksGetNodeByIdFn get_node_by_id,
                                                         ETreeMemoryCallbacksValueAtFn sort_value_at,
                                                         ETreeMemoryCallbacksValueAtFn value_at,
                                                         ETreeMemoryCallbacksSetValueAtFn set_value_at,
                                                         ETreeMemoryCallbacksIsEditableFn is_editable,
                                                         ETreeMemoryCallbacksDuplicateValueFn duplicate_value,
                                                         ETreeMemoryCallbacksFreeValueFn free_value,
                                                         ETreeMemoryCallbacksInitializeValueFn initialize_value,
                                                         ETreeMemoryCallbacksValueIsEmptyFn value_is_empty,
                                                         ETreeMemoryCallbacksValueToStringFn value_to_string,
                                                         gpointer model_data);

Description

Details

struct ETreeMemoryCallbacks

struct ETreeMemoryCallbacks {
	ETreeMemory parent;

	ETreeMemoryCallbacksIconAtFn icon_at;

	ETreeMemoryCallbacksColumnCountFn     column_count;

	ETreeMemoryCallbacksHasSaveIdFn       has_save_id;
	ETreeMemoryCallbacksGetSaveIdFn       get_save_id;

	ETreeMemoryCallbacksHasGetNodeByIdFn  has_get_node_by_id;
	ETreeMemoryCallbacksGetNodeByIdFn     get_node_by_id;

	ETreeMemoryCallbacksValueAtFn         sort_value_at;
	ETreeMemoryCallbacksValueAtFn         value_at;
	ETreeMemoryCallbacksSetValueAtFn      set_value_at;
	ETreeMemoryCallbacksIsEditableFn      is_editable;

	ETreeMemoryCallbacksDuplicateValueFn  duplicate_value;
	ETreeMemoryCallbacksFreeValueFn       free_value;
	ETreeMemoryCallbacksInitializeValueFn initialize_value;
	ETreeMemoryCallbacksValueIsEmptyFn    value_is_empty;
	ETreeMemoryCallbacksValueToStringFn   value_to_string;

	gpointer model_data;
};

e_tree_memory_callbacks_new ()

ETreeModel *        e_tree_memory_callbacks_new         (ETreeMemoryCallbacksIconAtFn icon_at,
                                                         ETreeMemoryCallbacksColumnCountFn column_count,
                                                         ETreeMemoryCallbacksHasSaveIdFn has_save_id,
                                                         ETreeMemoryCallbacksGetSaveIdFn get_save_id,
                                                         ETreeMemoryCallbacksHasGetNodeByIdFn has_get_node_by_id,
                                                         ETreeMemoryCallbacksGetNodeByIdFn get_node_by_id,
                                                         ETreeMemoryCallbacksValueAtFn sort_value_at,
                                                         ETreeMemoryCallbacksValueAtFn value_at,
                                                         ETreeMemoryCallbacksSetValueAtFn set_value_at,
                                                         ETreeMemoryCallbacksIsEditableFn is_editable,
                                                         ETreeMemoryCallbacksDuplicateValueFn duplicate_value,
                                                         ETreeMemoryCallbacksFreeValueFn free_value,
                                                         ETreeMemoryCallbacksInitializeValueFn initialize_value,
                                                         ETreeMemoryCallbacksValueIsEmptyFn value_is_empty,
                                                         ETreeMemoryCallbacksValueToStringFn value_to_string,
                                                         gpointer model_data);

This initializes a new ETreeMemoryCallbacksModel object. ETreeMemoryCallbacksModel is an implementaiton of the somewhat abstract class ETreeMemory. The ETreeMemoryCallbacksModel is designed to allow people to easily create ETreeMemorys without having to create a new GType derived from ETreeMemory every time they need one.

Instead, ETreeMemoryCallbacksModel uses a setup based in callback functions, every callback function signature mimics the signature of each ETreeModel method and passes the extra data pointer to each one of the method to provide them with any context they might want to use.

ETreeMemoryCallbacks is to ETreeMemory as ETableSimple is to ETableModel.

Returns :

An ETreeMemoryCallbacks object (which is also an ETreeMemory and thus an ETreeModel object).