00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00031 #ifndef __TREE_MODEL_H
00032 #define __TREE_MODEL_H
00033
00034 #include "ntw.h"
00035
00036
00037 struct ntw_tree_model_node {
00038 struct ntw_tree_model_node *parent_node;
00039 struct ntw_tree_model_node *child_node;
00040 struct ntw_tree_model_node *prev;
00041 struct ntw_tree_model_node *next;
00042 char *path_string;
00043 void *data;
00044 struct ntw_data_store *var_data;
00045 };
00046
00047 struct ntw_tree_model {
00048 int32 id;
00049 int32 columns;
00050 int32 rows;
00051 int32 row_byte_size;
00052 uint8 *column_type;
00053 int32 *column_offset;
00054 struct ntw_tree_model_node *first_node;
00055 };
00056
00057
00058 int
00059 ntw_tree_model_data_send(struct ntw_tree_model *tm, FILE *file);
00060
00066 int
00067 ntw_tree_model_get_column_type(ntwWidget *widget, int32 column);
00068
00076 struct ntw_tree_model_node *
00077 ntw_tree_model_get_node_from_path(ntwWidget *widget, char *path_string);
00078
00079 int
00080 ntw_tree_model_insert_node(struct ntw_tree_model *tm, struct ntw_tree_model_node *parent_node, struct ntw_tree_model_node *node, int32 row);
00081
00086 int
00087 ntw_tree_model_clear(ntwWidget *widget);
00088
00094 int
00095 ntw_tree_model_delete_row(ntwWidget *widget, struct ntw_tree_model_node *tmn);
00096
00097
00105 struct ntw_tree_model_node *
00106 ntw_tree_model_insert_row(ntwWidget *widget, struct ntw_tree_model_node *parent_node, int32 row, ...);
00107
00121 ntwWidget *
00122 ntw_tree_model_new(int32 columns, ...);
00123
00124 void
00125 ntw_tree_model_initialize_callback();
00126
00127
00128 #endif