gschem: Rewrite gschemdoc in Scheme.
[geda-gaf/whiteaudio.git] / gschem / include / prototype.h
blob4795ef350af1f23de4391dda24d18a37cfb92aa7
1 /* $Id$ */
3 /* gschem_toplevel.c */
4 GSCHEM_TOPLEVEL *gschem_toplevel_new();
6 /* a_pan.c */
7 void a_pan_general(GSCHEM_TOPLEVEL *w_current, double world_cx, double world_cy,
8 double relativ_zoom_factor, int flags);
9 void a_pan(GSCHEM_TOPLEVEL *w_current, int x, int y);
10 void a_pan_mouse(GSCHEM_TOPLEVEL *w_current, int diff_x, int diff_y);
11 /* a_zoom.c */
12 void a_zoom(GSCHEM_TOPLEVEL *w_current, int dir, int selected_from, int pan_flags);
13 void a_zoom_extents(GSCHEM_TOPLEVEL *w_current, const GList *list, int pan_flags);
14 void a_zoom_box(GSCHEM_TOPLEVEL *w_current, int pan_flags);
15 void a_zoom_box_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
16 void a_zoom_box_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
17 void a_zoom_box_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
18 void a_zoom_box_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
19 void a_zoom_box_draw_rubber(GSCHEM_TOPLEVEL *w_current);
20 void correct_aspect(GSCHEM_TOPLEVEL *w_current);
21 /* g_attrib.c */
22 void g_init_attrib ();
23 /* g_funcs.c */
24 SCM g_funcs_print(SCM filename);
25 SCM g_funcs_postscript(SCM filename);
26 SCM g_funcs_image(SCM filename);
27 SCM g_funcs_exit(void);
28 SCM g_funcs_log(SCM msg);
29 SCM g_funcs_msg(SCM msg);
30 SCM g_funcs_confirm(SCM msg);
31 SCM g_funcs_filesel(SCM msg, SCM templ, SCM flags);
32 SCM g_funcs_use_rc_values(void);
33 SCM get_selected_component_attributes(GSCHEM_TOPLEVEL *w_current);
34 /* g_hook.c */
35 void g_init_hook ();
36 void g_run_hook_object (const char *name, OBJECT *obj);
37 void g_run_hook_object_list (const char *name, GList *obj_lst);
38 void g_run_hook_page (const char *name, PAGE *page);
39 /* g_keys.c */
40 int g_keys_execute(GSCHEM_TOPLEVEL *w_current, GdkEventKey *event);
41 GtkListStore *g_keys_to_list_store (void);
42 SCM g_keys_file_new(SCM rest);
43 SCM g_keys_file_new_window(SCM rest);
44 SCM g_keys_file_open(SCM rest);
45 SCM g_keys_file_script(SCM rest);
46 SCM g_keys_file_save(SCM rest);
47 SCM g_keys_file_save_as(SCM rest);
48 SCM g_keys_file_save_all(SCM rest);
49 SCM g_keys_file_print(SCM rest);
50 SCM g_keys_file_write_png(SCM rest);
51 SCM g_keys_file_close(SCM rest);
52 SCM g_keys_file_quit(SCM rest);
53 SCM g_keys_edit_undo(SCM rest);
54 SCM g_keys_edit_redo(SCM rest);
55 SCM g_keys_edit_select(SCM rest);
56 SCM g_keys_edit_select_all(SCM rest);
57 SCM g_keys_edit_deselect(SCM rest);
58 SCM g_keys_edit_copy(SCM rest);
59 SCM g_keys_edit_copy_hotkey(SCM rest);
60 SCM g_keys_edit_mcopy(SCM rest);
61 SCM g_keys_edit_mcopy_hotkey(SCM rest);
62 SCM g_keys_edit_move(SCM rest);
63 SCM g_keys_edit_move_hotkey(SCM rest);
64 SCM g_keys_edit_delete(SCM rest);
65 SCM g_keys_edit_rotate_90(SCM rest);
66 SCM g_keys_edit_rotate_90_hotkey(SCM rest);
67 SCM g_keys_edit_mirror(SCM rest);
68 SCM g_keys_edit_mirror_hotkey(SCM rest);
69 SCM g_keys_edit_slot(SCM rest);
70 SCM g_keys_edit_color(SCM rest);
71 SCM g_keys_edit_edit(SCM rest);
72 SCM g_keys_edit_pin_type(SCM rest);
73 SCM g_keys_edit_text(SCM rest);
74 SCM g_keys_edit_lock(SCM rest);
75 SCM g_keys_edit_unlock(SCM rest);
76 SCM g_keys_edit_linetype(SCM rest);
77 SCM g_keys_edit_filltype(SCM rest);
78 SCM g_keys_edit_translate(SCM rest);
79 SCM g_keys_edit_invoke_macro(SCM rest);
80 SCM g_keys_edit_embed(SCM rest);
81 SCM g_keys_edit_unembed(SCM rest);
82 SCM g_keys_edit_update(SCM rest);
83 SCM g_keys_edit_show_hidden(SCM rest);
84 SCM g_keys_edit_find(SCM rest);
85 SCM g_keys_edit_show_text(SCM rest);
86 SCM g_keys_edit_hide_text(SCM rest);
87 SCM g_keys_edit_autonumber_text(SCM rest);
88 SCM g_keys_clipboard_copy(SCM rest);
89 SCM g_keys_clipboard_cut(SCM rest);
90 SCM g_keys_clipboard_paste(SCM rest);
91 SCM g_keys_clipboard_paste_hotkey(SCM rest);
92 SCM g_keys_buffer_copy1(SCM rest);
93 SCM g_keys_buffer_copy2(SCM rest);
94 SCM g_keys_buffer_copy3(SCM rest);
95 SCM g_keys_buffer_copy4(SCM rest);
96 SCM g_keys_buffer_copy5(SCM rest);
97 SCM g_keys_buffer_cut1(SCM rest);
98 SCM g_keys_buffer_cut2(SCM rest);
99 SCM g_keys_buffer_cut3(SCM rest);
100 SCM g_keys_buffer_cut4(SCM rest);
101 SCM g_keys_buffer_cut5(SCM rest);
102 SCM g_keys_buffer_paste1(SCM rest);
103 SCM g_keys_buffer_paste2(SCM rest);
104 SCM g_keys_buffer_paste3(SCM rest);
105 SCM g_keys_buffer_paste4(SCM rest);
106 SCM g_keys_buffer_paste5(SCM rest);
107 SCM g_keys_buffer_paste1_hotkey(SCM rest);
108 SCM g_keys_buffer_paste2_hotkey(SCM rest);
109 SCM g_keys_buffer_paste3_hotkey(SCM rest);
110 SCM g_keys_buffer_paste4_hotkey(SCM rest);
111 SCM g_keys_buffer_paste5_hotkey(SCM rest);
112 SCM g_keys_view_redraw(SCM rest);
113 SCM g_keys_view_zoom_full(SCM rest);
114 SCM g_keys_view_zoom_extents(SCM rest);
115 SCM g_keys_view_zoom_in(SCM rest);
116 SCM g_keys_view_zoom_out(SCM rest);
117 SCM g_keys_view_zoom_in_hotkey(SCM rest);
118 SCM g_keys_view_zoom_out_hotkey(SCM rest);
119 SCM g_keys_view_zoom_box(SCM rest);
120 SCM g_keys_view_zoom_box_hotkey(SCM rest);
121 SCM g_keys_view_pan(SCM rest);
122 SCM g_keys_view_pan_left(SCM rest);
123 SCM g_keys_view_pan_right(SCM rest);
124 SCM g_keys_view_pan_up(SCM rest);
125 SCM g_keys_view_pan_down(SCM rest);
126 SCM g_keys_view_pan_hotkey(SCM rest);
127 SCM g_keys_view_dark_colors(SCM rest);
128 SCM g_keys_view_light_colors(SCM rest);
129 SCM g_keys_view_bw_colors(SCM rest);
130 SCM g_keys_page_manager(SCM rest);
131 SCM g_keys_page_next(SCM rest);
132 SCM g_keys_page_prev(SCM rest);
133 SCM g_keys_page_new(SCM rest);
134 SCM g_keys_page_close(SCM rest);
135 SCM g_keys_page_revert(SCM rest);
136 SCM g_keys_page_discard(SCM rest);
137 SCM g_keys_page_print(SCM rest);
138 SCM g_keys_add_component(SCM rest);
139 SCM g_keys_add_attribute(SCM rest);
140 SCM g_keys_add_attribute_hotkey(SCM rest);
141 SCM g_keys_add_net(SCM rest);
142 SCM g_keys_add_net_hotkey(SCM rest);
143 SCM g_keys_add_bus(SCM rest);
144 SCM g_keys_add_bus_hotkey(SCM rest);
145 SCM g_keys_add_text(SCM rest);
146 SCM g_keys_add_line(SCM rest);
147 SCM g_keys_add_line_hotkey(SCM rest);
148 SCM g_keys_add_box(SCM rest);
149 SCM g_keys_add_box_hotkey(SCM rest);
150 SCM g_keys_add_picture(SCM rest);
151 SCM g_keys_add_picture_hotkey(SCM rest);
152 SCM g_keys_add_circle(SCM rest);
153 SCM g_keys_add_circle_hotkey(SCM rest);
154 SCM g_keys_add_arc(SCM rest);
155 SCM g_keys_add_arc_hotkey(SCM rest);
156 SCM g_keys_add_pin(SCM rest);
157 SCM g_keys_add_pin_hotkey(SCM rest);
158 SCM g_keys_hierarchy_down_schematic(SCM rest);
159 SCM g_keys_hierarchy_down_symbol(SCM rest);
160 SCM g_keys_hierarchy_up(SCM rest);
161 SCM g_keys_attributes_attach(SCM rest);
162 SCM g_keys_attributes_detach(SCM rest);
163 SCM g_keys_attributes_show_name(SCM rest);
164 SCM g_keys_attributes_show_value(SCM rest);
165 SCM g_keys_attributes_show_both(SCM rest);
166 SCM g_keys_attributes_visibility_toggle(SCM rest);
167 SCM g_keys_script_console(SCM rest);
168 SCM g_keys_options_text_size(SCM rest);
169 SCM g_keys_options_afeedback(SCM rest);
170 SCM g_keys_options_grid(SCM rest);
171 SCM g_keys_options_snap(SCM rest);
172 SCM g_keys_options_snap_size(SCM rest);
173 SCM g_keys_options_scale_up_snap_size(SCM rest);
174 SCM g_keys_options_scale_down_snap_size(SCM rest);
175 SCM g_keys_options_rubberband(SCM rest);
176 SCM g_keys_options_magneticnet(SCM rest);
177 SCM g_keys_options_show_log_window(SCM rest);
178 SCM g_keys_options_show_coord_window(SCM rest);
179 SCM g_keys_misc(SCM rest);
180 SCM g_keys_misc2(SCM rest);
181 SCM g_keys_misc3(SCM rest);
182 SCM g_keys_help_about(SCM rest);
183 SCM g_keys_help_hotkeys(SCM rest);
184 SCM g_keys_cancel(SCM rest);
185 void g_init_keys ();
186 /* g_rc.c */
187 void g_rc_parse_gtkrc();
188 SCM g_rc_gschem_version(SCM version);
189 SCM g_rc_net_endpoint_mode(SCM mode);
190 SCM g_rc_net_midpoint_mode(SCM mode);
191 SCM g_rc_net_direction_mode(SCM mode);
192 SCM g_rc_net_selection_mode(SCM mode);
193 SCM g_rc_net_style(SCM mode);
194 SCM g_rc_bus_style(SCM mode);
195 SCM g_rc_pin_style(SCM mode);
196 SCM g_rc_line_style(SCM mode);
197 SCM g_rc_action_feedback_mode(SCM mode);
198 SCM g_rc_zoom_with_pan(SCM mode);
199 SCM g_rc_text_feedback(SCM mode);
200 SCM g_rc_text_display_zoomfactor(SCM zoomfactor);
201 SCM g_rc_scrollbar_update(SCM mode);
202 SCM g_rc_object_clipping(SCM mode);
203 SCM g_rc_logging(SCM mode);
204 SCM g_rc_embed_components(SCM mode);
205 SCM g_rc_component_dialog_attributes(SCM stringlist);
206 SCM g_rc_text_size(SCM size);
207 SCM g_rc_text_caps_style(SCM mode);
208 SCM g_rc_postscript_font_scale(SCM scale);
209 SCM g_rc_snap_size(SCM size);
210 SCM g_rc_logging_destination(SCM mode);
211 SCM g_rc_attribute_name(SCM path);
212 SCM g_rc_scrollbars(SCM mode);
213 SCM g_rc_paper_size(SCM width, SCM height);
214 SCM g_rc_paper_sizes(SCM papername, SCM scm_width, SCM scm_height);
215 SCM g_rc_output_type(SCM mode);
216 SCM g_rc_output_orientation(SCM mode);
217 SCM g_rc_image_color(SCM mode);
218 SCM g_rc_image_size(SCM width, SCM height);
219 SCM g_rc_output_color(SCM mode);
220 SCM g_rc_output_capstyle(SCM mode);
221 SCM g_rc_log_window(SCM mode);
222 SCM g_rc_log_window_type(SCM mode);
223 SCM g_rc_third_button(SCM mode);
224 SCM g_rc_middle_button(SCM mode);
225 SCM g_rc_scroll_wheel(SCM mode);
226 SCM g_rc_net_consolidate(SCM mode);
227 SCM g_rc_file_preview(SCM mode);
228 SCM g_rc_enforce_hierarchy(SCM mode);
229 SCM g_rc_text_origin_marker(SCM mode);
230 SCM g_rc_fast_mousepan(SCM mode);
231 SCM g_rc_raise_dialog_boxes_on_expose(SCM mode);
232 SCM g_rc_continue_component_place(SCM mode);
233 SCM g_rc_undo_levels(SCM levels);
234 SCM g_rc_undo_control(SCM mode);
235 SCM g_rc_undo_type(SCM mode);
236 SCM g_rc_undo_panzoom(SCM mode);
237 SCM g_rc_draw_grips(SCM mode);
238 SCM g_rc_netconn_rubberband(SCM mode);
239 SCM g_rc_magnetic_net_mode(SCM mode);
240 SCM g_rc_sort_component_library(SCM mode);
241 SCM g_rc_add_menu(SCM menu_name, SCM menu_items);
242 SCM g_rc_window_size(SCM width, SCM height);
243 SCM g_rc_warp_cursor(SCM mode);
244 SCM g_rc_toolbars(SCM mode);
245 SCM g_rc_handleboxes(SCM mode);
246 SCM g_rc_setpagedevice_orientation(SCM mode);
247 SCM g_rc_setpagedevice_pagesize(SCM mode);
248 SCM g_rc_bus_ripper_size(SCM size);
249 SCM g_rc_bus_ripper_type(SCM mode);
250 SCM g_rc_bus_ripper_rotation(SCM mode);
251 SCM g_rc_force_boundingbox(SCM mode);
252 SCM g_rc_dots_grid_dot_size(SCM dotsize);
253 SCM g_rc_dots_grid_mode(SCM mode);
254 SCM g_rc_dots_grid_fixed_threshold(SCM spacing);
255 SCM g_rc_mesh_grid_display_threshold(SCM spacing);
256 SCM g_rc_add_attribute_offset(SCM offset);
257 SCM g_rc_auto_save_interval(SCM seconds);
258 SCM g_rc_mousepan_gain(SCM mode);
259 SCM g_rc_keyboardpan_gain(SCM mode);
260 SCM g_rc_print_command(SCM mode);
261 SCM g_rc_select_slack_pixels(SCM pixels);
262 SCM g_rc_zoom_gain(SCM gain);
263 SCM g_rc_scrollpan_steps(SCM steps);
264 SCM g_rc_display_color_map (SCM scm_map);
265 SCM g_rc_display_outline_color_map (SCM scm_map);
266 /* g_register.c */
267 void g_register_funcs(void);
268 /* g_select.c */
269 void g_init_select ();
270 /* g_util.c */
271 void g_init_util ();
272 /* g_window.c */
273 GSCHEM_TOPLEVEL *g_current_window ();
274 void g_dynwind_window (GSCHEM_TOPLEVEL *w_current);
275 void g_init_window ();
276 /* globals.c */
277 /* gschem.c */
278 typedef void (*gschem_atexit_func)(gpointer data);
279 void gschem_atexit(gschem_atexit_func func, gpointer data);
280 void gschem_quit(void);
281 void main_prog(void *closure, int argc, char *argv[]);
282 int main(int argc, char *argv[]);
283 /* gschem_cairo.c */
284 void gschem_cairo_line(GSCHEM_TOPLEVEL *w_current, int line_end, int line_width, int x1, int y1, int x2, int y2);
285 void gschem_cairo_box(GSCHEM_TOPLEVEL *w_current, int line_width, int x1, int y1, int x2, int y2);
286 void gschem_cairo_center_box(GSCHEM_TOPLEVEL *w_current, int center_width, int line_width, int x1, int y1, int x2, int y2);
287 void gschem_cairo_arc(GSCHEM_TOPLEVEL *w_current, int line_width, int x, int y, int radius, int start_angle, int end_angle);
288 void gschem_cairo_center_arc(GSCHEM_TOPLEVEL *w_current, int center_width, int line_width, int x, int y, int radius, int start_angle, int end_angle);
289 void gschem_cairo_stroke(GSCHEM_TOPLEVEL *w_current, int line_type, int line_end, int width, int length, int space);
290 void gschem_cairo_set_source_color(GSCHEM_TOPLEVEL *w_current, COLOR *color);
291 /* i_basic.c */
292 void i_show_state(GSCHEM_TOPLEVEL *w_current, const char *message);
293 void i_set_state(GSCHEM_TOPLEVEL *w_current, enum x_states newstate);
294 void i_set_state_msg(GSCHEM_TOPLEVEL *w_current, enum x_states newstate, const char *message);
295 void i_update_middle_button(GSCHEM_TOPLEVEL *w_current, void (*func_ptr)(), const char *string);
296 void i_update_toolbar(GSCHEM_TOPLEVEL *w_current);
297 void i_update_menus(GSCHEM_TOPLEVEL *w_current);
298 void i_set_filename(GSCHEM_TOPLEVEL *w_current, const gchar *string);
299 void i_update_grid_info(GSCHEM_TOPLEVEL *w_current);
300 /* i_callbacks.c */
301 void i_callback_file_new(gpointer data, guint callback_action, GtkWidget *widget);
302 void i_callback_toolbar_file_new(GtkWidget *widget, gpointer data);
303 void i_callback_file_new_window(gpointer data, guint callback_action, GtkWidget *widget);
304 void i_callback_file_open(gpointer data, guint callback_action, GtkWidget *widget);
305 void i_callback_toolbar_file_open(GtkWidget *widget, gpointer data);
306 void i_callback_file_script(gpointer data, guint callback_action, GtkWidget *widget);
307 void i_callback_file_save(gpointer data, guint callback_action, GtkWidget *widget);
308 void i_callback_toolbar_file_save(GtkWidget *widget, gpointer data);
309 void i_callback_file_save_all(gpointer data, guint callback_action, GtkWidget *widget);
310 void i_callback_file_save_as(gpointer data, guint callback_action, GtkWidget *widget);
311 void i_callback_file_print(gpointer data, guint callback_action, GtkWidget *widget);
312 void i_callback_file_write_png(gpointer data, guint callback_action, GtkWidget *widget);
313 void i_callback_file_close(gpointer data, guint callback_action, GtkWidget *widget);
314 int i_callback_close(gpointer data, guint callback_action, GtkWidget *widget);
315 void i_callback_file_quit(gpointer data, guint callback_action, GtkWidget *widget);
316 void i_callback_edit_undo(gpointer data, guint callback_action, GtkWidget *widget);
317 void i_callback_toolbar_edit_undo(GtkWidget *widget, gpointer data);
318 void i_callback_edit_redo(gpointer data, guint callback_action, GtkWidget *widget);
319 void i_callback_toolbar_edit_redo(GtkWidget *widget, gpointer data);
320 void i_callback_edit_select(gpointer data, guint callback_action, GtkWidget *widget);
321 void i_callback_toolbar_edit_select(GtkWidget *widget, gpointer data);
322 void i_callback_edit_select_all(gpointer data, guint callback_action, GtkWidget *widget);
323 void i_callback_edit_deselect(gpointer data, guint callback_action, GtkWidget *widget);
324 void i_callback_edit_copy(gpointer data, guint callback_action, GtkWidget *widget);
325 void i_callback_edit_copy_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
326 void i_callback_edit_mcopy(gpointer data, guint callback_action, GtkWidget *widget);
327 void i_callback_edit_mcopy_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
328 void i_callback_edit_move(gpointer data, guint callback_action, GtkWidget *widget);
329 void i_callback_edit_move_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
330 void i_callback_edit_delete(gpointer data, guint callback_action, GtkWidget *widget);
331 void i_callback_edit_edit(gpointer data, guint callback_action, GtkWidget *widget);
332 void i_callback_edit_pin_type(gpointer data, guint callback_action, GtkWidget *widget);
333 void i_callback_edit_text(gpointer data, guint callback_action, GtkWidget *widget);
334 void i_callback_edit_slot(gpointer data, guint callback_action, GtkWidget *widget);
335 void i_callback_edit_color(gpointer data, guint callback_action, GtkWidget *widget);
336 void i_callback_edit_rotate_90(gpointer data, guint callback_action, GtkWidget *widget);
337 void i_callback_edit_rotate_90_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
338 void i_callback_edit_mirror(gpointer data, guint callback_action, GtkWidget *widget);
339 void i_callback_edit_mirror_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
340 void i_callback_edit_lock(gpointer data, guint callback_action, GtkWidget *widget);
341 void i_callback_edit_unlock(gpointer data, guint callback_action, GtkWidget *widget);
342 void i_callback_edit_translate(gpointer data, guint callback_action, GtkWidget *widget);
343 void i_callback_edit_invoke_macro(gpointer data, guint callback_action, GtkWidget *widget);
344 void i_callback_edit_embed(gpointer data, guint callback_action, GtkWidget *widget);
345 void i_callback_edit_unembed(gpointer data, guint callback_action, GtkWidget *widget);
346 void i_callback_edit_update(gpointer data, guint callback_action, GtkWidget *widget);
347 void i_callback_edit_show_hidden(gpointer data, guint callback_action, GtkWidget *widget);
348 void i_callback_edit_find(gpointer data, guint callback_action, GtkWidget *widget);
349 void i_callback_edit_hide_text(gpointer data, guint callback_action, GtkWidget *widget);
350 void i_callback_edit_show_text(gpointer data, guint callback_action, GtkWidget *widget);
351 void i_callback_edit_autonumber_text(gpointer data, guint callback_action, GtkWidget *widget);
352 void i_callback_edit_linetype(gpointer data, guint callback_action, GtkWidget *widget);
353 void i_callback_edit_filltype(gpointer data, guint callback_action, GtkWidget *widget);
354 void i_callback_view_redraw(gpointer data, guint callback_action, GtkWidget *widget);
355 void i_callback_view_zoom_full(gpointer data, guint callback_action, GtkWidget *widget);
356 void i_callback_view_zoom_extents(gpointer data, guint callback_action, GtkWidget *widget);
357 void i_callback_view_zoom_box(gpointer data, guint callback_action, GtkWidget *widget);
358 void i_callback_view_zoom_box_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
359 void i_callback_view_zoom_in(gpointer data, guint callback_action, GtkWidget *widget);
360 void i_callback_view_zoom_out(gpointer data, guint callback_action, GtkWidget *widget);
361 void i_callback_view_zoom_in_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
362 void i_callback_view_zoom_out_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
363 void i_callback_view_pan(gpointer data, guint callback_action, GtkWidget *widget);
364 void i_callback_view_pan_left(gpointer data, guint callback_action, GtkWidget *widget);
365 void i_callback_view_pan_right(gpointer data, guint callback_action, GtkWidget *widget);
366 void i_callback_view_pan_up(gpointer data, guint callback_action, GtkWidget *widget);
367 void i_callback_view_pan_down(gpointer data, guint callback_action, GtkWidget *widget);
368 void i_callback_view_pan_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
369 void i_callback_view_dark_colors(gpointer data, guint callback_action, GtkWidget *widget);
370 void i_callback_view_light_colors(gpointer data, guint callback_action, GtkWidget *widget);
371 void i_callback_view_bw_colors(gpointer data, guint callback_action, GtkWidget *widget);
372 void i_callback_page_manager(gpointer data, guint callback_action, GtkWidget *widget);
373 void i_callback_page_next(gpointer data, guint callback_action, GtkWidget *widget);
374 void i_callback_page_prev(gpointer data, guint callback_action, GtkWidget *widget);
375 void i_callback_page_new(gpointer data, guint callback_action, GtkWidget *widget);
376 void i_callback_page_close(gpointer data, guint callback_action, GtkWidget *widget);
377 void i_callback_page_revert(gpointer data, guint callback_action, GtkWidget *widget);
378 void i_callback_page_discard(gpointer data, guint callback_action, GtkWidget *widget);
379 void i_callback_page_print(gpointer data, guint callback_action, GtkWidget *widget);
380 void i_callback_clipboard_copy(gpointer data, guint callback_action, GtkWidget *widget);
381 void i_callback_clipboard_cut(gpointer data, guint callback_action, GtkWidget *widget);
382 void i_callback_clipboard_paste(gpointer data, guint callback_action, GtkWidget *widget);
383 void i_callback_clipboard_paste_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
384 void i_callback_buffer_copy1(gpointer data, guint callback_action, GtkWidget *widget);
385 void i_callback_buffer_copy2(gpointer data, guint callback_action, GtkWidget *widget);
386 void i_callback_buffer_copy3(gpointer data, guint callback_action, GtkWidget *widget);
387 void i_callback_buffer_copy4(gpointer data, guint callback_action, GtkWidget *widget);
388 void i_callback_buffer_copy5(gpointer data, guint callback_action, GtkWidget *widget);
389 void i_callback_buffer_cut1(gpointer data, guint callback_action, GtkWidget *widget);
390 void i_callback_buffer_cut2(gpointer data, guint callback_action, GtkWidget *widget);
391 void i_callback_buffer_cut3(gpointer data, guint callback_action, GtkWidget *widget);
392 void i_callback_buffer_cut4(gpointer data, guint callback_action, GtkWidget *widget);
393 void i_callback_buffer_cut5(gpointer data, guint callback_action, GtkWidget *widget);
394 void i_callback_buffer_paste1(gpointer data, guint callback_action, GtkWidget *widget);
395 void i_callback_buffer_paste2(gpointer data, guint callback_action, GtkWidget *widget);
396 void i_callback_buffer_paste3(gpointer data, guint callback_action, GtkWidget *widget);
397 void i_callback_buffer_paste4(gpointer data, guint callback_action, GtkWidget *widget);
398 void i_callback_buffer_paste5(gpointer data, guint callback_action, GtkWidget *widget);
399 void i_callback_buffer_paste1_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
400 void i_callback_buffer_paste2_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
401 void i_callback_buffer_paste3_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
402 void i_callback_buffer_paste4_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
403 void i_callback_buffer_paste5_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
404 void i_callback_add_component(gpointer data, guint callback_action, GtkWidget *widget);
405 void i_callback_toolbar_add_component(GtkWidget *widget, gpointer data);
406 void i_callback_add_attribute(gpointer data, guint callback_action, GtkWidget *widget);
407 void i_callback_add_attribute_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
408 void i_callback_add_net(gpointer data, guint callback_action, GtkWidget *widget);
409 void i_callback_add_net_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
410 void i_callback_toolbar_add_net(GtkWidget *widget, gpointer data);
411 void i_callback_add_bus(gpointer data, guint callback_action, GtkWidget *widget);
412 void i_callback_add_bus_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
413 void i_callback_toolbar_add_bus(GtkWidget *widget, gpointer data);
414 void i_callback_add_text(gpointer data, guint callback_action, GtkWidget *widget);
415 void i_callback_toolbar_add_text(GtkWidget *widget, gpointer data);
416 void i_callback_add_line(gpointer data, guint callback_action, GtkWidget *widget);
417 void i_callback_add_line_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
418 void i_callback_add_box(gpointer data, guint callback_action, GtkWidget *widget);
419 void i_callback_add_box_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
420 void i_callback_add_picture(gpointer data, guint callback_action, GtkWidget *widget);
421 void i_callback_add_picture_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
422 void i_callback_add_circle(gpointer data, guint callback_action, GtkWidget *widget);
423 void i_callback_add_circle_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
424 void i_callback_add_arc(gpointer data, guint callback_action, GtkWidget *widget);
425 void i_callback_add_arc_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
426 void i_callback_add_pin(gpointer data, guint callback_action, GtkWidget *widget);
427 void i_callback_add_pin_hotkey(gpointer data, guint callback_action, GtkWidget *widget);
428 void i_callback_hierarchy_down_schematic(gpointer data, guint callback_action, GtkWidget *widget);
429 void i_callback_hierarchy_down_symbol(gpointer data, guint callback_action, GtkWidget *widget);
430 void i_callback_hierarchy_up(gpointer data, guint callback_action, GtkWidget *widget);
431 void i_callback_attributes_attach(gpointer data, guint callback_action, GtkWidget *widget);
432 void i_callback_attributes_detach(gpointer data, guint callback_action, GtkWidget *widget);
433 void i_callback_attributes_show_name(gpointer data, guint callback_action, GtkWidget *widget);
434 void i_callback_attributes_show_value(gpointer data, guint callback_action, GtkWidget *widget);
435 void i_callback_attributes_show_both(gpointer data, guint callback_action, GtkWidget *widget);
436 void i_callback_attributes_visibility_toggle(gpointer data, guint callback_action, GtkWidget *widget);
437 void i_callback_script_console(gpointer data, guint callback_action, GtkWidget *widget);
438 void i_callback_options_text_size(gpointer data, guint callback_action, GtkWidget *widget);
439 void i_callback_options_snap_size(gpointer data, guint callback_action, GtkWidget *widget);
440 void i_callback_options_scale_up_snap_size(gpointer data, guint callback_action, GtkWidget *widget);
441 void i_callback_options_scale_down_snap_size(gpointer data, guint callback_action, GtkWidget *widget);
442 void i_callback_options_afeedback(gpointer data, guint callback_action, GtkWidget *widget);
443 void i_callback_options_grid(gpointer data, guint callback_action, GtkWidget *widget);
444 void i_callback_options_snap(gpointer data, guint callback_action, GtkWidget *widget);
445 void i_callback_options_rubberband(gpointer data, guint callback_action, GtkWidget *widget);
446 void i_callback_options_magneticnet(gpointer data, guint callback_action, GtkWidget *widget);
447 void i_callback_options_show_log_window(gpointer data, guint callback_action, GtkWidget *widget);
448 void i_callback_misc(gpointer data, guint callback_action, GtkWidget *widget);
449 void i_callback_misc2(gpointer data, guint callback_action, GtkWidget *widget);
450 void i_callback_misc3(gpointer data, guint callback_action, GtkWidget *widget);
451 void i_callback_cancel(gpointer data, guint callback_action, GtkWidget *widget);
452 void i_callback_help_about(gpointer data, guint callback_action, GtkWidget *widget);
453 void i_callback_help_hotkeys(gpointer data, guint callback_action, GtkWidget *widget);
454 void i_callback_options_show_coord_window(gpointer data, guint callback_action, GtkWidget *widget);
455 gboolean i_callback_close_wm(GtkWidget *widget, GdkEvent *event, gpointer data);
456 /* i_vars.c */
457 void i_vars_set(GSCHEM_TOPLEVEL *w_current);
458 void i_vars_freenames();
459 /* m_basic.c */
460 int mil_x(GSCHEM_TOPLEVEL *w_current, int val);
461 int mil_y(GSCHEM_TOPLEVEL *w_current, int val);
462 int pix_x(GSCHEM_TOPLEVEL *w_current, int val);
463 int pix_y(GSCHEM_TOPLEVEL *w_current, int val);
464 void WORLDtoSCREEN(GSCHEM_TOPLEVEL *w_current, int x, int y, int *px, int *py);
465 void SCREENtoWORLD(GSCHEM_TOPLEVEL *w_current, int mx, int my, int *x, int *y);
466 int snap_grid(GSCHEM_TOPLEVEL *w_current, int input);
467 int SCREENabs(GSCHEM_TOPLEVEL *w_current, int val);
468 int WORLDabs(GSCHEM_TOPLEVEL *w_current, int val);
469 int WORLDclip_change(GSCHEM_TOPLEVEL *w_current, int *x1, int *y1, int *x2, int *y2);
470 int clip_nochange(GSCHEM_TOPLEVEL *w_current, int x1, int y1, int x2, int y2);
471 int visible(GSCHEM_TOPLEVEL *w_current, int wleft, int wtop, int wright, int wbottom);
472 double round_5_2_1(double unrounded);
473 /* o_arc.c */
474 void o_arc_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
475 void o_arc_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
476 void o_arc_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
477 void o_arc_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
478 void o_arc_end1(GSCHEM_TOPLEVEL *w_current, int x, int y);
479 void o_arc_end4(GSCHEM_TOPLEVEL *w_current, int radius, int start_angle, int end_angle);
480 void o_arc_motion(GSCHEM_TOPLEVEL *w_current, int x, int y, int whichone);
481 void o_arc_draw_rubber(GSCHEM_TOPLEVEL *w_current);
482 void o_arc_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
483 /* o_attrib.c */
484 void o_attrib_add_selected(GSCHEM_TOPLEVEL *w_current, SELECTION *selection, OBJECT *selected);
485 void o_attrib_deselect_invisible(GSCHEM_TOPLEVEL *w_current, SELECTION *selection, OBJECT *selected);
486 void o_attrib_toggle_visibility(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
487 void o_attrib_toggle_show_name_value(GSCHEM_TOPLEVEL *w_current, OBJECT *object, int new_show_name_value);
488 OBJECT *o_attrib_add_attrib(GSCHEM_TOPLEVEL *w_current, const char *text_string, int visibility, int show_name_value, OBJECT *object);
489 /* o_basic.c */
490 void o_redraw_rects(GSCHEM_TOPLEVEL *w_current, GdkRectangle *rectangles, int n_rectangles);
491 void o_redraw(GSCHEM_TOPLEVEL *w_current, GList *object_list, gboolean draw_selected);
492 void o_redraw_single(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
493 int o_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
494 int o_redraw_cleanstates(GSCHEM_TOPLEVEL *w_current);
495 void o_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *object);
496 void o_glist_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, GList *list);
497 void o_invalidate_rect(GSCHEM_TOPLEVEL *w_current, int x1, int y1, int x2, int y2);
498 void o_invalidate_all(GSCHEM_TOPLEVEL *w_current);
499 void o_invalidate(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
500 void o_invalidate_glist(GSCHEM_TOPLEVEL *w_current, GList *list);
501 COLOR *o_drawing_color(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
502 /* o_box.c */
503 void o_box_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
504 void o_box_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
505 void o_box_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
506 void o_box_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
507 void o_box_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
508 void o_box_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
509 void o_box_draw_rubber(GSCHEM_TOPLEVEL *w_current);
510 void o_box_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
511 /* o_buffer.c */
512 void o_buffer_copy(GSCHEM_TOPLEVEL *w_current, int buf_num);
513 void o_buffer_cut(GSCHEM_TOPLEVEL *w_current, int buf_num);
514 void o_buffer_paste_start(GSCHEM_TOPLEVEL *w_current, int x, int y, int buf_num);
515 void o_buffer_init(void);
516 void o_buffer_free(GSCHEM_TOPLEVEL *w_current);
517 /* o_bus.c */
518 void o_bus_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
519 void o_bus_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
520 void o_bus_draw_stretch(GSCHEM_TOPLEVEL *w_current, int dx, int dy, int whichone, OBJECT *o_current);
521 void o_bus_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
522 int o_bus_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
523 void o_bus_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
524 void o_bus_draw_rubber(GSCHEM_TOPLEVEL *w_current);
525 void o_bus_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
526 /* o_circle.c */
527 void o_circle_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
528 void o_circle_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
529 void o_circle_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
530 void o_circle_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
531 void o_circle_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
532 void o_circle_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
533 void o_circle_draw_rubber(GSCHEM_TOPLEVEL *w_current);
534 void o_circle_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
535 /* o_complex.c */
536 void o_complex_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
537 void o_complex_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *complex);
538 void o_complex_prepare_place(GSCHEM_TOPLEVEL *w_current, const CLibSymbol *sym);
539 void o_complex_place_changed_run_hook(GSCHEM_TOPLEVEL *w_current);
540 void o_complex_translate_all(GSCHEM_TOPLEVEL *w_current, int offset);
541 /* o_copy.c */
542 void o_copy_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
543 void o_copy_end(GSCHEM_TOPLEVEL *w_current);
544 void o_copy_multiple_end(GSCHEM_TOPLEVEL *w_current);
545 /* o_cue.c */
546 void o_cue_redraw_all(GSCHEM_TOPLEVEL *w_current, GList *list, gboolean draw_selected);
547 void o_cue_draw_lowlevel(GSCHEM_TOPLEVEL *w_current, OBJECT *object, int whichone);
548 void o_cue_draw_lowlevel_midpoints(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
549 void o_cue_draw_single(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
550 void o_cue_draw_list(GSCHEM_TOPLEVEL *w_current, GList *object_list);
551 /* o_delete.c */
552 void o_delete(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
553 void o_delete_selected(GSCHEM_TOPLEVEL *w_current);
554 /* o_find.c */
555 gboolean o_find_object(GSCHEM_TOPLEVEL *w_current, int x, int y,
556 gboolean deselect_afterwards);
557 gboolean o_find_selected_object(GSCHEM_TOPLEVEL *w_current, int x, int y);
558 /* o_grips.c */
559 OBJECT *o_grips_search_world(GSCHEM_TOPLEVEL *w_current, int x, int y, int *whichone);
560 OBJECT *o_grips_search_arc_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
561 OBJECT *o_grips_search_box_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
562 OBJECT *o_grips_search_path_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
563 OBJECT *o_grips_search_picture_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
564 OBJECT *o_grips_search_circle_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
565 OBJECT *o_grips_search_line_world(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int x, int y, int size, int *whichone);
566 int o_grips_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
567 void o_grips_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
568 void o_grips_end(GSCHEM_TOPLEVEL *w_current);
569 void o_grips_cancel(GSCHEM_TOPLEVEL *w_current);
570 int o_grips_size(GSCHEM_TOPLEVEL *w_current);
571 void o_grips_draw(GSCHEM_TOPLEVEL *w_current, int x, int y);
572 void o_grips_draw_rubber(GSCHEM_TOPLEVEL *w_current);
573 /* o_line.c */
574 void o_line_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
575 void o_line_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
576 void o_line_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
577 void o_line_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
578 void o_line_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
579 void o_line_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
580 void o_line_draw_rubber(GSCHEM_TOPLEVEL *w_current);
581 void o_line_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
582 int o_line_visible(GSCHEM_TOPLEVEL *w_current, LINE *line, int *x1, int *y1, int *x2, int *y2);
583 /* o_misc.c */
584 void o_edit(GSCHEM_TOPLEVEL *w_current, GList *list);
585 void o_lock(GSCHEM_TOPLEVEL *w_current);
586 void o_unlock(GSCHEM_TOPLEVEL *w_current);
587 void o_rotate_world_update(GSCHEM_TOPLEVEL *w_current, int centerx, int centery, int angle, GList *list);
588 void o_mirror_world_update(GSCHEM_TOPLEVEL *w_current, int centerx, int centery, GList *list);
589 void o_edit_show_hidden_lowlevel(GSCHEM_TOPLEVEL *w_current, const GList *o_list);
590 void o_edit_show_hidden(GSCHEM_TOPLEVEL *w_current, const GList *o_list);
591 int o_edit_find_text(GSCHEM_TOPLEVEL *w_current, const GList *o_list, char *stext, int descend, int skip);
592 void o_edit_hide_specific_text(GSCHEM_TOPLEVEL *w_current, const GList *o_list, char *stext);
593 void o_edit_show_specific_text(GSCHEM_TOPLEVEL *w_current, const GList *o_list, char *stext);
594 OBJECT *o_update_component(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
595 void o_autosave_backups(GSCHEM_TOPLEVEL *w_current);
596 /* o_move.c */
597 void o_move_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
598 void o_move_end_lowlevel(GSCHEM_TOPLEVEL *w_current, OBJECT *object, int diff_x, int diff_y);
599 void o_move_end(GSCHEM_TOPLEVEL *w_current);
600 void o_move_cancel(GSCHEM_TOPLEVEL *w_current);
601 void o_move_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
602 void o_move_invalidate_rubber(GSCHEM_TOPLEVEL *w_current, int drawing);
603 void o_move_draw_rubber(GSCHEM_TOPLEVEL *w_current, int drawing);
604 int o_move_return_whichone(OBJECT *object, int x, int y);
605 void o_move_check_endpoint(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
606 void o_move_prep_rubberband(GSCHEM_TOPLEVEL *w_current);
607 int o_move_zero_length(OBJECT *object);
608 void o_move_end_rubberband(GSCHEM_TOPLEVEL *w_current, int world_diff_x, int world_diff_y, GList **objects);
609 /* o_net.c */
610 void o_net_reset(GSCHEM_TOPLEVEL *w_current);
611 void o_net_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
612 void o_net_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
613 void o_net_draw_stretch(GSCHEM_TOPLEVEL *w_current, int dx, int dy, int whichone, OBJECT *o_current);
614 void o_net_guess_direction(GSCHEM_TOPLEVEL *w_current, int x, int y);
615 void o_net_find_magnetic(GSCHEM_TOPLEVEL *w_current, int event_x, int event_y);
616 void o_net_finishmagnetic(GSCHEM_TOPLEVEL *w_current);
617 void o_net_start_magnetic(GSCHEM_TOPLEVEL *w_current, int x, int y);
618 void o_net_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
619 int o_net_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
620 void o_net_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
621 void o_net_draw_rubber(GSCHEM_TOPLEVEL *w_current);
622 void o_net_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
623 int o_net_add_busrippers(GSCHEM_TOPLEVEL *w_current, OBJECT *net_obj, GList *other_objects);
624 /* o_picture.c */
625 void o_picture_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
626 void o_picture_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
627 void o_picture_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
628 void picture_selection_dialog (GSCHEM_TOPLEVEL *w_current);
629 void o_picture_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
630 void o_picture_draw_rubber(GSCHEM_TOPLEVEL *w_current);
631 void o_picture_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
632 void o_picture_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
633 void o_picture_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
634 void o_picture_exchange(GSCHEM_TOPLEVEL *w_current, GdkPixbuf *pixbuf, const gchar *filename);
635 void picture_change_filename_dialog (GSCHEM_TOPLEVEL *w_current);
636 void o_picture_set_pixbuf(GSCHEM_TOPLEVEL *w_current, GdkPixbuf *pixbuf, char *filename);
638 /* o_path.c */
639 void o_path_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
640 void o_path_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
641 void o_path_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
642 void o_path_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
643 void o_path_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
644 void o_path_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
645 void o_path_draw_rubber(GSCHEM_TOPLEVEL *w_current);
646 void o_path_draw_grips(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
648 /* o_pin.c */
649 void o_pin_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
650 void o_pin_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
651 void o_pin_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
652 void o_pin_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
653 void o_pin_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
654 void o_pin_draw_rubber(GSCHEM_TOPLEVEL *w_current);
655 void o_pin_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
656 /* o_place.c */
657 void o_place_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
658 void o_place_end(GSCHEM_TOPLEVEL *w_current, int x, int y, int continue_placing, GList **ret_new_objects, const char *hook_name);
659 void o_place_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
660 void o_place_invalidate_rubber(GSCHEM_TOPLEVEL *w_current, int drawing);
661 void o_place_draw_rubber(GSCHEM_TOPLEVEL *w_current, int drawing);
662 void o_place_rotate(GSCHEM_TOPLEVEL *w_current);
663 /* o_select.c */
664 void o_select_run_hooks(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int flag);
665 void o_select_object(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current, int type, int count);
666 int o_select_box_start(GSCHEM_TOPLEVEL *w_current, int x, int y);
667 void o_select_box_end(GSCHEM_TOPLEVEL *w_current, int x, int y);
668 void o_select_box_motion(GSCHEM_TOPLEVEL *w_current, int x, int y);
669 void o_select_box_invalidate_rubber(GSCHEM_TOPLEVEL *w_current);
670 void o_select_box_draw_rubber(GSCHEM_TOPLEVEL *w_current);
671 void o_select_box_search(GSCHEM_TOPLEVEL *w_current);
672 void o_select_connected_nets(GSCHEM_TOPLEVEL *w_current, OBJECT* o_current);
673 OBJECT *o_select_return_first_object(GSCHEM_TOPLEVEL *w_current);
674 int o_select_selected(GSCHEM_TOPLEVEL *w_current);
675 void o_select_unselect_all(GSCHEM_TOPLEVEL *w_current);
676 void o_select_visible_unlocked(GSCHEM_TOPLEVEL *w_current);
677 void o_select_move_to_place_list(GSCHEM_TOPLEVEL *w_current);
678 /* o_slot.c */
679 void o_slot_start(GSCHEM_TOPLEVEL *w_current, OBJECT *object);
680 void o_slot_end(GSCHEM_TOPLEVEL *w_current, OBJECT *object, const char *string);
681 /* o_text.c */
682 int o_text_get_rendered_bounds(void *user_data, OBJECT *object, int *min_x, int *min_y, int *max_x, int *max_y);
683 void o_text_draw(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
684 void o_text_draw_place(GSCHEM_TOPLEVEL *w_current, int dx, int dy, OBJECT *o_current);
685 void o_text_prepare_place(GSCHEM_TOPLEVEL *w_current, char *text);
686 void o_text_edit(GSCHEM_TOPLEVEL *w_current, OBJECT *o_current);
687 void o_text_edit_end(GSCHEM_TOPLEVEL *w_current, char *string, int len, int text_size, int text_alignment);
688 void o_text_change(GSCHEM_TOPLEVEL *w_current, OBJECT *object, char *string, int visibility, int show);
689 /* o_undo.c */
690 void o_undo_init(void);
691 void o_undo_savestate(GSCHEM_TOPLEVEL *w_current, int flag);
692 char *o_undo_find_prev_filename(UNDO *start);
693 GList *o_undo_find_prev_object_head(UNDO *start);
694 void o_undo_callback(GSCHEM_TOPLEVEL *w_current, int type);
695 void o_undo_cleanup(void);
696 void o_undo_remove_last_undo(GSCHEM_TOPLEVEL *w_current);
697 /* parsecmd.c */
698 int parse_commandline(int argc, char *argv[]);
699 /* s_stretch.c */
700 GList *s_stretch_add(GList *list, OBJECT *object, int whichone);
701 GList *s_stretch_remove(GList *list, OBJECT *object);
702 void s_stretch_print_all(GList *list);
703 void s_stretch_destroy_all(GList *list);
704 /* x_attribedit.c */
705 gint option_menu_get_history(GtkOptionMenu *option_menu);
706 void attrib_edit_dialog_ok(GtkWidget *w, GSCHEM_TOPLEVEL *w_current);
707 void attrib_edit_dialog(GSCHEM_TOPLEVEL *w_current, OBJECT *attr_obj, int flag);
708 /* x_autonumber.c */
709 void autonumber_text_dialog(GSCHEM_TOPLEVEL *w_current);
710 /* x_basic.c */
711 void x_repaint_background_region(GSCHEM_TOPLEVEL *w_current, int x, int y, int width, int height);
712 void x_hscrollbar_set_ranges(GSCHEM_TOPLEVEL *w_current);
713 void x_hscrollbar_update(GSCHEM_TOPLEVEL *w_current);
714 void x_vscrollbar_set_ranges(GSCHEM_TOPLEVEL *w_current);
715 void x_vscrollbar_update(GSCHEM_TOPLEVEL *w_current);
716 void x_scrollbars_update(GSCHEM_TOPLEVEL *w_current);
717 void x_basic_warp_cursor(GtkWidget *widget, gint x, gint y);
718 /* x_clipboard.c */
719 void x_clipboard_init (GSCHEM_TOPLEVEL *w_current);
720 void x_clipboard_finish (GSCHEM_TOPLEVEL *w_current);
721 void x_clipboard_query_usable (GSCHEM_TOPLEVEL *w_current, void (*callback) (int, void *), void *userdata);
722 gboolean x_clipboard_set (GSCHEM_TOPLEVEL *w_current, const GList *object_list);
723 GList *x_clipboard_get (GSCHEM_TOPLEVEL *w_current);
724 /* x_color.c */
725 void x_color_init (void);
726 void x_color_free (void);
727 void x_color_allocate (void);
728 GdkColor *x_get_color(int color);
729 GdkColor *x_get_darkcolor(int color);
730 COLOR *x_color_lookup(int color);
731 COLOR *x_color_lookup_dark(int color);
732 gchar *x_color_get_name(int index);
733 gboolean x_color_display_enabled (int index);
734 /* x_dialog.c */
735 int text_view_calculate_real_tab_width(GtkTextView *textview, int tab_size);
736 void select_all_text_in_textview(GtkTextView *textview);
737 void destroy_window(GtkWidget *widget, GtkWidget **window);
738 void text_input_dialog_apply(GtkWidget *w, GSCHEM_TOPLEVEL *w_current);
739 void text_input_dialog(GSCHEM_TOPLEVEL *w_current);
740 gint change_alignment(GtkComboBox *w, GSCHEM_TOPLEVEL *w_current);
741 void text_edit_dialog_ok(GtkWidget *w, GSCHEM_TOPLEVEL *w_current);
742 void text_edit_dialog(GSCHEM_TOPLEVEL *w_current, const char *string, int text_size, int text_alignment);
743 void line_type_dialog(GSCHEM_TOPLEVEL *w_current);
744 void fill_type_dialog(GSCHEM_TOPLEVEL *w_current);
745 void arc_angle_dialog(GSCHEM_TOPLEVEL *w_current, OBJECT *arc_object);
746 void translate_dialog(GSCHEM_TOPLEVEL *w_current);
747 void text_size_dialog(GSCHEM_TOPLEVEL *w_current);
748 void snap_size_dialog(GSCHEM_TOPLEVEL *w_current);
749 void slot_edit_dialog(GSCHEM_TOPLEVEL *w_current, const char *string);
750 void about_dialog(GSCHEM_TOPLEVEL *w_current);
751 void coord_display_update(GSCHEM_TOPLEVEL *w_current, int x, int y);
752 void coord_dialog(GSCHEM_TOPLEVEL *w_current, int x, int y);
753 gint color_set(GtkWidget *w, gpointer data);
754 char *index2functionstring(int index);
755 void color_edit_dialog_apply(GtkWidget *w, GSCHEM_TOPLEVEL *w_current);
756 void color_edit_dialog(GSCHEM_TOPLEVEL *w_current);
757 void x_dialog_hotkeys(GSCHEM_TOPLEVEL *w_current);
758 void x_dialog_raise_all(GSCHEM_TOPLEVEL *w_current);
760 void generic_msg_dialog(const char *);
761 int generic_confirm_dialog(const char *);
762 char * generic_filesel_dialog(const char *, const char *, gint);
764 void find_text_dialog(GSCHEM_TOPLEVEL *w_current);
765 void hide_text_dialog(GSCHEM_TOPLEVEL *w_current);
766 void show_text_dialog(GSCHEM_TOPLEVEL *w_current);
767 void major_changed_dialog(GSCHEM_TOPLEVEL* w_current);
768 void x_dialog_close_changed_page (GSCHEM_TOPLEVEL *w_current, PAGE *page);
769 gboolean x_dialog_close_window (GSCHEM_TOPLEVEL *w_current);
770 int x_dialog_validate_attribute(GtkWindow* parent, char *attribute);
771 void x_dialog_edit_pin_type(GSCHEM_TOPLEVEL *w_current, const GList *obj_list);
772 /* x_event.c */
773 gint x_event_expose(GtkWidget *widget, GdkEventExpose *event, GSCHEM_TOPLEVEL *w_current);
774 gint x_event_button_pressed(GtkWidget *widget, GdkEventButton *event, GSCHEM_TOPLEVEL *w_current);
775 gint x_event_button_released(GtkWidget *widget, GdkEventButton *event, GSCHEM_TOPLEVEL *w_current);
776 gint x_event_motion(GtkWidget *widget, GdkEventMotion *event, GSCHEM_TOPLEVEL *w_current);
777 gboolean x_event_configure (GtkWidget *widget, GdkEventConfigure *event, gpointer user_data);
778 void x_manual_resize(GSCHEM_TOPLEVEL *w_current);
779 void x_event_hschanged(GtkAdjustment *adj, GSCHEM_TOPLEVEL *w_current);
780 void x_event_vschanged(GtkAdjustment *adj, GSCHEM_TOPLEVEL *w_current);
781 gint x_event_enter(GtkWidget *widget, GdkEventCrossing *event, GSCHEM_TOPLEVEL *w_current);
782 gboolean x_event_key(GtkWidget *widget, GdkEventKey *event, GSCHEM_TOPLEVEL *w_current);
783 gint x_event_scroll(GtkWidget *widget, GdkEventScroll *event, GSCHEM_TOPLEVEL *w_current);
784 gboolean x_event_get_pointer_position (GSCHEM_TOPLEVEL *w_current, gboolean snapped, gint *wx, gint *wy);
785 /* x_compselect.c */
786 void x_compselect_open (GSCHEM_TOPLEVEL *w_current);
787 void x_compselect_close (GSCHEM_TOPLEVEL *w_current);
788 void x_compselect_deselect (GSCHEM_TOPLEVEL *w_current);
789 /* x_fileselect.c */
790 void x_fileselect_open(GSCHEM_TOPLEVEL *w_current);
791 void x_fileselect_save(GSCHEM_TOPLEVEL *w_current);
792 int x_fileselect_load_backup(void *user_data, GString *message);
793 /* x_grid.c */
794 void x_grid_draw_region(GSCHEM_TOPLEVEL *w_current, int x, int y, int width, int height);
795 int x_grid_query_drawn_spacing(GSCHEM_TOPLEVEL *w_current);
796 void x_draw_tiles(GSCHEM_TOPLEVEL *w_current);
797 /* x_image.c */
798 void x_image_lowlevel(GSCHEM_TOPLEVEL *w_current, const char* filename,
799 int desired_width, int desired_height, char *filetype);
800 void x_image_setup(GSCHEM_TOPLEVEL *w_current);
801 GdkPixbuf *x_image_get_pixbuf (GSCHEM_TOPLEVEL *w_current);
802 /* x_log.c */
803 void x_log_open ();
804 void x_log_close ();
805 void x_log_message (const gchar *log_domain,
806 GLogLevelFlags log_level,
807 const gchar *message);
808 /* x_misc.c */
809 gboolean x_show_uri (GSCHEM_TOPLEVEL *w_current, const gchar *buf, GError **err);
810 /* x_menus.c */
811 GtkWidget *get_main_menu(GSCHEM_TOPLEVEL *w_current);
812 GtkWidget *get_main_popup(GSCHEM_TOPLEVEL *w_current);
813 gint do_popup(GSCHEM_TOPLEVEL *w_current, GdkEventButton *event);
814 void x_menus_sensitivity(GSCHEM_TOPLEVEL *w_current, const char *buf, int flag);
815 void x_menus_popup_sensitivity(GSCHEM_TOPLEVEL *w_current, const char *buf, int flag);
816 void x_menu_attach_recent_files_submenu(GSCHEM_TOPLEVEL *w_current);
817 /* x_multiattrib.c */
818 void x_multiattrib_open (GSCHEM_TOPLEVEL *w_current);
819 void x_multiattrib_close (GSCHEM_TOPLEVEL *w_current);
820 void x_multiattrib_update (GSCHEM_TOPLEVEL *w_current);
821 /* x_multimulti.c */
822 /* x_pagesel.c */
823 void x_pagesel_open (GSCHEM_TOPLEVEL *w_current);
824 void x_pagesel_close (GSCHEM_TOPLEVEL *w_current);
825 void x_pagesel_update (GSCHEM_TOPLEVEL *w_current);
826 /* x_preview.c */
827 /* x_print.c */
828 void x_print_setup(GSCHEM_TOPLEVEL *w_current, char *filename);
829 /* x_rc.c */
830 void x_rc_parse_gschem (GSCHEM_TOPLEVEL *w_current, const gchar *rcfile);
831 /* x_script.c */
832 void setup_script_selector(GSCHEM_TOPLEVEL *w_current);
833 /* x_stroke.c */
834 void x_stroke_init (void);
835 void x_stroke_free (void);
836 void x_stroke_record (GSCHEM_TOPLEVEL *w_current, gint x, gint y);
837 gint x_stroke_translate_and_execute (GSCHEM_TOPLEVEL *w_current);
838 /* x_window.c */
839 void x_window_setup (GSCHEM_TOPLEVEL *w_current);
840 void x_window_setup_gc(GSCHEM_TOPLEVEL *w_current);
841 void x_window_free_gc(GSCHEM_TOPLEVEL *w_current);
842 void x_window_create_drawing(GtkWidget *drawbox, GSCHEM_TOPLEVEL *w_current);
843 void x_window_setup_draw_events(GSCHEM_TOPLEVEL *w_current);
844 void x_window_create_main(GSCHEM_TOPLEVEL *w_current);
845 void x_window_close(GSCHEM_TOPLEVEL *w_current);
846 void x_window_close_all(GSCHEM_TOPLEVEL *w_current);
847 PAGE *x_window_open_page (GSCHEM_TOPLEVEL *w_current, const gchar *filename);
848 void x_window_set_current_page (GSCHEM_TOPLEVEL *w_current, PAGE *page);
849 gint x_window_save_page (GSCHEM_TOPLEVEL *w_current, PAGE *page, const gchar *filename);
850 void x_window_close_page (GSCHEM_TOPLEVEL *w_current, PAGE *page);
851 void x_window_set_default_icon (void);