Use a text object as context for calculating size.
[geda-gaf/berndj.git] / gattrib / include / prototype.h
blob3cfe178c7708bbbc0c271b9758bc8d35cbaf1276
1 /*
2 * This file holds all function prototypes for the entire gattrib
3 * project. It should be #include'ed after struct.h.
4 */
6 /* ---------------- gattrib.c ---------------- */
7 gboolean gattrib_really_quit(void);
8 gint gattrib_quit(gint return_code);
10 /* -------------- parsecmd.c ----------------- */
11 void usage(char *cmd);
12 /* output usage string */
13 int parse_commandline(int argc, char *argv[]);
14 /* run through cmd line options and set mode switches. */
16 /* -------------- listsort.c ----------------- */
17 int cmp(STRING_LIST *a, STRING_LIST *b);
18 STRING_LIST *listsort(STRING_LIST *list, int is_circular, int is_double);
20 /* ------------- f_export.c ------------- */
21 void f_export_components(gchar *filename);
24 /* ------------- g_register.c ------------- */
25 void g_register_funcs(void);
26 SCM g_quit(void);
29 /* ------------- g_rc.c ------------- */
30 SCM g_rc_gattrib_version(SCM version);
32 /* ------------- s_attrib.c ------------- */
33 int s_attrib_name_in_list(STRING_LIST *name_value_list, char *name);
34 char *s_attrib_get_refdes(OBJECT *object);
36 /* ------------- s_sheet_data.c ------------- */
37 SHEET_DATA *s_sheet_data_new();
39 void s_sheet_data_add_master_comp_list_items(SHEET_DATA *sheet, PAGE *page);
40 void s_sheet_data_add_master_comp_attrib_list_items(SHEET_DATA *sheet, PAGE *page);
41 void s_sheet_data_add_master_net_list_items(SHEET_DATA *sheet, PAGE *page);
42 void s_sheet_data_add_master_net_attrib_list_items(SHEET_DATA *sheet, PAGE *page);
43 void s_sheet_data_add_master_pin_list_items(SHEET_DATA *sheet, PAGE *page);
44 void s_sheet_data_add_master_pin_attrib_list_items(SHEET_DATA *sheet, PAGE *page);
46 void s_sheet_data_gtksheet_to_sheetdata();
49 /* ------------- s_string_list.c ------------- */
50 STRING_LIST *s_string_list_new();
51 STRING_LIST *s_string_list_duplicate_string_list(STRING_LIST *old_string_list);
52 void s_string_list_add_item(STRING_LIST *list, int *count, char const *item);
53 void s_string_list_delete_item(STRING_LIST **list, int *count, char const *item);
54 int s_string_list_in_list(STRING_LIST *list, char const *item);
55 gchar *s_string_list_get_data_at_index(STRING_LIST *list, gint index);
57 void s_string_list_sort_master_comp_list();
58 void s_string_list_sort_master_comp_attrib_list();
59 void s_string_list_sort_master_net_list();
60 void s_string_list_sort_master_net_attrib_list();
61 void s_string_list_sort_master_pin_list();
62 void s_string_list_sort_master_pin_attrib_list();
65 /* ------------- s_table.c ------------- */
66 TABLE **s_table_new(int rows, int cols);
67 TABLE **s_table_resize(TABLE **table,
68 int rows, int old_cols, int new_cols);
69 void s_table_destroy(TABLE **table, int row_count, int col_count);
70 int s_table_get_index(STRING_LIST *list, char *string);
71 STRING_LIST *s_table_create_attrib_pair(gchar *row_name,
72 TABLE **table,
73 STRING_LIST *row_list,
74 int num_attribs);
76 void s_table_add_toplevel_comp_items_to_comp_table(SHEET_DATA *sheet, PAGE *page);
77 void s_table_add_toplevel_net_items_to_net_table(OBJECT *start_obj);
78 void s_table_add_toplevel_pin_items_to_pin_table(SHEET_DATA *sheet, PAGE *page);
80 void s_table_gtksheet_to_all_tables();
81 void s_table_gtksheet_to_table(GtkSheet *local_gtk_sheet,
82 STRING_LIST *master_row_list, STRING_LIST *master_col_list,
83 TABLE **local_table, int num_rows, int num_cols);
85 /* ------------- s_toplevel.c ------------- */
86 int s_toplevel_read_page(char *filename);
87 void s_toplevel_verify_design(TOPLEVEL *pr_current);
88 void s_toplevel_gtksheet_to_toplevel();
89 void s_toplevel_add_new_attrib(gchar *new_attrib_name);
90 void s_toplevel_delete_attrib_col();
91 void s_toplevel_sheetdata_to_toplevel(SHEET_DATA *sheet, PAGE *page);
93 STRING_LIST *s_toplevel_get_component_attribs_in_sheet(char *refdes);
94 void s_toplevel_update_component_attribs_in_toplevel(OBJECT *o_current,
95 STRING_LIST *new_comp_attrib_list);
96 STRING_LIST *s_toplevel_get_pin_attribs_in_sheet(char *refdes, OBJECT *pin);
97 void s_toplevel_update_pin_attribs_in_toplevel(char *refdes, OBJECT *pin,
98 STRING_LIST *new_pin_attrib_list);
101 /* ------------- s_object.c ------------- */
102 void s_object_add_comp_attrib_to_object(OBJECT *o_current,
103 char *new_attrib_name,
104 char *new_attrib_value,
105 gint visibility,
106 gint show_name_value);
107 void s_object_add_net_attrib_to_object(OBJECT *o_current,
108 char *new_attrib_name,
109 char *new_attrib_value);
110 void s_object_add_pin_attrib_to_object(OBJECT *o_current,
111 char *new_attrib_name,
112 char *new_attrib_value);
114 void s_object_replace_attrib_in_object(OBJECT *o_current,
115 char *new_attrib_name,
116 char *new_attrib_value,
117 gint visibility,
118 gint show_name_value);
119 void s_object_remove_attrib_in_object(OBJECT *o_current,
120 char *new_attrib_name);
122 OBJECT *s_object_attrib_add_attrib_in_object(TOPLEVEL * w_current,
123 char *text_string,
124 gint visibility,
125 gint show_name_value,
126 OBJECT * object);
127 void s_object_delete_text_object_in_object(TOPLEVEL *w_current, OBJECT *test_object);
128 int s_object_has_sym_file(OBJECT *object);
130 /* ------------- s_rename.c ------------- */
131 void s_rename_init(void);
132 void s_rename_destroy_all(void);
133 void s_rename_next_set(void);
134 void s_rename_print(void);
135 int s_rename_search(char *src, char *dest, int quiet_flag);
136 void s_rename_add(char *src, char *dest);
138 /* ------------- s_misc.c ------------- */
139 void verbose_print(char *string);
140 void verbose_done(void);
141 void verbose_reset_index(void);
142 char *s_misc_remaining_string(char const *string, char delimiter, int count);
144 /* ------------- s_visibility.c ------------- */
145 void s_visibility_set_invisible();
146 void s_visibility_set_name_only();
147 void s_visibility_set_value_only();
148 void s_visibility_set_name_and_value();
149 void s_visibility_set_cell(gint cur_page, gint row, gint col,
150 gint visibility, gint show_name_value);
152 /* ------------- i_vars.c ------------- */
153 void i_vars_set(TOPLEVEL * pr_current);
155 /* ------------- x_dialog.c ------------- */
156 void x_dialog_newattrib();
157 void x_dialog_delattrib();
158 void x_dialog_missing_sym();
159 void x_dialog_unsaved_data();
160 void x_dialog_unimplemented_feature();
161 void x_dialog_fatal_error(gchar *string, gint return_code);
162 void x_dialog_about_dialog();
163 void x_dialog_export_file();
165 /* ------------- x_gtksheet.c ------------- */
166 void x_gtksheet_init();
167 void x_gtksheet_add_row_labels(GtkSheet *sheet, int count, STRING_LIST *list_head);
168 void x_gtksheet_add_col_labels(GtkSheet *sheet, int count, STRING_LIST *list_head);
169 void x_gtksheet_add_cell_item(GtkSheet *sheet, gint i, gint j,
170 char *text, gint visibility, gint show_name_value);
171 void x_gtksheet_set_cell_text_color(GtkSheet *sheet, gint row, gint col,
172 gint color_name);
173 int x_gtksheet_get_min_col(GtkSheet *sheet);
174 int x_gtksheet_get_max_col(GtkSheet *sheet);
176 /* ------------- x_fileselect.c ------------- */
177 GSList *x_fileselect_open (void);
178 void x_fileselect_save (void);
179 gboolean x_fileselect_load_files (GSList *filenames);
181 /* ------------- x_window.c ------------- */
182 void x_window_init();
183 void x_window_add_items();