4 void a_zoom(GschemToplevel
*w_current
, GschemPageView
*page_view
, int dir
, int selected_from
);
5 void a_zoom_box_start(GschemToplevel
*w_current
, int x
, int y
);
6 void a_zoom_box_end(GschemToplevel
*w_current
, int x
, int y
);
7 void a_zoom_box_motion(GschemToplevel
*w_current
, int x
, int y
);
8 void a_zoom_box_invalidate_rubber(GschemToplevel
*w_current
);
9 void a_zoom_box_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
11 gboolean
g_action_get_position (gboolean snap
, int *x
, int *y
);
13 void g_init_attrib ();
15 SCM
g_funcs_pdf(SCM filename
);
16 SCM
g_funcs_image(SCM filename
);
17 SCM
g_funcs_exit(void);
18 SCM
g_funcs_log(SCM msg
);
19 SCM
g_funcs_msg(SCM msg
);
20 SCM
g_funcs_confirm(SCM msg
);
21 SCM
g_funcs_filesel(SCM msg
, SCM templ
, SCM flags
);
22 SCM
g_funcs_use_rc_values(void);
25 void g_run_hook_object (GschemToplevel
*w_current
, const char *name
, OBJECT
*obj
);
26 void g_run_hook_object_list (GschemToplevel
*w_current
, const char *name
, GList
*obj_lst
);
27 void g_run_hook_page (GschemToplevel
*w_current
, const char *name
, PAGE
*page
);
28 EdascmHookProxy
*g_hook_new_proxy_by_name (const char *name
);
30 void g_keys_reset (GschemToplevel
*w_current
);
31 int g_keys_execute(GschemToplevel
*w_current
, GdkEventKey
*event
);
34 void g_rc_parse_gtkrc();
35 SCM
g_rc_gschem_version(SCM version
);
36 SCM
g_rc_net_direction_mode(SCM mode
);
37 SCM
g_rc_net_selection_mode(SCM mode
);
38 SCM
g_rc_action_feedback_mode(SCM mode
);
39 SCM
g_rc_zoom_with_pan(SCM mode
);
40 SCM
g_rc_logging(SCM mode
);
41 SCM
g_rc_embed_components(SCM mode
);
42 SCM
g_rc_text_size(SCM size
);
43 SCM
g_rc_text_caps_style(SCM mode
);
44 SCM
g_rc_snap_size(SCM size
);
45 SCM
g_rc_logging_destination(SCM mode
);
46 SCM
g_rc_attribute_name(SCM path
);
47 SCM
g_rc_scrollbars(SCM mode
);
48 SCM
g_rc_image_color(SCM mode
);
49 SCM
g_rc_image_size(SCM width
, SCM height
);
50 SCM
g_rc_log_window(SCM mode
);
51 SCM
g_rc_log_window_type(SCM mode
);
52 SCM
g_rc_third_button(SCM mode
);
53 SCM
g_rc_third_button_cancel(SCM mode
);
54 SCM
g_rc_middle_button(SCM mode
);
55 SCM
g_rc_scroll_wheel(SCM mode
);
56 SCM
g_rc_net_consolidate(SCM mode
);
57 SCM
g_rc_file_preview(SCM mode
);
58 SCM
g_rc_enforce_hierarchy(SCM mode
);
59 SCM
g_rc_fast_mousepan(SCM mode
);
60 SCM
g_rc_raise_dialog_boxes_on_expose(SCM mode
);
61 SCM
g_rc_continue_component_place(SCM mode
);
62 SCM
g_rc_undo_levels(SCM levels
);
63 SCM
g_rc_undo_control(SCM mode
);
64 SCM
g_rc_undo_type(SCM mode
);
65 SCM
g_rc_undo_panzoom(SCM mode
);
66 SCM
g_rc_draw_grips(SCM mode
);
67 SCM
g_rc_netconn_rubberband(SCM mode
);
68 SCM
g_rc_magnetic_net_mode(SCM mode
);
69 SCM
g_rc_window_size(SCM width
, SCM height
);
70 SCM
g_rc_warp_cursor(SCM mode
);
71 SCM
g_rc_toolbars(SCM mode
);
72 SCM
g_rc_handleboxes(SCM mode
);
73 SCM
g_rc_bus_ripper_size(SCM size
);
74 SCM
g_rc_bus_ripper_type(SCM mode
);
75 SCM
g_rc_bus_ripper_rotation(SCM mode
);
76 SCM
g_rc_force_boundingbox(SCM mode
);
77 SCM
g_rc_grid_mode(SCM mode
);
78 SCM
g_rc_dots_grid_dot_size(SCM dotsize
);
79 SCM
g_rc_dots_grid_mode(SCM mode
);
80 SCM
g_rc_dots_grid_fixed_threshold(SCM spacing
);
81 SCM
g_rc_mesh_grid_display_threshold(SCM spacing
);
82 SCM
g_rc_add_attribute_offset(SCM offset
);
83 SCM
g_rc_auto_save_interval(SCM seconds
);
84 SCM
g_rc_mousepan_gain(SCM mode
);
85 SCM
g_rc_keyboardpan_gain(SCM mode
);
86 SCM
g_rc_select_slack_pixels(SCM pixels
);
87 SCM
g_rc_zoom_gain(SCM gain
);
88 SCM
g_rc_scrollpan_steps(SCM steps
);
89 SCM
g_rc_display_color_map (SCM scm_map
);
90 SCM
g_rc_display_outline_color_map (SCM scm_map
);
92 void g_register_funcs(void);
94 void g_init_select ();
98 GschemToplevel
*g_current_window ();
99 void g_dynwind_window (GschemToplevel
*w_current
);
100 void g_init_window ();
103 typedef void (*gschem_atexit_func
)(gpointer data
);
104 void gschem_atexit(gschem_atexit_func func
, gpointer data
);
105 void main_prog(void *closure
, int argc
, char *argv
[]);
106 int main(int argc
, char *argv
[]);
108 void i_action_start(GschemToplevel
*w_current
);
109 void i_action_stop(GschemToplevel
*w_current
);
110 void i_action_update_status(GschemToplevel
*w_current
,gboolean inside_action
);
111 void i_show_state(GschemToplevel
*w_current
, const char *message
);
112 void i_set_state(GschemToplevel
*w_current
, enum x_states newstate
);
113 void i_set_state_msg(GschemToplevel
*w_current
, enum x_states newstate
, const char *message
);
114 void i_update_middle_button(GschemToplevel
*w_current
, GschemAction
*action
, const char *string
);
115 void i_update_toolbar(GschemToplevel
*w_current
);
116 void i_update_menus(GschemToplevel
*w_current
);
117 void i_update_filename(GschemToplevel
*w_current
);
118 void i_update_grid_info(GschemToplevel
*w_current
);
119 void i_update_grid_info_callback (GschemPageView
*view
, GschemToplevel
*w_current
);
120 void i_cancel(GschemToplevel
*w_current
);
121 void i_buffer_copy(GschemToplevel
*w_current
, int n
, GschemAction
*action
);
122 void i_buffer_cut(GschemToplevel
*w_current
, int n
, GschemAction
*action
);
123 void i_buffer_paste(GschemToplevel
*w_current
, int n
, GschemAction
*action
);
125 void i_vars_set(GschemToplevel
*w_current
);
126 void i_vars_freenames();
127 void i_vars_init_gschem_defaults (void);
128 void i_vars_atexit_save_user_config (gpointer user_data
);
130 int snap_grid(GschemToplevel
*w_current
, int input
);
131 int clip_nochange(GschemPageGeometry
*geometry
, int x1
, int y1
, int x2
, int y2
);
132 int visible(GschemToplevel
*w_current
, int wleft
, int wtop
, int wright
, int wbottom
);
133 double round_5_2_1(double unrounded
);
135 void o_arc_invalidate_rubber(GschemToplevel
*w_current
);
136 void o_arc_start(GschemToplevel
*w_current
, int x
, int y
);
137 void o_arc_end1(GschemToplevel
*w_current
, int x
, int y
);
138 void o_arc_end4(GschemToplevel
*w_current
, int radius
, int start_angle
, int sweep_angle
);
139 void o_arc_motion(GschemToplevel
*w_current
, int x
, int y
, int whichone
);
140 void o_arc_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
142 void o_attrib_add_selected(GschemToplevel
*w_current
, SELECTION
*selection
, OBJECT
*selected
);
143 void o_attrib_deselect_invisible(GschemToplevel
*w_current
, SELECTION
*selection
, OBJECT
*selected
);
144 void o_attrib_select_invisible(GschemToplevel
*w_current
, SELECTION
*selection
, OBJECT
*selected
);
145 void o_attrib_toggle_visibility(GschemToplevel
*w_current
, OBJECT
*object
);
146 void o_attrib_toggle_show_name_value(GschemToplevel
*w_current
, OBJECT
*object
, int new_show_name_value
);
147 OBJECT
*o_attrib_add_attrib(GschemToplevel
*w_current
, const char *text_string
, int visibility
, int show_name_value
, OBJECT
*object
);
149 void o_redraw_rect (GschemToplevel
*w_current
, GdkDrawable
*drawable
, PAGE
*page
, GschemPageGeometry
*geometry
, GdkRectangle
*rectangle
);
150 int o_invalidate_rubber(GschemToplevel
*w_current
);
151 int o_redraw_cleanstates(GschemToplevel
*w_current
);
152 void o_invalidate_rect(GschemToplevel
*w_current
, int x1
, int y1
, int x2
, int y2
);
153 void o_invalidate(GschemToplevel
*w_current
, OBJECT
*object
);
154 void o_invalidate_glist(GschemToplevel
*w_current
, GList
*list
);
156 void o_box_invalidate_rubber(GschemToplevel
*w_current
);
157 void o_box_start(GschemToplevel
*w_current
, int x
, int y
);
158 void o_box_end(GschemToplevel
*w_current
, int x
, int y
);
159 void o_box_motion(GschemToplevel
*w_current
, int x
, int y
);
160 void o_box_draw_rubber (GschemToplevel
*w_current
, EdaRenderer
*renderer
);
162 void o_buffer_copy(GschemToplevel
*w_current
, int buf_num
);
163 void o_buffer_cut(GschemToplevel
*w_current
, int buf_num
);
164 int o_buffer_paste_start(GschemToplevel
*w_current
, int x
, int y
, int buf_num
);
165 void o_buffer_init(void);
166 void o_buffer_free(GschemToplevel
*w_current
);
168 void o_bus_start(GschemToplevel
*w_current
, int x
, int y
);
169 void o_bus_end(GschemToplevel
*w_current
, int x
, int y
);
170 void o_bus_motion(GschemToplevel
*w_current
, int x
, int y
);
171 void o_bus_draw_rubber (GschemToplevel
*w_current
, EdaRenderer
*renderer
);
172 void o_bus_invalidate_rubber(GschemToplevel
*w_current
);
174 void o_circle_invalidate_rubber(GschemToplevel
*w_current
);
175 void o_circle_start(GschemToplevel
*w_current
, int x
, int y
);
176 void o_circle_end(GschemToplevel
*w_current
, int x
, int y
);
177 void o_circle_motion(GschemToplevel
*w_current
, int x
, int y
);
178 void o_circle_draw_rubber (GschemToplevel
*w_current
, EdaRenderer
*renderer
);
180 void o_complex_prepare_place(GschemToplevel
*w_current
, const CLibSymbol
*sym
);
181 void o_complex_place_changed_run_hook(GschemToplevel
*w_current
);
183 void o_copy_start(GschemToplevel
*w_current
, int x
, int y
);
184 void o_copy_end(GschemToplevel
*w_current
);
186 void o_delete(GschemToplevel
*w_current
, OBJECT
*object
);
187 void o_delete_selected(GschemToplevel
*w_current
, gchar
*undo_desc
);
189 gboolean
o_find_object(GschemToplevel
*w_current
, int x
, int y
,
190 gboolean deselect_afterwards
);
191 gboolean
o_find_selected_object(GschemToplevel
*w_current
, int x
, int y
);
193 OBJECT
*o_grips_search_world(GschemToplevel
*w_current
, int x
, int y
, int *whichone
);
194 OBJECT
*o_grips_search_arc_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
195 OBJECT
*o_grips_search_box_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
196 OBJECT
*o_grips_search_path_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
197 OBJECT
*o_grips_search_picture_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
198 OBJECT
*o_grips_search_circle_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
199 OBJECT
*o_grips_search_line_world(GschemToplevel
*w_current
, OBJECT
*o_current
, int x
, int y
, int size
, int *whichone
);
200 void o_grips_start(GschemToplevel
*w_current
, int x
, int y
);
201 void o_grips_motion(GschemToplevel
*w_current
, int x
, int y
);
202 void o_grips_end(GschemToplevel
*w_current
);
203 void o_grips_cancel(GschemToplevel
*w_current
);
204 void o_grips_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
206 void o_line_invalidate_rubber(GschemToplevel
*w_current
);
207 void o_line_start(GschemToplevel
*w_current
, int x
, int y
);
208 void o_line_end(GschemToplevel
*w_current
, int x
, int y
);
209 void o_line_motion(GschemToplevel
*w_current
, int x
, int y
);
210 void o_line_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
211 int o_line_visible(GschemToplevel
*w_current
, LINE
*line
, int *x1
, int *y1
, int *x2
, int *y2
);
213 void o_edit(GschemToplevel
*w_current
, GList
*list
, gboolean double_click
);
214 void o_rotate_world_update(GschemToplevel
*w_current
, int centerx
, int centery
, int angle
, GList
*list
);
215 void o_mirror_world_update(GschemToplevel
*w_current
, int centerx
, int centery
, GList
*list
);
216 void o_edit_show_hidden_lowlevel(GschemToplevel
*w_current
, const GList
*o_list
);
217 void o_edit_show_hidden(GschemToplevel
*w_current
, const GList
*o_list
);
218 void o_edit_hide_specific_text(GschemToplevel
*w_current
, const GList
*o_list
, const char *stext
);
219 void o_edit_show_specific_text(GschemToplevel
*w_current
, const GList
*o_list
, const char *stext
);
220 OBJECT
*o_update_component(GschemToplevel
*w_current
, OBJECT
*o_current
);
221 void o_autosave_backups(GschemToplevel
*w_current
);
223 void o_move_start(GschemToplevel
*w_current
, int x
, int y
);
224 void o_move_end_lowlevel(GschemToplevel
*w_current
, OBJECT
*object
, int diff_x
, int diff_y
);
225 void o_move_end(GschemToplevel
*w_current
);
226 void o_move_cancel(GschemToplevel
*w_current
);
227 void o_move_motion(GschemToplevel
*w_current
, int x
, int y
);
228 void o_move_invalidate_rubber(GschemToplevel
*w_current
, int drawing
);
229 void o_move_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
230 int o_move_return_whichone(OBJECT
*object
, int x
, int y
);
231 void o_move_check_endpoint(GschemToplevel
*w_current
, OBJECT
*object
);
232 void o_move_prep_rubberband(GschemToplevel
*w_current
);
233 int o_move_zero_length(OBJECT
*object
);
234 void o_move_end_rubberband(GschemToplevel
*w_current
, int world_diff_x
, int world_diff_y
, GList
**objects
);
236 void o_net_reset(GschemToplevel
*w_current
);
237 void o_net_guess_direction(GschemToplevel
*w_current
, int x
, int y
);
238 void o_net_find_magnetic(GschemToplevel
*w_current
, int event_x
, int event_y
);
239 void o_net_finishmagnetic(GschemToplevel
*w_current
);
240 void o_net_start_magnetic(GschemToplevel
*w_current
, int x
, int y
);
241 void o_net_start(GschemToplevel
*w_current
, int x
, int y
);
242 void o_net_end(GschemToplevel
*w_current
, int x
, int y
);
243 void o_net_motion(GschemToplevel
*w_current
, int x
, int y
);
244 void o_net_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
245 void o_net_invalidate_rubber(GschemToplevel
*w_current
);
246 int o_net_add_busrippers(GschemToplevel
*w_current
, OBJECT
*net_obj
, GList
*other_objects
);
248 void o_ognrst_invalidate_rubber (GschemToplevel
*w_current
);
249 void o_ognrst_end (GschemToplevel
*w_current
, int w_x
, int w_y
);
250 void o_ognrst_motion (GschemToplevel
*w_current
, int w_x
, int w_y
);
251 void o_ognrst_draw_rubber (GschemToplevel
*w_current
, EdaRenderer
*renderer
, int x
, int y
, int width
, int height
);
253 void o_picture_start(GschemToplevel
*w_current
, int x
, int y
);
254 void o_picture_end(GschemToplevel
*w_current
, int x
, int y
);
255 void o_picture_motion(GschemToplevel
*w_current
, int x
, int y
);
256 void picture_selection_dialog (GschemToplevel
*w_current
);
257 void o_picture_invalidate_rubber(GschemToplevel
*w_current
);
258 void o_picture_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
259 gboolean
o_picture_exchange(GschemToplevel
*w_current
, const gchar
*filename
, GError
**error
);
260 void picture_change_filename_dialog (GschemToplevel
*w_current
);
261 void o_picture_set_pixbuf(GschemToplevel
*w_current
, GdkPixbuf
*pixbuf
, char *filename
);
264 void o_path_start(GschemToplevel
*w_current
, int x
, int y
);
265 void o_path_continue (GschemToplevel
*w_current
, int w_x
, int w_y
);
266 void o_path_motion (GschemToplevel
*w_current
, int w_x
, int w_y
);
267 void o_path_end(GschemToplevel
*w_current
, int x
, int y
);
268 void o_path_end_path (GschemToplevel
*w_current
);
269 void o_path_invalidate_rubber (GschemToplevel
*w_current
);
270 void o_path_draw_rubber (GschemToplevel
*w_current
, EdaRenderer
*renderer
);
271 void o_path_invalidate_rubber_grips (GschemToplevel
*w_current
);
272 void o_path_motion_grips (GschemToplevel
*w_current
, int x
, int y
);
273 void o_path_draw_rubber_grips (GschemToplevel
*w_current
, EdaRenderer
*renderer
);
276 void o_pin_start(GschemToplevel
*w_current
, int x
, int y
);
277 void o_pin_end(GschemToplevel
*w_current
, int x
, int y
);
278 void o_pin_motion(GschemToplevel
*w_current
, int x
, int y
);
279 void o_pin_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
280 void o_pin_invalidate_rubber(GschemToplevel
*w_current
);
282 void o_place_start(GschemToplevel
*w_current
, int x
, int y
);
283 void o_place_end(GschemToplevel
*w_current
, int x
, int y
, int continue_placing
, int select_placed
, const char *hook_name
, const gchar
*undo_desc
);
284 void o_place_motion(GschemToplevel
*w_current
, int x
, int y
);
285 void o_place_invalidate_rubber(GschemToplevel
*w_current
, int drawing
);
286 void o_place_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
287 void o_place_rotate(GschemToplevel
*w_current
);
288 void o_place_mirror(GschemToplevel
*w_current
);
290 void o_select_start(GschemToplevel
*w_current
, int x
, int y
);
291 void o_select_end(GschemToplevel
*w_current
, int x
, int y
);
292 void o_select_motion(GschemToplevel
*w_current
, int x
, int y
);
293 void o_select_run_hooks(GschemToplevel
*w_current
, OBJECT
*o_current
, int flag
);
294 void o_select_object(GschemToplevel
*w_current
, OBJECT
*o_current
, int type
, int count
);
295 void o_select_box_start(GschemToplevel
*w_current
, int x
, int y
);
296 void o_select_box_end(GschemToplevel
*w_current
, int x
, int y
);
297 void o_select_box_motion(GschemToplevel
*w_current
, int x
, int y
);
298 void o_select_box_invalidate_rubber(GschemToplevel
*w_current
);
299 void o_select_box_draw_rubber(GschemToplevel
*w_current
, EdaRenderer
*renderer
);
300 void o_select_box_search(GschemToplevel
*w_current
);
301 void o_select_connected_nets(GschemToplevel
*w_current
, OBJECT
* o_current
);
302 OBJECT
*o_select_return_first_object(GschemToplevel
*w_current
);
303 int o_select_selected(GschemToplevel
*w_current
);
304 void o_select_unselect_all(GschemToplevel
*w_current
);
305 void o_select_visible_unlocked(GschemToplevel
*w_current
);
306 void o_select_move_to_place_list(GschemToplevel
*w_current
);
308 void o_slot_start(GschemToplevel
*w_current
, OBJECT
*object
);
309 void o_slot_end(GschemToplevel
*w_current
, OBJECT
*object
, const char *string
);
311 int o_text_get_rendered_bounds(void *user_data
, OBJECT
*object
, int *min_x
, int *min_y
, int *max_x
, int *max_y
);
312 void o_text_prepare_place(GschemToplevel
*w_current
, char *text
, int color
, int align
, int rotate
, int size
);
313 void o_text_change(GschemToplevel
*w_current
, OBJECT
*object
, char *string
, int visibility
, int show
);
314 gboolean
o_text_toggle_overbar (GschemToplevel
*w_current
, OBJECT
*object
);
316 void o_undo_init(void);
317 void o_undo_savestate(GschemToplevel
*w_current
, PAGE
*page
, int flag
, const gchar
*desc
);
318 void o_undo_savestate_old(GschemToplevel
*w_current
, int flag
, const gchar
*desc
);
319 char *o_undo_find_prev_filename(UNDO
*start
);
320 GList
*o_undo_find_prev_object_head(UNDO
*start
);
321 void o_undo_callback(GschemToplevel
*w_current
, PAGE
*page
, int type
);
322 void o_undo_update_actions(GschemToplevel
*w_current
, PAGE
*page
);
323 void o_undo_cleanup(void);
325 int parse_commandline(int argc
, char *argv
[]);
327 GList
*s_stretch_add(GList
*list
, OBJECT
*object
, int whichone
);
328 GList
*s_stretch_remove(GList
*list
, OBJECT
*object
);
329 void s_stretch_destroy_all(GList
*list
);
330 /* gschem_alignment_combo.c */
331 GtkWidget
* gschem_alignment_combo_new ();
332 int gschem_alignment_combo_get_align (GtkWidget
*widget
);
333 void gschem_alignment_combo_set_align (GtkWidget
*widget
, int align
);
335 gint
option_menu_get_history(GtkOptionMenu
*option_menu
);
336 void attrib_edit_dialog_ok(GtkWidget
*w
, GschemToplevel
*w_current
);
337 void attrib_edit_dialog(GschemToplevel
*w_current
, OBJECT
*attr_obj
, int flag
);
339 void autonumber_text_dialog(GschemToplevel
*w_current
);
341 void x_basic_warp_cursor(GtkWidget
*widget
, gint x
, gint y
);
343 void x_clipboard_init (GschemToplevel
*w_current
);
344 void x_clipboard_finish (GschemToplevel
*w_current
);
345 void x_clipboard_update_menus (GschemToplevel
*w_current
);
346 gboolean
x_clipboard_set (GschemToplevel
*w_current
, const GList
*object_list
);
347 GList
*x_clipboard_get (GschemToplevel
*w_current
);
349 void x_color_init (void);
350 void x_color_free (void);
351 void x_color_allocate (void);
352 GdkColor
*x_get_color(int color
);
353 COLOR
*x_color_lookup(int color
);
354 gboolean
x_color_display_enabled (int index
);
356 GtkWidget
* x_colorcb_new ();
357 int x_colorcb_get_index (GtkWidget
*widget
);
358 void x_colorcb_set_index (GtkWidget
*widget
, int color_index
);
359 void x_colorcb_update_store (void);
361 void x_controlfd_parsearg (char *optarg
);
362 void x_controlfd_init (void);
363 void x_controlfd_free (void);
365 int text_view_calculate_real_tab_width(GtkTextView
*textview
, int tab_size
);
366 void select_all_text_in_textview(GtkTextView
*textview
);
367 void text_input_dialog(GschemToplevel
*w_current
);
368 void arc_angle_dialog(GschemToplevel
*w_current
, OBJECT
*arc_object
);
369 void slot_edit_dialog(GschemToplevel
*w_current
, const char *count
, const char *string
);
370 void about_dialog(GschemToplevel
*w_current
);
371 void x_dialog_hotkeys(GschemToplevel
*w_current
);
372 void x_dialog_raise_all(GschemToplevel
*w_current
);
374 void generic_msg_dialog(const char *);
375 int generic_confirm_dialog(const char *);
376 char * generic_filesel_dialog(const char *, const char *, gint
);
378 void hide_text_dialog(GschemToplevel
*w_current
);
379 void show_text_dialog(GschemToplevel
*w_current
);
380 gboolean
x_dialog_close_changed_page (GschemToplevel
*w_current
, PAGE
*page
);
381 gboolean
x_dialog_close_window (GschemToplevel
*w_current
);
382 int x_dialog_validate_attribute(GtkWindow
* parent
, char *attribute
);
383 gboolean
x_dialog_confirm_create (GtkWindow
*parent
, const gchar
*message
, const gchar
*filename
);
385 gint
x_event_expose(GschemPageView
*widget
, GdkEventExpose
*event
, GschemToplevel
*w_current
);
386 gint
x_event_raise_dialog_boxes (GschemPageView
*view
, GdkEventExpose
*event
, GschemToplevel
*w_current
);
387 gint
x_event_button_pressed(GschemPageView
*page_view
, GdkEventButton
*event
, GschemToplevel
*w_current
);
388 gint
x_event_button_released(GschemPageView
*page_view
, GdkEventButton
*event
, GschemToplevel
*w_current
);
389 gint
x_event_motion(GschemPageView
*page_view
, GdkEventMotion
*event
, GschemToplevel
*w_current
);
390 gboolean
x_event_faked_motion (GschemPageView
*view
, GdkEventKey
*event
);
391 gboolean
x_event_configure (GschemPageView
*page_view
, GdkEventConfigure
*event
, gpointer user_data
);
392 gint
x_event_enter(GtkWidget
*widget
, GdkEventCrossing
*event
, GschemToplevel
*w_current
);
393 gboolean
x_event_key(GschemPageView
*page_view
, GdkEventKey
*event
, GschemToplevel
*w_current
);
394 gint
x_event_scroll(GtkWidget
*widget
, GdkEventScroll
*event
, GschemToplevel
*w_current
);
395 gboolean
x_event_get_pointer_position (GschemToplevel
*w_current
, gboolean snapped
, gint
*wx
, gint
*wy
);
396 /* gschem_compselect_dockable.c */
397 void x_compselect_deselect (GschemToplevel
*w_current
);
398 void x_compselect_select_previous_symbol (GschemToplevel
*w_current
);
400 void x_fam_init (void);
401 void x_fam_free (void);
402 gpointer
x_fam_monitor (const gchar
*path
, void (*exists_event
) (const gchar
*path
, unsigned int code
, gpointer user_data
), void (*regular_event
) (const gchar
*path
, unsigned int code
, gpointer user_data
), gpointer user_data
);
403 void x_fam_unmonitor (gpointer handle
);
405 PAGE
*x_fileselect_create (GschemToplevel
*w_current
, const gchar
*dirname
, const gchar
*basename
);
406 void x_fileselect_open(GschemToplevel
*w_current
);
407 gboolean
x_fileselect_save(GschemToplevel
*w_current
);
408 int x_fileselect_load_backup(void *user_data
, GString
*message
);
410 GtkWidget
* x_fstylecb_new ();
411 int x_fstylecb_get_index (GtkWidget
*widget
);
412 void x_fstylecb_set_index (GtkWidget
*widget
, int style
);
414 void x_grid_draw_region(GschemToplevel
*w_current
, cairo_t
*cr
, int x
, int y
, int width
, int height
);
415 int x_grid_query_drawn_spacing(GschemToplevel
*w_current
);
416 /* x_grid_size_sb.c */
417 GtkWidget
*x_grid_size_sb_new (GschemToplevel
*w_current
);
419 gboolean
x_hierarchy_down_schematic (GschemToplevel
*w_current
, OBJECT
*object
);
420 gboolean
x_hierarchy_down_symbol (GschemToplevel
*w_current
, OBJECT
*object
);
421 gboolean
x_hierarchy_up (GschemToplevel
*w_current
);
423 PAGE
*x_highlevel_new_page (GschemToplevel
*w_current
, const gchar
*filename
);
424 PAGE
*x_highlevel_open_page (GschemToplevel
*w_current
, const gchar
*filename
);
425 gboolean
x_highlevel_open_pages (GschemToplevel
*w_current
, GSList
*filenames
, gboolean already_confirmed
);
426 gboolean
x_highlevel_save_page (GschemToplevel
*w_current
, PAGE
*page
);
427 gboolean
x_highlevel_save_all (GschemToplevel
*w_current
);
428 gboolean
x_highlevel_revert_page (GschemToplevel
*w_current
, PAGE
*page
);
429 gboolean
x_highlevel_close_page (GschemToplevel
*w_current
, PAGE
*page
);
431 void x_image_lowlevel(GschemToplevel
*w_current
, const char* filename
,
432 int desired_width
, int desired_height
, char *filetype
);
433 void x_image_setup(GschemToplevel
*w_current
);
434 GdkPixbuf
*x_image_get_pixbuf (GschemToplevel
*w_current
, int width
, int height
);
436 GtkListStore
* x_integerls_new ();
437 GtkListStore
* x_integerls_new_with_values (const char *value
[], int count
);
438 void x_integerls_add_value (GtkListStore
*store
, const char *value
);
439 int x_integerls_get_value_column ();
441 GtkWidget
* x_linecapcb_new ();
442 int x_linecapcb_get_index (GtkWidget
*widget
);
443 void x_linecapcb_set_index (GtkWidget
*widget
, int index
);
445 GtkWidget
* x_linetypecb_new ();
446 int x_linetypecb_get_index (GtkWidget
*widget
);
447 void x_linetypecb_set_index (GtkWidget
*widget
, int index
);
449 PAGE
*x_lowlevel_new_page (GschemToplevel
*w_current
, const gchar
*filename
);
450 PAGE
*x_lowlevel_open_page (GschemToplevel
*w_current
, const gchar
*filename
);
451 gboolean
x_lowlevel_save_page (GschemToplevel
*w_current
, PAGE
*page
, const gchar
*filename
);
452 gboolean
x_lowlevel_revert_page (GschemToplevel
*w_current
, PAGE
*page
);
453 void x_lowlevel_close_page (GschemToplevel
*w_current
, PAGE
*page
);
455 gboolean
x_show_uri (GschemToplevel
*w_current
, const gchar
*buf
, GError
**err
);
457 void x_menus_create_main_menu(GschemToplevel
*w_current
);
458 void x_menus_create_main_popup(GschemToplevel
*w_current
);
459 void x_menus_create_submenus(GschemToplevel
*w_current
);
460 void x_menus_create_toolbar(GschemToplevel
*w_current
);
461 /* gschem_messages_dockable.c */
462 void x_messages_page_changed (GschemToplevel
*w_current
);
463 void x_messages_update (GschemToplevel
*w_current
);
464 /* gschem_multiattrib_dockable.c */
465 void x_multiattrib_update (GschemToplevel
*w_current
);
466 void x_multiattrib_edit_attribute (GschemToplevel
*w_current
, OBJECT
*object
);
468 /* gschem_pagesel_dockable.c */
469 void x_pagesel_update (GschemToplevel
*w_current
);
470 /* gschem_patch_dockable.c */
471 gchar
*x_patch_guess_filename (PAGE
*page
);
472 void x_patch_import (GschemToplevel
*w_current
);
473 void x_patch_do_import (GschemToplevel
*w_current
, PAGE
*page
);
476 gboolean
x_print_export_pdf_page (GschemToplevel
*w_current
, const gchar
*filename
);
477 gboolean
x_print_export_pdf (GschemToplevel
*w_current
, const gchar
*filename
);
478 void x_print (GschemToplevel
*w_current
);
480 void x_rc_parse_gschem (TOPLEVEL
*toplevel
, const gchar
*rcfile
);
482 GtkWidget
* gschem_rotation_combo_new ();
483 int gschem_rotation_combo_get_angle (GtkWidget
*widget
);
484 void gschem_rotation_combo_set_angle (GtkWidget
*widget
, int angle
);
486 void setup_script_selector(GschemToplevel
*w_current
);
488 void x_stroke_init (void);
489 void x_stroke_free (void);
490 void x_stroke_record (GschemToplevel
*w_current
, gint x
, gint y
);
491 gint
x_stroke_translate_and_execute (GschemToplevel
*w_current
);
493 void x_window_setup (GschemToplevel
*w_current
);
494 void x_window_create_drawing(GtkWidget
*drawbox
, GschemToplevel
*w_current
);
495 void x_window_setup_draw_events(GschemToplevel
*w_current
);
496 void x_window_update_file_change_notification (GschemToplevel
*w_current
, PAGE
*page
);
497 void x_window_update_patch_change_notification (GschemToplevel
*w_current
, PAGE
*page
);
498 void x_window_create_main(GschemToplevel
*w_current
);
499 void x_window_close(GschemToplevel
*w_current
);
500 void x_window_close_all(GschemToplevel
*w_current
);
501 void x_window_set_current_page (GschemToplevel
*w_current
, PAGE
*page
);
502 void x_window_present (GschemToplevel
*w_current
);
503 void x_window_set_default_icon (void);
504 void x_window_init_icons (void);
505 GschemToplevel
* x_window_new (TOPLEVEL
*toplevel
);