libgeda

prototype.h File Reference

Go to the source code of this file.

Functions

G_BEGIN_DECLS const gchar * o_file_format_header ()
 Get the file header string.
gchar * o_save_buffer (TOPLEVEL *toplevel, const GList *object_list)
int o_save (TOPLEVEL *toplevel, const GList *object_list, const char *filename, GError **err)
GList * o_read_buffer (TOPLEVEL *toplevel, GList *object_list, char *buffer, const int size, const char *name, GError **err)
GList * o_read (TOPLEVEL *toplevel, GList *object_list, char *filename, GError **err)
 Read a file.
void o_scale (TOPLEVEL *toplevel, GList *list, int x_scale, int y_scale)
 Scale a set of lines.
gchar * f_get_autosave_filename (const gchar *filename)
 Get the autosave filename for a file.
gboolean f_has_active_autosave (const gchar *filename, GError **err)
 Check if a file has an active autosave file.
int f_open (TOPLEVEL *toplevel, PAGE *page, const gchar *filename, GError **err)
 Opens the schematic file.
int f_open_flags (TOPLEVEL *toplevel, PAGE *page, const gchar *filename, const gint flags, GError **err)
 Opens the schematic file with fine-grained control over behaviour.
void f_close (TOPLEVEL *toplevel)
 Closes the schematic file.
int f_save (TOPLEVEL *toplevel, PAGE *page, const char *filename, GError **error)
 Save the schematic file.
gchar * f_normalize_filename (const gchar *filename, GError **error)
 Builds an absolute pathname.
char * follow_symlinks (const gchar *filename, GError **error)
 Follow symlinks until a real file is found.
int f_print_file (TOPLEVEL *toplevel, PAGE *page, const char *filename)
 Print the current TOPLEVEL object to a file as a postscript document.
int f_print_command (TOPLEVEL *toplevel, PAGE *page, const char *command)
 Opens a pipe to the specified command and prints the current TOPLEVEL object to the pipe as a postscript document.
int f_print_stream (TOPLEVEL *toplevel, PAGE *page, FILE *fp)
 Print the current TOPLEVEL object to a stream as a postscript document.
void f_print_set_type (TOPLEVEL *toplevel, int type)
 Sets the current TOPLEVEL object output type.
SCM g_scm_eval_protected (SCM exp, SCM module_or_state)
 Evaluate a Scheme expression safely.
SCM g_scm_eval_string_protected (SCM str)
 Evaluate a string as a Scheme expression safely.
SCM g_scm_c_eval_string_protected (const gchar *str)
 Evaluate a C string as a Scheme expression safely.
gboolean g_read_file (TOPLEVEL *toplevel, const gchar *filename, GError **err)
 Load a Scheme file, catching and logging errors.
SCM g_rc_mode_general (SCM scmmode, const char *rc_name, int *mode_var, const vstbl_entry *table, int table_size)
gboolean g_rc_parse_system (TOPLEVEL *toplevel, const gchar *rcname, GError **err)
 Load a system configuration file.
gboolean g_rc_parse_user (TOPLEVEL *toplevel, const gchar *rcname, GError **err)
 Load a user configuration file.
gboolean g_rc_parse_local (TOPLEVEL *toplevel, const gchar *rcname, const gchar *path, GError **err)
 Load a local configuration file.
gboolean g_rc_parse_file (TOPLEVEL *toplevel, const gchar *rcfile, GError **err)
 Load a configuration file.
void g_rc_parse (TOPLEVEL *toplevel, const gchar *pname, const gchar *rcname, const gchar *rcfile)
 General RC file parsing function.
void g_rc_parse_handler (TOPLEVEL *toplevel, const gchar *rcname, const gchar *rcfile, ConfigParseErrorFunc handler, void *user_data)
 General RC file parsing function.
SCM g_rc_rc_filename ()
 Get the name of the RC filename being evaluated.
void i_vars_libgeda_set (TOPLEVEL *toplevel)
 Initialize variables in TOPLEVEL object.
void i_vars_libgeda_freenames ()
 Free default names.
void libgeda_init (void)
 Perform runtime initialization of libgeda library.
void set_window (TOPLEVEL *toplevel, PAGE *page, int xmin, int xmax, int ymin, int ymax)
 Set the contraints for the current page.
void rotate_point (int x, int y, int angle, int *newx, int *newy)
 Rotate a point by an arbitrary angle.
void rotate_point_90 (int x, int y, int angle, int *newx, int *newy)
 Rotate point in 90 degree increments only.
void PAPERSIZEtoWORLD (int width, int height, int border, int *right, int *bottom)
 Convert Paper size to World coordinates.
void m_hatch_box (BOX *box, gint angle, gint pitch, GArray *lines)
 Calculates line segments to hatch a box shape.
void m_hatch_circle (CIRCLE *circle, gint angle, gint pitch, GArray *lines)
 Calculates line segments to hatch a circle.
void m_hatch_path (PATH *path, gint angle, gint pitch, GArray *lines)
 Calculates line segments to hatch a path.
void m_polygon_append_bezier (GArray *points, BEZIER *bezier, int segments)
 Appends a bezier curve to the polygon.
void m_polygon_append_point (GArray *points, int x, int y)
 Appends a point to the list of vertices in a polygon.
OBJECTo_arc_new (TOPLEVEL *toplevel, char type, int color, int x, int y, int radius, int start_angle, int end_angle)
OBJECTo_arc_copy (TOPLEVEL *toplevel, OBJECT *o_current)
void o_arc_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
void o_arc_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
void o_arc_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
void o_arc_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror the WORLD coordinates of an ARC.
void o_attrib_add (TOPLEVEL *toplevel, OBJECT *object, OBJECT *item)
 Add an attribute to an existing attribute list.
gboolean o_attrib_is_attached (TOPLEVEL *toplevel, OBJECT *attrib, OBJECT *object)
 Check whether a attrib is attached to another object.
void o_attrib_attach (TOPLEVEL *toplevel, OBJECT *attrib, OBJECT *object, int set_color)
 Attach existing attribute to an object.
void o_attrib_attach_list (TOPLEVEL *toplevel, GList *attr_list, OBJECT *object, int set_color)
 Attach list of existing attributes to an object.
void o_attrib_detach_all (TOPLEVEL *toplevel, OBJECT *object)
 Detach all attribute items in a list.
void o_attrib_print (GList *attributes)
 Print all attributes to a Postscript document.
void o_attrib_remove (TOPLEVEL *toplevel, GList **list, OBJECT *remove)
 Remove an attribute item from an attribute list.
gboolean o_attrib_string_get_name_value (const gchar *string, gchar **name_ptr, gchar **value_ptr)
 Get name and value from an attribute 'name=value' string.
gboolean o_attrib_get_name_value (OBJECT *attrib, gchar **name_ptr, gchar **value_ptr)
 Get name and value from an attribute OBJECT.
GList * o_attrib_find_floating_attribs (const GList *list)
 Find all floating attributes in the given object list.
char * o_attrib_search_floating_attribs_by_name (const GList *list, char *name, int counter)
 Search floating attribute by name.
char * o_attrib_search_attached_attribs_by_name (OBJECT *object, char *name, int counter)
 Search attached attributes by name.
char * o_attrib_search_inherited_attribs_by_name (OBJECT *object, char *name, int counter)
 Search inherited attribute by name.
char * o_attrib_search_object_attribs_by_name (OBJECT *object, char *name, int counter)
 Search attributes of object by name.
GList * o_attrib_return_attribs (OBJECT *object)
 Get all attached attributes of the specified OBJECT.
int o_attrib_is_inherited (OBJECT *attrib)
 Query whether a given attribute OBJECT is "inherited".
void o_attrib_append_attribs_changed_hook (TOPLEVEL *toplevel, AttribsChangedFunc func, void *data)
void o_attrib_emit_attribs_changed (TOPLEVEL *toplevel, OBJECT *object)
void o_attrib_freeze_hooks (TOPLEVEL *toplevel, OBJECT *object)
void o_attrib_thaw_hooks (TOPLEVEL *toplevel, OBJECT *object)
int inside_region (int xmin, int ymin, int xmax, int ymax, int x, int y)
 Check if point is inside a region.
void o_recalc_single_object (TOPLEVEL *toplevel, OBJECT *o_current)
 Recalculate position of the given object.
void o_recalc_object_glist (TOPLEVEL *toplevel, GList *object_glist)
 Recalculate position of a list (GList) of objects.
void o_set_line_options (TOPLEVEL *toplevel, OBJECT *o_current, OBJECT_END end, OBJECT_TYPE type, int width, int length, int space)
 Set an OBJECT's line options.
gboolean o_get_line_options (OBJECT *object, OBJECT_END *end, OBJECT_TYPE *type, int *width, int *length, int *space)
 get OBJECT's line properties.
void o_set_fill_options (TOPLEVEL *toplevel, OBJECT *o_current, OBJECT_FILLING type, int width, int pitch1, int angle1, int pitch2, int angle2)
 Set OBJECT's fill options.
gboolean o_get_fill_options (OBJECT *object, OBJECT_FILLING *type, int *width, int *pitch1, int *angle1, int *pitch2, int *angle2)
 get OBJECT's fill properties.
gboolean o_get_position (TOPLEVEL *toplevel, gint *x, gint *y, OBJECT *object)
 get the base position of an object
void o_translate_world (TOPLEVEL *toplevel, gint dx, gint dy, OBJECT *object)
 Translates an object in world coordinates.
void o_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotates an object in world coordinates.
void o_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirrors an object in world coordinates.
double o_shortest_distance (OBJECT *object, int x, int y)
 Calculates the distance between the given point and the closest point on the given object.
void o_set_color (TOPLEVEL *toplevel, OBJECT *object, int color)
 Change the color of an object.
PAGEo_get_page (TOPLEVEL *toplevel, OBJECT *object)
 Get an object's parent PAGE.
OBJECTo_get_parent (TOPLEVEL *toplevel, OBJECT *object)
 Get an object's containing complex object.
void o_add_change_notify (TOPLEVEL *toplevel, ChangeNotifyFunc pre_change_func, ChangeNotifyFunc change_func, void *user_data)
 Add change notification handlers to a TOPLEVEL.
void o_remove_change_notify (TOPLEVEL *toplevel, ChangeNotifyFunc pre_change_func, ChangeNotifyFunc change_func, void *user_data)
 Remove change notification handlers from a TOPLEVEL.
gboolean o_is_visible (TOPLEVEL *toplevel, OBJECT *object)
 Query visibility of the object.
void o_set_visibility (TOPLEVEL *toplevel, OBJECT *object, int visibility)
 Set visibility of the object.
OBJECTo_box_new (TOPLEVEL *toplevel, char type, int color, int x1, int y1, int x2, int y2)
 Create a BOX OBJECT.
OBJECTo_box_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 Copy a box to a list.
void o_box_modify_all (TOPLEVEL *toplevel, OBJECT *object, int x1, int y1, int x2, int y2)
 Modify a BOX OBJECT's coordinates.
void o_box_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 Modify a BOX OBJECT's coordinates.
void o_box_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 Translate a BOX position in WORLD coordinates by a delta.
void o_box_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotate BOX OBJECT using WORLD coordinates.
void o_box_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror BOX using WORLD coordinates.
OBJECTo_bus_new (TOPLEVEL *toplevel, char type, int color, int x1, int y1, int x2, int y2, int bus_ripper_direction)
 create a new bus object
void o_bus_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 move a bus object
OBJECTo_bus_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 create a copy of a bus object
void o_bus_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 rotate a bus object around a centerpoint
void o_bus_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 mirror a bus object horizontaly at a centerpoint
int o_bus_orientation (OBJECT *object)
 calculate the orientation of a bus object
void o_bus_consolidate (TOPLEVEL *toplevel)
void o_bus_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 modify one point of a bus object
int dist (int x1, int y1, int x2, int y2)
 calculate the distance between two points
OBJECTo_circle_new (TOPLEVEL *toplevel, char type, int color, int x, int y, int radius)
 Create and add circle OBJECT to list.
OBJECTo_circle_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 Create a copy of a circle.
void o_circle_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 Modify the description of a circle OBJECT.
void o_circle_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 Translate a circle position in WORLD coordinates by a delta.
void o_circle_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotate Circle OBJECT using WORLD coordinates.
void o_circle_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror circle using WORLD coordinates.
int world_get_single_object_bounds (TOPLEVEL *toplevel, OBJECT *o_current, int *rleft, int *rtop, int *rright, int *rbottom)
 Return the bounds of the given object.
int world_get_object_glist_bounds (TOPLEVEL *toplevel, const GList *o_list, int *left, int *top, int *right, int *bottom)
 Return the bounds of the given GList of objects.
int o_complex_is_embedded (OBJECT *o_current)
 get the embedded state of an complex object
GList * o_complex_promote_attribs (TOPLEVEL *toplevel, OBJECT *object)
 Promote attributes from a complex OBJECT.
OBJECTo_complex_new (TOPLEVEL *toplevel, char type, int color, int x, int y, int angle, int mirror, const CLibSymbol *clib_sym, const gchar *basename, int selectable)
OBJECTo_complex_new_embedded (TOPLEVEL *toplevel, char type, int color, int x, int y, int angle, int mirror, const gchar *basename, int selectable)
 create a new embedded object
void o_complex_set_filename (TOPLEVEL *toplevel, const char *basename)
void o_complex_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 move a complex object
OBJECTo_complex_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 Create a copy of a COMPLEX object.
void o_complex_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
void o_complex_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
OBJECTo_complex_find_pin_by_attribute (OBJECT *object, char *name, char *wanted_value)
 Find a pin with a particular attribute.
void o_complex_check_symversion (TOPLEVEL *toplevel, OBJECT *object)
 check the symversion of a complex object
void o_embed (TOPLEVEL *toplevel, OBJECT *o_current)
 embed an object into a schematic
void o_unembed (TOPLEVEL *toplevel, OBJECT *o_current)
 unembed an object from a schematic
OBJECTo_line_new (TOPLEVEL *toplevel, char type, int color, int x1, int y1, int x2, int y2)
 Create and add line OBJECT to list.
OBJECTo_line_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 Create a copy of a line.
void o_line_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 Modify the description of a line OBJECT.
void o_line_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 Translate a line position in WORLD coordinates by a delta.
void o_line_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotate Line OBJECT using WORLD coordinates.
void o_line_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror a line using WORLD coordinates.
void o_line_scale_world (TOPLEVEL *toplevel, int x_scale, int y_scale, OBJECT *object)
double o_line_length (OBJECT *object)
 calculate the lenght of a line object
OBJECTo_object_copy (TOPLEVEL *toplevel, OBJECT *selected)
GList * o_glist_copy_all (TOPLEVEL *toplevel, const GList *src_list, GList *dest_list)
void o_glist_translate_world (TOPLEVEL *toplevel, int dx, int dy, const GList *list)
void o_glist_rotate_world (TOPLEVEL *toplevel, int x, int y, int angle, const GList *list)
void o_glist_mirror_world (TOPLEVEL *toplevel, int x, int y, const GList *list)
void o_glist_set_color (TOPLEVEL *toplevel, const GList *list, int color)
 Change the color of a list of objects.
OBJECTo_net_new (TOPLEVEL *toplevel, char type, int color, int x1, int y1, int x2, int y2)
 create a new net object
void o_net_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 move a net object
OBJECTo_net_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 create a copy of a net object
void o_net_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 rotate a net object around a centerpoint
void o_net_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 mirror a net object horizontaly at a centerpoint
int o_net_orientation (OBJECT *object)
 calculate the orientation of a net object
void o_net_consolidate (TOPLEVEL *toplevel, PAGE *page)
 consolidate all net objects
void o_net_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 modify one point of a net object
void o_net_refresh_conn_cache (TOPLEVEL *toplevel, OBJECT *object)
 Refresh & cache number of connected entities.
gboolean o_net_is_fully_connected (TOPLEVEL *toplevel, OBJECT *object)
 Check if net is fully connected.
OBJECTo_path_new (TOPLEVEL *toplevel, char type, int color, const char *path_string)
 Create and add path OBJECT to list.
OBJECTo_path_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 Create a copy of a path.
void o_path_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 Modify controol point location.
void o_path_translate_world (TOPLEVEL *toplevel, int x, int y, OBJECT *object)
 Translate a path position in WORLD coordinates by a delta.
void o_path_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotate Line OBJECT using WORLD coordinates.
void o_path_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror a path using WORLD coordinates.
OBJECTo_picture_new (TOPLEVEL *toplevel, const gchar *file_content, gsize file_length, const gchar *filename, char type, int x1, int y1, int x2, int y2, int angle, int mirrored, int embedded) G_GNUC_WARN_UNUSED_RESULT
 Create a picture object.
double o_picture_get_ratio (TOPLEVEL *toplevel, OBJECT *object)
 Get the width/height ratio of an image.
void o_picture_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 Modify the description of a picture OBJECT.
void o_picture_modify_all (TOPLEVEL *toplevel, OBJECT *object, int x1, int y1, int x2, int y2)
 Modify a picture object's coordinates.
void o_picture_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 Rotate picture OBJECT using WORLD coordinates.
void o_picture_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 Mirror a picture using WORLD coordinates.
void o_picture_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 Translate a picture position in WORLD coordinates by a delta.
OBJECTo_picture_copy (TOPLEVEL *toplevel, OBJECT *o_current) G_GNUC_WARN_UNUSED_RESULT
 Create a copy of a picture.
gboolean o_picture_is_embedded (TOPLEVEL *toplevel, OBJECT *object)
 Test whether a picture object is embedded.
GdkPixbuf * o_picture_get_pixbuf (TOPLEVEL *toplevel, OBJECT *object) G_GNUC_WARN_UNUSED_RESULT
 Get a pixel buffer for a picture object.
const char * o_picture_get_data (TOPLEVEL *toplevel, OBJECT *object, size_t *len)
 Get the raw image data from a picture object.
gboolean o_picture_set_from_buffer (TOPLEVEL *toplevel, OBJECT *object, const gchar *filename, const gchar *data, size_t len, GError **error)
 Set a picture object's contents from a buffer.
gboolean o_picture_set_from_file (TOPLEVEL *toplevel, OBJECT *object, const gchar *filename, GError **error)
 Set a picture object's contents from a file.
const gchar * o_picture_get_filename (TOPLEVEL *toplevel, OBJECT *object)
 Get a picture's corresponding filename.
GdkPixbuf * o_picture_get_fallback_pixbuf (TOPLEVEL *toplevel) G_GNUC_WARN_UNUSED_RESULT
 Get fallback pixbuf for displaying pictures.
OBJECTo_pin_new (TOPLEVEL *toplevel, char type, int color, int x1, int y1, int x2, int y2, int pin_type, int whichend)
 create a new pin object
void o_pin_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *object)
 move a pin object
OBJECTo_pin_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 create a copy of a pin object
void o_pin_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 rotate a pin object around a centerpoint
void o_pin_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 mirror a pin object horizontaly at a centerpoint
void o_pin_modify (TOPLEVEL *toplevel, OBJECT *object, int x, int y, int whichone)
 modify one point of a pin object
void o_pin_update_whichend (TOPLEVEL *toplevel, GList *object_list, int num_pins)
 guess the whichend of pins of object list
void o_pin_set_type (TOPLEVEL *toplevel, OBJECT *o_current, int pin_type)
 Sets the type, and corresponding width of a pin.
SELECTIONo_selection_new (void)
 Returns a pointer to a new SELECTION object.
void o_selection_add (TOPLEVEL *toplevel, SELECTION *selection, OBJECT *o_selected)
 Selects the given object and adds it to the selection list.
void o_selection_print_all (const SELECTION *selection)
 Prints the given selection list.
void o_selection_remove (TOPLEVEL *toplevel, SELECTION *selection, OBJECT *o_selected)
 Removes the given object from the selection list.
void o_selection_select (TOPLEVEL *toplevel, OBJECT *object) G_GNUC_DEPRECATED
 Selects the given object.
void o_selection_unselect (TOPLEVEL *toplevel, OBJECT *object) G_GNUC_DEPRECATED
 Unselects the given object.
int o_text_num_lines (const char *string)
 count the lines of a text string
OBJECTo_text_new (TOPLEVEL *toplevel, char type, int color, int x, int y, int alignment, int angle, const char *string, int size, int visibility, int show_name_value)
 Creates a text OBJECT and the graphical objects representing it.
void o_text_recreate (TOPLEVEL *toplevel, OBJECT *o_current)
 recreate the graphics of a text object
void o_text_translate_world (TOPLEVEL *toplevel, int dx, int dy, OBJECT *o_current)
 move a text object
OBJECTo_text_copy (TOPLEVEL *toplevel, OBJECT *o_current)
 create a copy of a text object
void o_text_rotate_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, int angle, OBJECT *object)
 rotate a text object around a centerpoint
void o_text_mirror_world (TOPLEVEL *toplevel, int world_centerx, int world_centery, OBJECT *object)
 mirror a text object horizontaly at a centerpoint
void o_text_set_string (TOPLEVEL *toplevel, OBJECT *obj, const gchar *new_string)
 Set the string displayed by a text object.
const gchar * o_text_get_string (TOPLEVEL *toplevel, OBJECT *obj)
 Get the string displayed by a text object.
void o_text_set_rendered_bounds_func (TOPLEVEL *toplevel, RenderedBoundsFunc func, void *user_data)
 Set the font-renderer-specific bounds function.
double o_text_get_font_size_in_points (TOPLEVEL *toplevel, OBJECT *object)
 Return font size of a text object in postscript points.
int s_attrib_add_entry (char *new_attrib)
void s_attrib_print (void)
int s_attrib_uniq (char *name)
void s_attrib_free (void)
void s_attrib_init (void)
char * s_attrib_get (int counter)
OBJECTs_basic_init_object (OBJECT *new_node, int type, char const *name)
 Initialize an already-allocated object.
OBJECTs_basic_new_object (int type, char const *prefix)
 Helper to allocate and initialise an object.
void print_struct_forw (GList *list)
void print_struct (OBJECT *ptr)
void s_delete_object (TOPLEVEL *toplevel, OBJECT *o_current)
void s_delete_object_glist (TOPLEVEL *toplevel, GList *list)
void s_object_weak_ref (OBJECT *object, void(*notify_func)(void *, void *), void *user_data)
 Add a weak reference watcher to an OBJECT.
void s_object_weak_unref (OBJECT *object, void(*notify_func)(void *, void *), void *user_data)
 Remove a weak reference watcher from an OBJECT.
void s_object_add_weak_ptr (OBJECT *object, void *weak_pointer_loc)
 Add a weak pointer to an OBJECT.
void s_object_remove_weak_ptr (OBJECT *object, void *weak_pointer_loc)
 Remove a weak pointer from an OBJECT.
char * remove_nl (char *string)
char * remove_last_nl (char *string)
gchar * s_expand_env_variables (const gchar *string)
 Expand environment variables in string.
const char * s_path_sys_data ()
 Get the directory with the gEDA system data.
const char * s_path_sys_config ()
 Get the directory with the gEDA system configuration.
const char * s_path_user_config ()
 Get the directory with the gEDA user configuration.
void s_clib_free (void)
 Free all memory used by the component library.
GList * s_clib_get_sources (const gboolean sorted)
 Get a list of available component sources.
const CLibSources_clib_get_source_by_name (const gchar *name)
 Get a named component source.
void s_clib_refresh ()
 Rescan all available component libraries.
const CLibSources_clib_add_directory (const gchar *directory, const gchar *name)
 Add a directory of symbol files to the library.
const CLibSources_clib_add_command (const gchar *list_cmd, const gchar *get_cmd, const gchar *name)
 Add symbol-generating commands to the library.
const CLibSources_clib_add_scm (SCM listfunc, SCM getfunc, const gchar *name)
 Add symbol-generating Scheme procedures to the library.
const gchar * s_clib_source_get_name (const CLibSource *source)
 Get the name of a source.
GList * s_clib_source_get_symbols (const CLibSource *source)
 Get a list of symbols available from a given source.
const gchar * s_clib_symbol_get_name (const CLibSymbol *symbol)
 Get the name of a symbol.
gchar * s_clib_symbol_get_filename (const CLibSymbol *symbol)
 Get a filename for editing a symbol.
const CLibSources_clib_symbol_get_source (const CLibSymbol *symbol)
 Get the source to which a symbol belongs.
gchar * s_clib_symbol_get_data (const CLibSymbol *symbol)
 Get symbol data.
GList * s_clib_search (const gchar *pattern, const CLibSearchMode mode)
 Find all symbols matching a pattern.
void s_clib_flush_search_cache ()
 Flush the symbol name lookup cache.
void s_clib_flush_symbol_cache ()
 Flush the symbol data cache.
void s_clib_symbol_invalidate_data (const CLibSymbol *symbol)
 Invalidate all cached data about a symbol.
const CLibSymbols_clib_get_symbol_by_name (const gchar *name)
 Get symbol structure for a given symbol name.
gchar * s_clib_symbol_get_data_by_name (const gchar *name)
 Get symbol data for a given symbol name.
GList * s_toplevel_get_symbols (const TOPLEVEL *toplevel)
 Get a list of symbols used.
void s_color_map_defaults (COLOR *map)
 Initialise a color map to B&W.
gboolean s_color_rgba_decode (const gchar *rgba, guchar *r, guchar *g, guchar *b, guchar *a)
gchar * s_color_rgba_encode (guint8 r, guint8 g, guint8 b, guint8 a)
SCM s_color_map_to_scm (const COLOR *map)
void s_color_map_from_scm (COLOR *map, SCM lst, const char *scheme_proc_name)
void s_conn_remove_object (TOPLEVEL *toplevel, OBJECT *to_remove)
 remove an OBJECT from the connection system
void s_conn_update_object (TOPLEVEL *toplevel, OBJECT *object)
 add an OBJECT to the connection system
int s_conn_net_search (OBJECT *new_net, int whichone, GList *conn_list)
 Search for net in existing connections.
GList * s_conn_return_others (GList *input_list, OBJECT *object)
 get a list of all objects connected to this one
void s_conn_append_conns_changed_hook (TOPLEVEL *toplevel, ConnsChangedFunc func, void *data)
void s_conn_emit_conns_changed (TOPLEVEL *toplevel, OBJECT *object)
void s_conn_freeze_hooks (TOPLEVEL *toplevel, OBJECT *object)
void s_conn_thaw_hooks (TOPLEVEL *toplevel, OBJECT *object)
void s_cue_postscript_fillbox (TOPLEVEL *toplevel, FILE *fp, int x, int y)
void s_cue_postscript_junction (TOPLEVEL *toplevel, FILE *fp, int x, int y, int bus_involved)
void s_cue_output_all (TOPLEVEL *toplevel, const GList *obj_list, FILE *fp, int type)
void s_cue_output_lowlevel (TOPLEVEL *toplevel, OBJECT *object, int whichone, FILE *fp, int output_type)
void s_cue_output_lowlevel_midpoints (TOPLEVEL *toplevel, OBJECT *object, FILE *fp, int output_type)
void s_cue_output_single (TOPLEVEL *toplevel, OBJECT *object, FILE *fp, int type)
 Output cues for a single object.
PAGEs_hierarchy_down_schematic_single (TOPLEVEL *toplevel, const gchar *filename, PAGE *parent, int page_control, int flag)
 Search for schematic associated source files and load them.
void s_hierarchy_down_symbol (TOPLEVEL *toplevel, const CLibSymbol *symbol, PAGE *parent)
PAGEs_hierarchy_find_up_page (GedaPageList *page_list, PAGE *current_page)
 Search for the parent page of a page in hierarchy.
GList * s_hierarchy_traversepages (TOPLEVEL *toplevel, PAGE *p_current, gint flags)
 Find page hierarchy below a page.
gint s_hierarchy_print_page (PAGE *p_current, void *data)
PAGEs_hierarchy_find_prev_page (GedaPageList *page_list, PAGE *current_page)
 Search for a page preceding a given page in hierarchy.
PAGEs_hierarchy_find_next_page (GedaPageList *page_list, PAGE *current_page)
 Search for a page following a given page in hierarchy.
void s_log_init (const gchar *filename)
 Initialize libgeda logging feature.
void s_log_close (void)
 Terminates the logging of messages.
gchar * s_log_read (void)
 Reads the current log file and returns its contents.
int s_menu_return_num (void)
SCM s_menu_return_entry (int index, char **menu_name)
int s_menu_add_entry (char *new_menu, SCM menu_items)
void s_menu_print (void)
void s_menu_free (void)
void s_menu_init (void)
PAGEs_page_new (TOPLEVEL *toplevel, const gchar *filename)
 create a new page object
void s_page_delete (TOPLEVEL *toplevel, PAGE *page)
 delete a page and it's contents
void s_page_delete_list (TOPLEVEL *toplevel)
 Deletes the list of pages of toplevel.
void s_page_weak_ref (PAGE *page, void(*notify_func)(void *, void *), void *user_data)
 Add a weak reference watcher to an PAGE.
void s_page_weak_unref (PAGE *page, void(*notify_func)(void *, void *), void *user_data)
 Remove a weak reference watcher from an PAGE.
void s_page_add_weak_ptr (PAGE *page, void *weak_pointer_loc)
 Add a weak pointer to an PAGE.
void s_page_remove_weak_ptr (PAGE *page, void *weak_pointer_loc)
 Remove a weak pointer from an PAGE.
void s_page_goto (TOPLEVEL *toplevel, PAGE *p_new)
 changes the current page in toplevel
PAGEs_page_search (TOPLEVEL *toplevel, const gchar *filename)
 Search for pages by filename.
PAGEs_page_search_by_page_id (GedaPageList *list, int pid)
 Search for a page given its page id in a page list.
void s_page_print_all (TOPLEVEL *toplevel)
 Print full TOPLEVEL structure.
gint s_page_save_all (TOPLEVEL *toplevel)
 Saves all the pages of a TOPLEVEL object.
gboolean s_page_check_changed (GedaPageList *list)
 Check if CHANGED flag is set for any page in list.
void s_page_clear_changed (GedaPageList *list)
 Reset the CHANGED flag of all pages.
void s_page_autosave_init (TOPLEVEL *toplevel)
 Autosave initialization function.
gint s_page_autosave (TOPLEVEL *toplevel)
 Autosave callback function.
void s_page_append (TOPLEVEL *toplevel, PAGE *page, OBJECT *object)
 Append an OBJECT to the PAGE.
void s_page_append_list (TOPLEVEL *toplevel, PAGE *page, GList *obj_list)
 Append a GList of OBJECTs to the PAGE.
void s_page_remove (TOPLEVEL *toplevel, PAGE *page, OBJECT *object)
 Remove an OBJECT from the PAGE.
void s_page_replace (TOPLEVEL *toplevel, PAGE *page, OBJECT *object1, OBJECT *object2)
 Replace an OBJECT in a PAGE, in the same list position.
void s_page_delete_objects (TOPLEVEL *toplevel, PAGE *page)
 Remove and free all OBJECTs from the PAGE.
const GList * s_page_objects (PAGE *page)
 Return a GList of OBJECTs on the PAGE.
GList * s_page_objects_in_region (TOPLEVEL *toplevel, PAGE *page, int min_x, int min_y, int max_x, int max_y)
 Find the objects in a given region.
GList * s_page_objects_in_regions (TOPLEVEL *toplevel, PAGE *page, BOX *rects, int n_rects)
 Find the objects in a given region.
int s_papersizes_add_entry (char *new_papersize, int width, int height)
void s_papersizes_print (void)
int s_papersizes_uniq (char *name)
void s_papersizes_free (void)
void s_papersizes_init (void)
char * s_papersizes_get (int counter)
void s_papersizes_get_size (char *string, int *width, int *height)
PATHs_path_parse (const char *path_str)
char * s_path_string_from_path (const PATH *path)
void s_toplevel_append_new_hook (NewToplevelFunc func, void *user_data)
TOPLEVELs_toplevel_new (void)
 Create a TOPLEVEL object.
void s_toplevel_delete (TOPLEVEL *toplevel)
void s_toplevel_weak_ref (TOPLEVEL *toplevel, void(*notify_func)(void *, void *), void *user_data)
 Add a weak reference watcher to an TOPLEVEL.
void s_toplevel_weak_unref (TOPLEVEL *toplevel, void(*notify_func)(void *, void *), void *user_data)
 Remove a weak reference watcher from an TOPLEVEL.
void s_toplevel_add_weak_ptr (TOPLEVEL *toplevel, void *weak_pointer_loc)
 Add a weak pointer to an TOPLEVEL.
void s_toplevel_remove_weak_ptr (TOPLEVEL *toplevel, void *weak_pointer_loc)
 Remove a weak pointer from an TOPLEVEL.
int s_slib_add_entry (char *new_path)
int s_slib_search_for_dirname (char *dir_name)
char * s_slib_search_dirs (const char *basename)
char * s_slib_search_lowlevel (const char *basename)
char * s_slib_getbasename (const char *rawname)
 Get the base file name from a raw file name string.
char * s_slib_search (const char *filename, int flag)
 Search SLIB for a particular file name.
char * s_slib_search_single (const char *filename)
 Search SLIB for a particular file name.
void s_slib_free (void)
void s_slib_init (void)
char * s_slib_getdir (int index)
char * s_slib_getfiles (char *directory, int flag)
void s_slib_print (void)
int s_slib_uniq (char *path)
void s_slib_print_dirs (void)
char * s_slot_search_slot (OBJECT *object, OBJECT **return_found)
 Search for slot attribute.
void s_slot_update_object (TOPLEVEL *toplevel, OBJECT *object)
 Update all slot attributes in an object.
void s_tile_update_object (TOPLEVEL *toplevel, OBJECT *object)
 update the tile informations of an object
GList * s_tile_get_objectlists (TOPLEVEL *toplevel, PAGE *p_current, int world_x1, int world_y1, int world_x2, int world_y2)
 get a list of object lists of all tiles inside a region
UNDOs_undo_return_tail (UNDO *head)
UNDOs_undo_return_head (UNDO *tail)
UNDOs_undo_new_head (void)
void s_undo_destroy_head (UNDO *u_head)
UNDOs_undo_add (UNDO *head, int type, char *filename, GList *object_list, int left, int top, int right, int bottom, int page_control, int up)
void s_undo_print_all (UNDO *head)
void s_undo_destroy_all (TOPLEVEL *toplevel, UNDO *head)
void s_undo_remove (TOPLEVEL *toplevel, UNDO *head, UNDO *u_tos)
void s_undo_remove_rest (TOPLEVEL *toplevel, UNDO *head)
int s_undo_levels (UNDO *head)
void s_undo_init (PAGE *p_current)
void s_undo_free_all (TOPLEVEL *toplevel, PAGE *p_current)
char * u_basic_breakup_string (char *string, char delimiter, int count)

Function Documentation

G_BEGIN_DECLS const gchar* o_file_format_header ( )
Function Description
This function simply returns the DATE_VERSION and FILEFORMAT_VERSION formatted as a gEDA file header.
Warning:
Do not free the returned string.

Definition at line 45 of file a_basic.c.

gchar* o_save_buffer ( TOPLEVEL toplevel,
const GList *  object_list 
)
int o_save ( TOPLEVEL toplevel,
const GList *  object_list,
const char *  filename,
GError **  err 
)
GList* o_read_buffer ( TOPLEVEL toplevel,
GList *  object_list,
char *  buffer,
const int  size,
const char *  name,
GError **  err 
)
GList* o_read ( TOPLEVEL toplevel,
GList *  object_list,
char *  filename,
GError **  err 
)
Function Description
This function reads a file in libgeda format.
Parameters:
[in,out]toplevelThe current TOPLEVEL structure.
[in]object_listThe object_list to read data to.
[in]filenameThe filename to read from.
[in,out]err#GError structure for error reporting, or NULL to disable error reporting
Returns:
object_list if successful read, or NULL on error.

Definition at line 556 of file a_basic.c.

Here is the call graph for this function:

void o_scale ( TOPLEVEL toplevel,
GList *  list,
int  x_scale,
int  y_scale 
)
Function Description
This function takes a list of lines and scales them by the values of x_scale and y_scale.
Parameters:
[in]toplevelThe current TOPLEVEL object.
[in,out]listThe list with lines to scale.
[in]x_scaleThe x scale value for the lines.
[in]y_scaleThe y scale value for the lines.
Todo:
this really doesn't belong here. you need more of a core routine first. yes.. this is the core routine, just strip out the drawing stuff move it to o_complex_scale

Definition at line 592 of file a_basic.c.

Here is the call graph for this function:

gchar* f_get_autosave_filename ( const gchar *  filename)
Function description
Returns the expected autosave filename for the filename passed.
Warning:
The result should be freed when no longer needed.
Parameters:
[in]filenameThe filename to create an autosave filename for.
Returns:
A newly allocated string buffer.

Definition at line 67 of file f_basic.c.

gboolean f_has_active_autosave ( const gchar *  filename,
GError **  err 
)
Function Description
Checks whether an autosave file exists for the filename passed which has a modification time newer than the file itself. If the check fails, sets err with the reason. N.b. if the autosave file exists but it was not possible to get its modification time, returns TRUE.
Parameters:
[in]filenameFile to check
[in,out]err#GError structure for error reporting, or NULL to disable error reporting
Returns:
TRUE if autosave active, FALSE otherwise

Definition at line 97 of file f_basic.c.

Here is the call graph for this function:

int f_open ( TOPLEVEL toplevel,
PAGE page,
const gchar *  filename,
GError **  err 
)
Function Description
Opens the schematic file by calling f_open_flags() with the F_OPEN_RC and F_OPEN_CHECK_BACKUP flags.
Parameters:
[in,out]toplevelThe TOPLEVEL object to load the schematic into.
[in]filenameA character string containing the file name to open.
[in,out]err#GError structure for error reporting, or NULL to disable error reporting
Returns:
0 on failure, 1 on success.

Definition at line 165 of file f_basic.c.

Here is the call graph for this function:

int f_open_flags ( TOPLEVEL toplevel,
PAGE page,
const gchar *  filename,
const gint  flags,
GError **  err 
)
Function Description
Opens the schematic file and carries out a number of actions depending on the flags set. If F_OPEN_RC is set, executes configuration files found in the target directory. If F_OPEN_CHECK_BACKUP is set, warns user if a backup is found for the file being loaded, and possibly prompts user for whether to load the backup instead. If F_OPEN_RESTORE_CWD is set, does not change the working directory to that of the file being loaded.
Parameters:
[in,out]toplevelThe TOPLEVEL object to load the schematic into.
[in]filenameA character string containing the file name to open.
[in]flagsCombination of FOpenFlags values.
[in,out]err#GError structure for error reporting, or NULL to disable error reporting
Returns:
0 on failure, 1 on success.

Definition at line 191 of file f_basic.c.

Here is the call graph for this function:

void f_close ( TOPLEVEL toplevel)
Function Description
Does nothing
Parameters:
[in,out]toplevelThe TOPLEVEL object with schematic to be closed.

Definition at line 341 of file f_basic.c.

int f_save ( TOPLEVEL toplevel,
PAGE page,
const char *  filename,
GError **  err 
)
Function Description
This function saves the current schematic file in the toplevel object.
Bug:
g_access introduces a race condition in certain cases, but solves bug #698565 in the normal use-case
Parameters:
[in,out]toplevelThe TOPLEVEL object containing the schematic.
[in]filenameThe file name to save the schematic to.
[in,out]err#GError structure for error reporting, or NULL to disable error reporting
Returns:
1 on success, 0 on failure.

Definition at line 359 of file f_basic.c.

Here is the call graph for this function:

gchar* f_normalize_filename ( const gchar *  name,
GError **  error 
)
Function Description
This function derives an absolute pathname for the pathname pointed to by name with '.' and '..' resolved. It does not resolve symbolic links.

It returns NULL and sets the error (if not NULL) if it failed to build the pathname or the pathname does not exists.

Note:
The code for this function is derived from the realpath() of the GNU C Library (Copyright (C) 1996-2002, 2004, 2005, 2006 Free Software Foundation, Inc. / LGPL 2.1 or later).

The part for the resolution of symbolic links has been discarded and it has been adapted for glib and for use on Windows.

Parameters:
[in]nameA character string containing the pathname to resolve.
[in,out]errorReturn location for a GError, or NULL.
Returns:
A newly-allocated string with the resolved absolute pathname on success, NULL otherwise.

Definition at line 510 of file f_basic.c.

char* follow_symlinks ( const gchar *  filename,
GError **  err 
)
Function Description
Does readlink() recursively until we find a real filename.
Parameters:
[in]filenameThe filename to search for.
[in,out]err#GError structure for error reporting, or NULL to disable error reporting.
Returns:
The newly-allocated path to real file on success, NULL otherwise.
Note:
Originally taken from gedit's source code.

Definition at line 650 of file f_basic.c.

int f_print_file ( TOPLEVEL toplevel,
PAGE page,
const char *  filename 
)
Function Description
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE to print.
[in]filenameThe file name of the output postscript document.
Returns:
0 on success, -1 on failure.

Definition at line 365 of file f_print.c.

Here is the call graph for this function:

int f_print_command ( TOPLEVEL toplevel,
PAGE page,
const char *  command 
)
Function Description
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE to print.
[in]commandThe command to print to.
Returns:
0 on success, -1 on failure.

Definition at line 399 of file f_print.c.

Here is the call graph for this function:

int f_print_stream ( TOPLEVEL toplevel,
PAGE page,
FILE *  fp 
)
Function Description
Parameters:
[in]toplevelThe TOPLEVEL object to print.
[in]fpA pointer to an open IO stream
Returns:
0 on success, -1 on failure.

Definition at line 428 of file f_print.c.

Here is the call graph for this function:

void f_print_set_type ( TOPLEVEL toplevel,
int  type 
)
Function Description
Sets the current TOPLEVEL object output type.
Parameters:
[in,out]toplevelThe TOPLEVEL object to set output type in.
[in]typeThe print type to set.

Definition at line 623 of file f_print.c.

SCM g_scm_eval_protected ( SCM  exp,
SCM  module_or_state 
)
Function Description

Often a libgeda program (or libgeda itself) will need to call out to Scheme code, for example to load a Scheme configuration file. If an error or exception caused by such code goes uncaught, it locks up the Scheme interpreter, stopping any further Scheme code from being run until the program is restarted.

This function is equivalent to scm_eval (), with the important difference that any errors or exceptions caused by the evaluated expression exp are caught and reported via the libgeda logging mechanism. If an error occurs during evaluation, this function returns SCM_BOOL_F. If module_or_state is undefined, uses the current interaction environment.

Parameters:
expExpression to evaluate
module_or_stateEnvironment in which to evaluate exp
Returns:
Evaluation results or SCM_BOOL_F if exception caught.

Definition at line 97 of file g_basic.c.

Here is the call graph for this function:

SCM g_scm_eval_string_protected ( SCM  str)
Function Description

Evaluates a string similarly to scm_eval_string(), but catching any errors or exceptions and reporting them via the libgeda logging mechanism.

See also g_scm_eval_protected() and g_scm_c_eval_string_protected().

Parameters:
strString to evaluate.
Returns:
Evaluation results or SCM_BOOL_F if exception caught.

Definition at line 153 of file g_basic.c.

Here is the call graph for this function:

SCM g_scm_c_eval_string_protected ( const gchar *  str)
Function Description

Evaluates a C string like scm_c_eval_string(). Simple wrapper for g_scm_eval_string_protected().

Parameters:
strString to evaluate.
Returns:
Evaluation results or SCM_BOOL_F if exception caught.

Definition at line 133 of file g_basic.c.

Here is the call graph for this function:

gboolean g_read_file ( TOPLEVEL toplevel,
const gchar *  filename,
GError **  err 
)
Function Description
Loads filename, catching any uncaught errors and logging them.
Bug:
Most other functions in the libgeda API return TRUE on success and FALSE on failure. g_read_file() shouldn't be an exception.
Parameters:
toplevelThe TOPLEVEL structure.
filenameThe file name of the Scheme file to load.
errReturn location for errors, or NULL.
Returns:
TRUE on success, FALSE on failure.

Definition at line 208 of file g_basic.c.

Here is the call graph for this function:

SCM g_rc_mode_general ( SCM  scmmode,
const char *  rc_name,
int *  mode_var,
const vstbl_entry table,
int  table_size 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 83 of file g_rc.c.

Here is the call graph for this function:

gboolean g_rc_parse_system ( TOPLEVEL toplevel,
const gchar *  rcname,
GError **  err 
)
Function Description
Attempts to load the system configuration file with basename rcname. The string "system-" is prefixed to rcname. If rcname is NULL, the default value of "gafrc" is used.
Parameters:
toplevelThe current TOPLEVEL structure.
rcfileThe basename of the configuration file to load, or NULL.
errReturn location for errors, or NULL.
Returns:
TRUE on success, FALSE on failure.

Definition at line 128 of file g_rc.c.

Here is the call graph for this function:

gboolean g_rc_parse_user ( TOPLEVEL toplevel,
const gchar *  rcname,
GError **  err 
)
Function Description
Attempts to load the user configuration file with basename rcname. If rcname is NULL, the default value of "gafrc" is used.
Parameters:
toplevelThe current TOPLEVEL structure.
rcfileThe basename of the configuration file to load, or NULL.
errReturn location for errors, or NULL.
Returns:
TRUE on success, FALSE on failure.

Definition at line 154 of file g_rc.c.

Here is the call graph for this function:

gboolean g_rc_parse_local ( TOPLEVEL toplevel,
const gchar *  rcname,
const gchar *  path,
GError **  err 
)
Function Description
Attempts to load the configuration file with basename rcname corresponding to path, reporting errors via err. If path is a directory, looks for a file named rcname in that directory. Otherwise, looks for a file named rcname in the same directory as path. If path is NULL, looks in the current directory. If rcname is NULL, the default value of "gafrc" is used.
Parameters:
toplevelThe current TOPLEVEL structure.
rcnameThe basename of the configuration file to load, or NULL.
pathThe path to load a configuration file for, or NULL.
errReturn location for errors, or NULL.
Returns:
TRUE on success, FALSE on failure.

Definition at line 179 of file g_rc.c.

Here is the call graph for this function:

gboolean g_rc_parse_file ( TOPLEVEL toplevel,
const gchar *  rcfile,
GError **  err 
)
Function Description
Load the configuration file rcfile, reporting errors via err.
Parameters:
toplevelThe current TOPLEVEL structure.
rcfileThe filename of the configuration file to load.
errReturn location for errors, or NULL;
Returns:
TRUE on success, FALSE on failure.

Todo:
We should upgrade to GLib >= 2.16 and use g_propagate_prefixed_error().

Definition at line 252 of file g_rc.c.

Here is the call graph for this function:

void g_rc_parse ( TOPLEVEL toplevel,
const gchar *  pname,
const gchar *  rcname,
const gchar *  rcfile 
)
Function Description
Calls g_rc_parse_handler() with the default error handler. If any error other than ENOENT occurs while parsing a configuration file, prints an informative message and calls exit(1).
Bug:
libgeda shouldn't call exit() - this function calls g_rc_parse__process_error(), which does.
Warning:
Since this function may not return, it should only be used on application startup or when there is no chance of data loss from an unexpected exit().
Parameters:
[in]toplevelThe current TOPLEVEL structure.
[in]pnameThe name of the application (usually argv[0]).
[in]rcnameConfig file basename, or NULL.
[in]rcfileSpecific config file path, or NULL.

Definition at line 341 of file g_rc.c.

Here is the call graph for this function:

void g_rc_parse_handler ( TOPLEVEL toplevel,
const gchar *  rcname,
const gchar *  rcfile,
ConfigParseErrorFunc  handler,
void *  user_data 
)
Function Description
Attempt to load system, user and local (current working directory) configuration files, first with the default "gafrc" basename and then with the basename rcname, if rcname is not NULL. Additionally, attempt to load configuration from rcfile if rcfile is not NULL.

If an error occurs, calls handler with the provided user_data and a GError.

See also:
g_rc_parse().
Parameters:
toplevelThe current TOPLEVEL structure.
rcnameConfig file basename, or NULL.
rcfileSpecific config file path, or NULL.
handlerHandler function for config parse errors.
user_dataData to be passed to handler.

Definition at line 369 of file g_rc.c.

Here is the call graph for this function:

SCM g_rc_rc_filename ( )
Function Description

Creates a Guile stack object, extracts the topmost frame from that stack and gets the sourcefile name.

Returns:
If the interpreter can resolve the filename, returns a Scheme object with the full path to the RC file, otherwise #f

Definition at line 675 of file g_rc.c.

void i_vars_libgeda_set ( TOPLEVEL toplevel)
Function Description
This function will initialize variables to default values.
Parameters:
[out]toplevelThe TOPLEVEL object to be updated.

Definition at line 66 of file i_vars.c.

void i_vars_libgeda_freenames ( )
Function Description
This function will free all of the default variables for libgeda.

Definition at line 101 of file i_vars.c.

void libgeda_init ( void  )
Function Description
This function is responsible for making sure that any runtime initialization is done for all the libgeda routines. It should be called before any other libgeda functions are called.

Definition at line 48 of file libgeda.c.

Here is the call graph for this function:

void set_window ( TOPLEVEL toplevel,
PAGE page,
int  xmin,
int  xmax,
int  ymin,
int  ymax 
)
Function Description
This function will set the current page constraints.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]pageThe PAGE object to set constraints on.
[in]xminThe minimum x coordinate for the page.
[in]xmaxThe maximum x coordinate for the page.
[in]yminThe minimum y coordinate for the page.
[in]ymaxThe maximum y coordinate for the page.

Definition at line 43 of file m_basic.c.

void rotate_point ( int  x,
int  y,
int  angle,
int *  newx,
int *  newy 
)
Function Description
This function will rotate a point coordinate by an arbitrary angle and return the new coordinate in the newx and newy parameters.
Parameters:
[in]xInput point x coordinate.
[in]yInput point y coordinate.
[in]angleAngle to rotate in degrees.
[out]newxOutput point x coordinate.
[out]newyOutput point y coordinate.

Definition at line 93 of file m_basic.c.

void rotate_point_90 ( int  x,
int  y,
int  angle,
int *  newx,
int *  newy 
)
Function Description
This function takes a point coordinate and rotates it by 90 degrees at a time. The new point coordinate is returned in newx and newy.
Parameters:
[in]xInput point x coordinate.
[in]yInput point y coordinate.
[in]angleAngle to rotate by (90 degree increments only).
[out]newxOutput point x coordinate.
[out]newyOutput point y coordinate.

Definition at line 119 of file m_basic.c.

void PAPERSIZEtoWORLD ( int  width,
int  height,
int  border,
int *  right,
int *  bottom 
)
Function Description
This function takes the paper size and converts it to world coordinates. It supports landscape with a fixed aspect ratio.
Parameters:
[in]widthPaper width. (units?)
[in]heightPaper height. (units?)
[in]borderPaper border size. (units?)
[out]rightRight world coordinate. (units?)
[out]bottomBottom world coordinate. (units?)
Todo:
Support more modes than just landscape only mode.

Definition at line 168 of file m_basic.c.

void m_hatch_box ( BOX box,
gint  angle,
gint  pitch,
GArray *  lines 
)

This function appends new line segments to the lines GArray. For creating a hatch pattern, the GArray must be cleared before calling this function. For creating cross hatch patterns, this function can be called multiple times with a different angle or pitch while passing the same lines GArray.

Parameters:
box[in] The box shape to hatch.
angle[in] The angle of the hatch lines with respect to the x axis.
pitch[in] The distance between hatch lines
lines[inout] A GArray of LINE to contain the new hatch line segments. This function appends new line segments to the GArray and leaves existing GArray contents unchanged.

Definition at line 115 of file m_hatch.c.

Here is the call graph for this function:

void m_hatch_circle ( CIRCLE circle,
gint  angle,
gint  pitch,
GArray *  lines 
)

This function appends new line segments to the lines GArray. For creating a hatch pattern, the GArray must be cleared before calling this function. For creating cross hatch patterns, this function can be called multiple times with a different angle or pitch while passing the same lines GArray.

Parameters:
circle[in] The circle shape to hatch.
angle[in] The angle of the hatch lines with respect to the x axis.
pitch[in] The distance between hatch lines
lines[inout] A GArray of LINE to contain the new hatch line segments. This function appends new line segments to the GArray and leaves existing GArray contents unchanged.

Definition at line 160 of file m_hatch.c.

Here is the call graph for this function:

void m_hatch_path ( PATH path,
gint  angle,
gint  pitch,
GArray *  lines 
)

This function appends new line segments to the lines GArray. For creating a hatch pattern, the GArray must be cleared before calling this function. For creating cross hatch patterns, this function can be called multiple times with a different angle or pitch while passing the same lines GArray.

Parameters:
path[in] The path shape to hatch.
angle[in] The angle of the hatch lines with respect to the x axis.
pitch[in] The distance between hatch lines
lines[inout] A GArray of LINE to contain the new hatch line segments. This function appends new line segments to the GArray and leaves existing GArray contents unchanged.

Definition at line 207 of file m_hatch.c.

Here is the call graph for this function:

void m_polygon_append_bezier ( GArray *  points,
BEZIER bezier,
int  segments 
)
Parameters:
points[inout] The vertices of the polygon. This parameter must not be NULL.
bezier[in] The bezier curve to append.
segments[in] The number of segments to subdivide the bezier curve into.

Definition at line 32 of file m_polygon.c.

Here is the call graph for this function:

void m_polygon_append_point ( GArray *  points,
int  x,
int  y 
)
Parameters:
points[inout] The vertices of the polygon. This parameter must not be NULL.
x[in] The x coordinate of the point to append.
y[in] The y coordinate of the point to append.

Definition at line 86 of file m_polygon.c.

OBJECT* o_arc_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x,
int  y,
int  radius,
int  start_angle,
int  end_angle 
)
Function Description
The function creates a new OBJECT of type arc.

The arc is defined by its center in parameters x and y. The radius parameter specifies the radius of the arc. The start angle is given by start_angle and the end angle by end_angle. The line and fill type of the created arc are set to default.

All dimensions are in world unit, except start_angle and end_angle in degrees.

A new object of type OBJECT is allocated. Its type and color are initilized. The description of the arc characteristics are stored in a new ARC structure.

Now fixed for world coordinates.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]type
[in]color
[in]x
[in]y
[in]radius
[in]start_angle
[in]end_angle
Returns:

Note:
The ARC structure is initialized with the parameters. A default initialization is performed for the line and fill type to avoid misunderstanding.

The functions relative to the use of the object are sets.

Definition at line 64 of file o_arc_basic.c.

Here is the call graph for this function:

OBJECT* o_arc_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a new object representing an arc.

The values of the o_current pointed OBJECT are then copied to the new object.

The arc, the line options are initialized whereas the fill options are initialized to passive values - as an arc can not be filled.

Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_current
Returns:
The new OBJECT

Definition at line 127 of file o_arc_basic.c.

Here is the call graph for this function:

void o_arc_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies the internal values of the arc object *object according to the whichone parameter.

The new values are given by x and/or y. Their meaning depends on the value of whichone.

If whichone is equal to ARC_CENTER, the (x,y) point is taken as the new center of the arc in world unit.

If whichone is equal to ARC_RADIUS, the x parameter is taken to be the radius of the arc in world unit. The y parameter is ignored.

If whichone is equal to ARC_START_ANGLE, the x parameter is the starting angle of the arc. x is in degrees. y is ignored.

If whichone is equal to ARC_END_ANGLE, the x parameter is the ending angle of the arc. x is in degrees. y is ignored.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]object
[in]x
[in]y
[in]whichone

Definition at line 171 of file o_arc_basic.c.

Here is the call graph for this function:

void o_arc_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (dx,dy) to the arc described in *object. dx and dy are in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dx
[in]dy
[in]object

Definition at line 351 of file o_arc_basic.c.

Here is the call graph for this function:

void o_arc_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates the world coordinates of an arc of an angle specified by angle. The center of the rotation is given by (world_centerx,world_centery).

The arc is translated in order to put the center of the rotation on the origin. The center of the arc is then rotated of the angle specified by angle. The start angle of the arc is incremented by angle.

The arc is finally back translated to its previous location on the page.

world_centerx and world_centery are in world units, angle is in degrees.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerx
[in]world_centery
[in]angle
[in]object

Definition at line 387 of file o_arc_basic.c.

Here is the call graph for this function:

void o_arc_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors the world coordinates of an arc. The symetry axis is given by the vertical line going through the point (world_centerx,world_centery).

The arc is translated in order to put the point (world_centerx,world_centery) on the origin. The center of the arc is then mirrored. The start angle of the arc and the sweep of the arc are also mirrored.

The arc is finally back translated to its previous location on the page.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerx
[in]world_centery
[in]object

Definition at line 438 of file o_arc_basic.c.

Here is the call graph for this function:

void o_attrib_add ( TOPLEVEL toplevel,
OBJECT object,
OBJECT item 
)
Function Description
Add an attribute to an existing attribute list.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]objectThe OBJECT we're adding the attribute to.
[in]itemThe item you want to add as an attribute.
Returns:
nothing.

Definition at line 68 of file o_attrib.c.

Here is the call graph for this function:

gboolean o_attrib_is_attached ( TOPLEVEL toplevel,
OBJECT attrib,
OBJECT object 
)
Function Description
This function checks whether the object attrib is attached to the object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]attribThe attribute to be checket.
[in]objectThe object where you want to add item as an attribute.
Returns:
TRUE if attrib is an attribute of object, FALSE otherwise

Definition at line 88 of file o_attrib.c.

void o_attrib_attach ( TOPLEVEL toplevel,
OBJECT attrib,
OBJECT object,
int  set_color 
)
Function Description
Attach existing attribute to an object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]attribThe attribute to be added.
[out]objectThe object where you want to add item as an attribute.
[in]set_colorWhether or not we should set the new attribute's color.

Definition at line 110 of file o_attrib.c.

Here is the call graph for this function:

void o_attrib_attach_list ( TOPLEVEL toplevel,
GList *  attr_list,
OBJECT object,
int  set_color 
)
Function Description
Attach list of existing attributes to an object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]attr_listThe list of attributes to be added.
[out]objectThe object where you want to add item as an attribute.
[in]set_colorWhether or not we should set the new attribute's color.

Definition at line 149 of file o_attrib.c.

Here is the call graph for this function:

void o_attrib_detach_all ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Detach all attributes from an object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectThe object whos attributes to detach.

Definition at line 166 of file o_attrib.c.

Here is the call graph for this function:

void o_attrib_print ( GList *  attributes)
Function Description
Print all attributes to a Postscript document.
Parameters:
[in]attributesList of attributes to print.

Definition at line 194 of file o_attrib.c.

void o_attrib_remove ( TOPLEVEL toplevel,
GList **  list,
OBJECT remove 
)
Todo:
Finish function.
Function Description
This function removes the given attribute from an attribute list. This function should be used when detaching an attribute.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]listThe attribute list to remove attribute from.
[in]removeThe OBJECT to remove from list.

Definition at line 222 of file o_attrib.c.

Here is the call graph for this function:

gboolean o_attrib_string_get_name_value ( const gchar *  string,
gchar **  name_ptr,
gchar **  value_ptr 
)
Function Description
This function parses the character string string expected to be an attribute string of the form 'name=value'.

It returns TRUE if it has been able to parse the string into the name and value parts of an attribute. Otherwise it returns FALSE, in that case *name_ptr and *value_ptr are set to NULL.

name_ptr and/or value_ptr can be NULL. If not NULL, the caller must g_free these returned strings.

Note:
If you get an invalid attribute (improper) with a name and no value, then it is NOT an attribute. Also, there cannot be any spaces beside the equals sign
Parameters:
[in]stringString to split into name/value pair.
[out]name_ptrThe return location for the name, or NULL.
[out]value_ptrThe return location for the value, or NULL.
Returns:
TRUE on success, FALSE otherwise.

Definition at line 379 of file o_attrib.c.

gboolean o_attrib_get_name_value ( OBJECT attrib,
gchar **  name_ptr,
gchar **  value_ptr 
)
Function Description
See o_attrib_string_get_name_value() for more details
Parameters:
[in]attribThe attribute OBJECT whos name/value to return.
[out]name_ptrThe return location for the name, or NULL.
[out]value_ptrThe return location for the value, or NULL.
Returns:
TRUE on success, FALSE otherwise.

Definition at line 424 of file o_attrib.c.

Here is the call graph for this function:

GList* o_attrib_find_floating_attribs ( const GList *  list)
Function Description
Find all floating attributes in the given object list.
Parameters:
[in]listGList of OBJECTs to search for floating attributes.
Returns:
GList of floating attributes from the input list
Warning:
Caller must g_list_free returned list.

Definition at line 443 of file o_attrib.c.

Here is the call graph for this function:

char* o_attrib_search_floating_attribs_by_name ( const GList *  list,
char *  name,
int  counter 
)
Function Description
Search for attribute by name.

Counter is the n'th occurance of the attribute, and starts searching from zero. Zero is the first occurance of an attribute.

Parameters:
[in]listGList of OBJECTs to search for floating attributes.
[in]nameCharacter string with attribute name to search for.
[in]counterWhich occurance to return.
Returns:
Character string with attribute value, NULL otherwise.
Warning:
Caller must g_free returned character string.

Definition at line 550 of file o_attrib.c.

Here is the call graph for this function:

char* o_attrib_search_attached_attribs_by_name ( OBJECT object,
char *  name,
int  counter 
)
Function Description
Search for attribute by name.

Counter is the n'th occurance of the attribute, and starts searching from zero. Zero is the first occurance of an attribute.

Parameters:
[in]objectThe OBJECT whos attached attributes to search.
[in]nameCharacter string with attribute name to search for.
[in]counterWhich occurance to return.
Returns:
Character string with attribute value, NULL otherwise.
Warning:
Caller must g_free returned character string.

Definition at line 578 of file o_attrib.c.

Here is the call graph for this function:

char* o_attrib_search_inherited_attribs_by_name ( OBJECT object,
char *  name,
int  counter 
)
Function Description
Search for attribute by name.

Counter is the n'th occurance of the attribute, and starts searching from zero. Zero is the first occurance of an attribute.

Parameters:
[in]objectThe OBJECT whos inherited attributes to search.
[in]nameCharacter string with attribute name to search for.
[in]counterWhich occurance to return.
Returns:
Character string with attribute value, NULL otherwise.
Warning:
Caller must g_free returned character string.

Definition at line 599 of file o_attrib.c.

Here is the call graph for this function:

char* o_attrib_search_object_attribs_by_name ( OBJECT object,
char *  name,
int  counter 
)
Function Description
Search for attribute by name.

Counter is the n'th occurance of the attribute, and starts searching from zero. Zero is the first occurance of an attribute.

Parameters:
[in]objectOBJECT who's attributes to search.
[in]nameCharacter string with attribute name to search for.
[in]counterWhich occurance to return.
Returns:
Character string with attribute value, NULL otherwise.
Warning:
Caller must g_free returned character string.

Definition at line 623 of file o_attrib.c.

Here is the call graph for this function:

GList* o_attrib_return_attribs ( OBJECT object)
Function Description
This function returns all attributes of the specified object.

The returned GList should be freed using the #g_list_free().

This function aggregates the attached and inherited attributes belonging to a given OBJECT. (inherited attributes are those which live as toplevel un-attached attributes inside in a complex OBJECT's prim_objs).

Parameters:
[in]objectOBJECT whos attributes to return.
Returns:
A GList of attributes belinging to the passed object.

Definition at line 650 of file o_attrib.c.

Here is the call graph for this function:

int o_attrib_is_inherited ( OBJECT attrib)
Function Description
This function returns TRUE if the given attribute OBJECT is a toplevel un-attached attribute inside a complex's prim_objs.
Parameters:
[in]attribOBJECT who's status to query.
Returns:
TRUE if the given attribute is inside a symbol

Definition at line 698 of file o_attrib.c.

void o_attrib_append_attribs_changed_hook ( TOPLEVEL toplevel,
AttribsChangedFunc  func,
void *  data 
)

Definition at line 711 of file o_attrib.c.

void o_attrib_emit_attribs_changed ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 735 of file o_attrib.c.

Here is the call graph for this function:

void o_attrib_freeze_hooks ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 750 of file o_attrib.c.

void o_attrib_thaw_hooks ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 755 of file o_attrib.c.

Here is the call graph for this function:

int inside_region ( int  xmin,
int  ymin,
int  xmax,
int  ymax,
int  x,
int  y 
)
Function Description
This function takes a rectangular region and a point. It will check if the point is located in the region or not.
Parameters:
[in]xminSmaller x coordinate of the region.
[in]yminSmaller y coordinate of the region.
[in]xmaxLarger x coordinate of the region.
[in]ymaxLarger y coordinate of the region.
[in]xx coordinate of the point to check.
[in]yy coordinate of the point to check.
Returns:
1 if the point is inside the region, 0 otherwise.

Definition at line 75 of file o_basic.c.

void o_recalc_single_object ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function will take an object and recalculate its position on the screen.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]o_currentOBJECT to recalculate.

Definition at line 89 of file o_basic.c.

Here is the call graph for this function:

void o_recalc_object_glist ( TOPLEVEL toplevel,
GList *  object_glist 
)
Function Description
This function will take a list (GList) of objects and recalculate their positions on the screen.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]object_glistOBJECT list to recalculate.

Definition at line 153 of file o_basic.c.

Here is the call graph for this function:

void o_set_line_options ( TOPLEVEL toplevel,
OBJECT o_current,
OBJECT_END  end,
OBJECT_TYPE  type,
int  width,
int  length,
int  space 
)
Function Description
This function allows a line's end, type, width, length and space to be set. See OBJECT_END and OBJECT_TYPE for information on valid object end and type values.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]o_currentOBJECT to set line options on.
[in]endAn OBJECT_END.
[in]typeAn OBJECT_TYPE.
[in]widthLine width.
[in]lengthLine length.
[in]spaceSpacing between dashes/dots. Cannot be negative.
Todo:
Make space an unsigned int and check for a max value instead. If a max value is not required, then it would simplify the code.

Definition at line 183 of file o_basic.c.

Here is the call graph for this function:

gboolean o_get_line_options ( OBJECT object,
OBJECT_END end,
OBJECT_TYPE type,
int *  width,
int *  length,
int *  space 
)
Function Description
This function get's the OBJECT's line options. See OBJECT_END and OBJECT_TYPE for information on valid object end and type values.
Parameters:
[in]objectOBJECT to read the properties
[out]endAn OBJECT_END.
[out]typeAn OBJECT_TYPE.
[out]widthLine width.
[out]lengthLine length.
[out]spaceSpacing between dashes/dots.
Returns:
TRUE on succes, FALSE otherwise

Definition at line 246 of file o_basic.c.

void o_set_fill_options ( TOPLEVEL toplevel,
OBJECT o_current,
OBJECT_FILLING  type,
int  width,
int  pitch1,
int  angle1,
int  pitch2,
int  angle2 
)
Function Description
This function allows an OBJECT's fill options to be configured. See OBJECT_FILLING for information on valid fill types.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]o_currentOBJECT to be updated.
[in]typeOBJECT_FILLING type.
[in]widthfill width.
[in]pitch1cross hatch line distance
[in]angle1cross hatch angle
[in]pitch2cross hatch line distance
[in]angle2cross hatch angle

Definition at line 281 of file o_basic.c.

Here is the call graph for this function:

gboolean o_get_fill_options ( OBJECT object,
OBJECT_FILLING type,
int *  width,
int *  pitch1,
int *  angle1,
int *  pitch2,
int *  angle2 
)
Function Description
This function get's the OBJECT's fill options. See OBJECT_FILLING for information on valid fill types.
Parameters:
[in]objectOBJECT to read the properties
[out]typeOBJECT_FILLING type
[out]widthfill width.
[out]pitch1cross hatch line distance
[out]angle1cross hatch angle
[out]pitch2cross hatch line distance
[out]angle2cross hatch angle
Returns:
TRUE on succes, FALSE otherwise

Definition at line 319 of file o_basic.c.

gboolean o_get_position ( TOPLEVEL toplevel,
gint *  x,
gint *  y,
OBJECT object 
)
Function Description
This function gets the position of an object in world coordinates.
Parameters:
[in]toplevelThe toplevel environment.
[out]xpointer to the x-position
[out]ypointer to the y-position
[in]objectThe object to get the position.
Returns:
TRUE if successfully determined the position, FALSE otherwise

Definition at line 349 of file o_basic.c.

Here is the call graph for this function:

void o_translate_world ( TOPLEVEL toplevel,
gint  dx,
gint  dy,
OBJECT object 
)
Function Description
This function translates the object object by dx and dy.
Parameters:
[in]toplevelThe toplevel environment.
[in]dxAmount to horizontally translate object
[in]dyAmount to vertically translate object
[in]objectThe object to translate.

Definition at line 388 of file o_basic.c.

Here is the call graph for this function:

void o_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates the object object about the coordinates world_centerx and world_centery, by angledegrees.
Parameters:
[in]toplevelThe toplevel environment.
[in]world_centerxX coordinate of rotation center (world coords)
[in]world_centeryY coordinate of rotation center (world coords)
[in]angleAngle of rotation (degrees)
[in]objectThe object to rotate.

Definition at line 427 of file o_basic.c.

Here is the call graph for this function:

void o_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors an object about the point (world_centerx,world_centery) in world units.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectThe OBJECT to mirror.

Definition at line 465 of file o_basic.c.

Here is the call graph for this function:

double o_shortest_distance ( OBJECT object,
int  x,
int  y 
)
Parameters:
[in]objectThe given object.
[in]xThe x coordinate of the given point.
[in]yThe y coordinate of the given point.
Returns:
The shortest distance from the object to the point. If the distance cannot be calculated, this function returns a really large number (G_MAXDOUBLE). If an error occurs, this function returns G_MAXDOUBLE.

Definition at line 504 of file o_basic.c.

Here is the call graph for this function:

void o_set_color ( TOPLEVEL toplevel,
OBJECT object,
int  color 
)
Function Description
This function changes the color of an object.
Parameters:
[in]toplevelThe TOPLEVEL structure.
[in]objectThe OBJECT to change color.
[in]colorThe new color.

Definition at line 581 of file o_basic.c.

Here is the call graph for this function:

PAGE* o_get_page ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Returns the PAGE structure which owns object. If object is not currently associated with a PAGE, returns NULL. If object is part of a compound object, recurses upward.
Parameters:
[in]toplevelThe TOPLEVEL structure.
[in]objectThe OBJECT for which to retrieve the parent PAGE.
Returns:
The PAGE which owns object or NULL.
See also:
s_page_append_object() s_page_append() s_page_remove()

Definition at line 607 of file o_basic.c.

Here is the call graph for this function:

OBJECT* o_get_parent ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
If object is part of a complex OBJECT, returns that OBJECT. Otherwise, returns NULL.
Parameters:
[in]toplevelThe TOPLEVEL structure.
[in]objectThe OBJECT for which to get the containing OBJECT.
Returns:
The complex OBJECT which owns object, or NULL.

Definition at line 657 of file o_basic.c.

void o_add_change_notify ( TOPLEVEL toplevel,
ChangeNotifyFunc  pre_change_func,
ChangeNotifyFunc  change_func,
void *  user_data 
)
Function Description
Adds a set of change notification handlers to a TOPLEVEL instance. pre_change_func will be called just before an object is modified, and change_func will be called just after an object is modified, with the affected object and the given user_data.
Parameters:
toplevelTOPLEVEL structure to add handlers to.
pre_change_funcFunction to be called just before changes.
change_funcFunction to be called just after changes.
user_dataUser data to be passed to callback functions.

Definition at line 688 of file o_basic.c.

void o_remove_change_notify ( TOPLEVEL toplevel,
ChangeNotifyFunc  pre_change_func,
ChangeNotifyFunc  change_func,
void *  user_data 
)
Function Description
Removes a set of change notification handlers and their associated user_data from toplevel. If no registered set of handlers matches the given pre_change_func, change_func and user_data, does nothing.
See also:
o_add_change_notify()
Parameters:
toplevelTOPLEVEL structure to remove handlers from.
pre_change_funcFunction called just before changes.
change_funcFunction called just after changes.
user_dataUser data passed to callback functions.

Definition at line 716 of file o_basic.c.

gboolean o_is_visible ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Attribute getter for the visible field within the object.
Parameters:
toplevelThe TOPLEVEL structure
objectThe OBJECT structure to be queried
Returns:
TRUE when VISIBLE, FALSE otherwise

Definition at line 801 of file o_basic.c.

void o_set_visibility ( TOPLEVEL toplevel,
OBJECT object,
int  visibility 
)
Function Description
Set value of visibility field within the object. If resulting visibility value is changed, invalidate the bounds of the object and parent objects.
Parameters:
toplevelThe TOPLEVEL structure
objectThe OBJECT structure to be modified

Definition at line 817 of file o_basic.c.

Here is the call graph for this function:

OBJECT* o_box_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
This function creates a new object representing a box.

The box is described by its upper left corner - x1, y1 - and its lower right corner - x2, y2. The type parameter must be equal to OBJ_BOX. The color corresponds to the color the box will be drawn with. The OBJECT structure is allocated with the s_basic_new_object() function. The structure describing the box is allocated and initialized with the parameters given to the function.

Both the line type and the filling type are set to default values : solid line type with a width of 0, and no filling. It can be changed after with the o_set_line_options() and o_set_fill_options().

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeBox type.
[in]colorBox border color.
[in]x1Upper x coordinate.
[in]y1Upper y coordinate.
[in]x2Lower x coordinate.
[in]y2Lower y coordinate.
Returns:
The new OBJECT

Definition at line 60 of file o_box_basic.c.

Here is the call graph for this function:

OBJECT* o_box_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
The function o_box_copy() creates a verbatim copy of the object pointed by o_current describing a box.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]o_currentBOX OBJECT to copy.
Returns:
The new OBJECT

Definition at line 101 of file o_box_basic.c.

Here is the call graph for this function:

void o_box_modify_all ( TOPLEVEL toplevel,
OBJECT object,
int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
Modifies the coordinates of all four corners of box, by setting the box to the rectangle enclosed by the points (x1, y1) and (x2, y2).
Parameters:
[in]toplevelcurrent TOPLEVEL.
[in,out]objectbox OBJECT to be modified.
[in]x1x coordinate of first corner of box.
[in]y1y coordinate of first corner of box.
[in]x2x coordinate of second corner of box.
[in]y2y coordinate of second corner of box,

Definition at line 151 of file o_box_basic.c.

Here is the call graph for this function:

void o_box_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies the coordinates of one of the four corner of the box. The new coordinates of the corner identified by whichone are given by x and y in world unit.

The coordinates of the corner is modified in the world coordinate system. Screen coordinates and boundings are then updated.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectBOX OBJECT to be modified.
[in]xx coordinate.
[in]yy coordinate.
[in]whichonecoordinate to change.
Note:
whichone can take the following values:
*
BOX_UPPER_LEFT
*
BOX_LOWER_LEFT
*
BOX_UPPER_RIGHT
*
BOX_LOWER_RIGHT

Definition at line 191 of file o_box_basic.c.

Here is the call graph for this function:

void o_box_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (x1,y1) to the box described by *object. x1 and y1 are in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dxx distance to move.
[in]dyy distance to move.
[in,out]objectBOX OBJECT to translate.

Definition at line 442 of file o_box_basic.c.

Here is the call graph for this function:

void o_box_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
The function o_box_rotate_world() rotate the box described by *object around the (world_centerx, world_centery) point by angle degrees. The center of rotation is in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxRotation center x coordinate in WORLD units.
[in]world_centeryRotation center y coordinate in WORLD units.
[in]angleRotation angle in degrees (See note below).
[in,out]objectBOX OBJECT to rotate.

Note:
Only 90 degree multiple and positive angles are allowed.
The center of rotation (world_centerx, world_centery) is translated to the origin. The rotation of the upper left and lower right corner are then performed. Finally, the rotated box is translated back to its previous location.

Definition at line 468 of file o_box_basic.c.

Here is the call graph for this function:

void o_box_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors the box from the point (world_centerx,world_centery) in world unit.

The box is first translated to the origin, then mirrored and finally translated back at its previous position.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectBOX OBJECT to mirror.

Definition at line 533 of file o_box_basic.c.

Here is the call graph for this function:

OBJECT* o_bus_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x1,
int  y1,
int  x2,
int  y2,
int  bus_ripper_direction 
)
Function Description
This function creates and returns a new bus object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeThe OBJECT type (usually OBJ_BUS)
[in]colorThe color of the bus
[in]x1x-coord of the first point
[in]y1y-coord of the first point
[in]x2x-coord of the second point
[in]y2y-coord of the second point
[in]bus_ripper_directiondirection of the bus rippers
Returns:
A new bus OBJECT

Definition at line 82 of file o_bus_basic.c.

Here is the call graph for this function:

void o_bus_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function changes the position of a bus object.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]dxThe x-distance to move the object
[in]dyThe y-distance to move the object
[in]objectThe bus OBJECT to be moved

Definition at line 231 of file o_bus_basic.c.

Here is the call graph for this function:

OBJECT* o_bus_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a copy of the bus object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe object that is copied
Returns:
a new bus object

Definition at line 253 of file o_bus_basic.c.

Here is the call graph for this function:

void o_bus_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates a bus object around the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the rotation center
[in]world_centeryy-coord of the rotation center
[in]angleThe angle to rotat the bus object
[in]objectThe bus object
Note:
only steps of 90 degrees are allowed for the angle

Definition at line 322 of file o_bus_basic.c.

Here is the call graph for this function:

void o_bus_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors a bus object horizontaly at the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the mirror position
[in]world_centeryy-coord of the mirror position
[in]objectThe bus object

Definition at line 359 of file o_bus_basic.c.

Here is the call graph for this function:

int o_bus_orientation ( OBJECT object)
Function Description
This function calculates the orientation of a bus object.
Parameters:
[in]objectThe bus object
Returns:
The orientation: HORIZONTAL, VERTICAL or NEITHER

Definition at line 379 of file o_bus_basic.c.

void o_bus_consolidate ( TOPLEVEL toplevel)

Definition at line 495 of file o_bus_basic.c.

void o_bus_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies one point of a bus object. The point is specified by the whichone variable and the new coordinate is (x, y).
Parameters:
toplevelThe TOPLEVEL object
objectThe bus OBJECT to modify
xnew x-coord of the bus point
ynew y-coord of the bus point
whichonebus point to modify

Definition at line 512 of file o_bus_basic.c.

Here is the call graph for this function:

int dist ( int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
This function calculates the distance between two points. The two points are defined by the (x1, y1) and (x2, y2) parameters.
Parameters:
[in]x1x-value of the first point
[in]y1y-value of the first point
[in]x2x-value of the second point
[in]y2y-value of the second point
Returns:
the distance
Todo:
Move this function to a different place

Definition at line 47 of file o_circle_basic.c.

OBJECT* o_circle_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x,
int  y,
int  radius 
)
Function Description
This function creates a new object representing a circle.

The circle is described by its center (x,y) and its radius radius. The type parameter must be equal to OBJ_CIRCLE. The color corresponds to the color the box will be drawn with.

The OBJECT structure is allocated with the s_basic_new_object() function. The structure describing the circle is allocated and initialized with the parameters given to the function.

Both the line type and the filling type are set to default values : solid line type with a width of 0, and no filling. It can be changed after with o_set_line_options() and o_set_fill_options().

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeMust be OBJ_CIRCLE.
[in]colorCircle line color.
[in]xCenter x coordinate.
[in]yCenter y coordinate.
[in]radiusRadius of new circle.
Returns:
A pointer to the new end of the object list.

Definition at line 77 of file o_circle_basic.c.

Here is the call graph for this function:

OBJECT* o_circle_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
The function o_circle_copy() creates a verbatim copy of the object pointed by o_current describing a circle.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]o_currentCircle OBJECT to copy.
Returns:
The new OBJECT

Definition at line 115 of file o_circle_basic.c.

Here is the call graph for this function:

void o_circle_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies the description of the circle object *object depending on whichone that give the meaning of the x and y parameters.

If whichone is equal to CIRCLE_CENTER, the new center of the circle is given by (x,y) where x and y are in world units.

If whichone is equal to CIRCLE_RADIUS, the radius is given by x - in world units. y is ignored.

The bounding box of the circle object is updated after the modification of its parameters.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectCircle OBJECT to modify.
[in]xNew center x coordinate, or radius value.
[in]yNew center y coordinate. Unused if radius is being modified.
[in]whichoneWhich circle parameter to modify.

whichone can have the following values:

*
CIRCLE_CENTER
*
CIRCLE_RADIUS

Definition at line 179 of file o_circle_basic.c.

Here is the call graph for this function:

void o_circle_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (x1,y1) to the circle described by *object. x1 and y1 are in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dxx distance to move.
[in]dyy distance to move.
[in,out]objectCircle OBJECT to translate.

Definition at line 375 of file o_circle_basic.c.

Here is the call graph for this function:

void o_circle_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
The function o_circle_rotate_world() rotate the circle described by *object around the (world_centerx,world_centery) point by angle angle degrees. The center of rotation is in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxRotation center x coordinate in WORLD units.
[in]world_centeryRotation center y coordinate in WORLD units.
[in]angleRotation angle in degrees (See note below).
[in,out]objectCircle OBJECT to rotate.

Definition at line 400 of file o_circle_basic.c.

Here is the call graph for this function:

void o_circle_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function recalculates the screen coords of the o_current pointed circle object from its world coords.

The circle coordinates and its bounding are recalculated as well as the OBJECT specific (line width, filling ...).

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectCircle OBJECT to mirror.

Definition at line 452 of file o_circle_basic.c.

Here is the call graph for this function:

int world_get_single_object_bounds ( TOPLEVEL toplevel,
OBJECT o_current,
int *  rleft,
int *  rtop,
int *  rright,
int *  rbottom 
)
Given an object, calculate the bounds coordinates.
Parameters:
[in]toplevelThe toplevel structure.
[in]o_currentThe object to look the bounds for.
[out]rleftpointer to the left coordinate of the object.
[out]rtoppointer to the top coordinate of the object.
[out]rrightpointer to the right coordinate of the object.
[out]rbottompointer to the bottom coordinate of the object.
Returns:
If any bounds were found for the object
Return values:
0No bound was found
1Bound was found

Definition at line 57 of file o_complex_basic.c.

Here is the call graph for this function:

int world_get_object_glist_bounds ( TOPLEVEL toplevel,
const GList *  head,
int *  left,
int *  top,
int *  right,
int *  bottom 
)
Given a list of objects, calcule the bounds coordinates.
Parameters:
[in]toplevelThe TOPLEVEL structure.
[in]headThe list of objects to look the bounds for.
[out]leftpointer to the left coordinate of the object.
[out]toppointer to the top coordinate of the object.
[out]rightpointer to the right coordinate of the object.
[out]bottompointer to the bottom coordinate of the object.
Returns:
If any bounds were found for the list of objects
Return values:
0No bounds were found
1Bound was found

Definition at line 113 of file o_complex_basic.c.

Here is the call graph for this function:

int o_complex_is_embedded ( OBJECT o_current)
Function Description
Checks and returns the status of the complex object.
Parameters:
o_currentThe object to check
Returns:
1 if embedded, 0 otherwise

Definition at line 245 of file o_complex_basic.c.

GList* o_complex_promote_attribs ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Selects promotable attributes from object, and returns a new #GList containing them (suitable for appending to a PAGE).
Parameters:
[in]toplevelThe TOPLEVEL environment.
[in]objectThe complex OBJECT to promote from.
Returns:
A #GList of promoted attributes.

Definition at line 319 of file o_complex_basic.c.

Here is the call graph for this function:

OBJECT* o_complex_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x,
int  y,
int  angle,
int  mirror,
const CLibSymbol clib,
const gchar *  basename,
int  selectable 
)
Function Description

Definition at line 481 of file o_complex_basic.c.

Here is the call graph for this function:

OBJECT* o_complex_new_embedded ( TOPLEVEL toplevel,
char  type,
int  color,
int  x,
int  y,
int  angle,
int  mirror,
const gchar *  basename,
int  selectable 
)
Function Description
This function creates a new embedded object.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]typeThe type of the object (usually OBJ_COMLEX)
[in]colorThe color of the object
[in]xThe x location of the complex object
[in]yThe y location of the complex object
[in]angleThe rotation angle
[in]mirrorThe mirror status
[in]basenameThe basic name the embedded was created of
[in]selectablewhether the object can be selected with the mouse
Returns:
a new complex object

Definition at line 568 of file o_complex_basic.c.

Here is the call graph for this function:

void o_complex_set_filename ( TOPLEVEL toplevel,
const char *  basename 
)
void o_complex_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function changes the position of a complex object.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]dxThe x-distance to move the object
[in]dyThe y-distance to move the object
[in]objectThe complex OBJECT to be moved

Definition at line 753 of file o_complex_basic.c.

Here is the call graph for this function:

OBJECT* o_complex_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a copy of the complex object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe object that is copied
Returns:
a new COMPLEX object

Definition at line 776 of file o_complex_basic.c.

Here is the call graph for this function:

void o_complex_rotate_world ( TOPLEVEL toplevel,
int  centerx,
int  centery,
int  angle,
OBJECT object 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 829 of file o_complex_basic.c.

Here is the call graph for this function:

void o_complex_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 867 of file o_complex_basic.c.

Here is the call graph for this function:

OBJECT* o_complex_find_pin_by_attribute ( OBJECT object,
char *  name,
char *  wanted_value 
)
Function Description
Search for a pin inside the given complex which has an attribute matching those passed.
Parameters:
[in]objectcomplex OBJECT whos pins to search.
[in]namethe attribute name to search for.
[in]wanted_valuethe attribute value to search for.
Returns:
The pin OBJECT with the given attribute, NULL otherwise.

Definition at line 914 of file o_complex_basic.c.

Here is the call graph for this function:

void o_complex_check_symversion ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
This function compares the symversion of a symbol with it's earlier saved symversion in a schematic. Major symversion changes are added to the toplevel object (toplevel->major_changed_refdes), minor changes are reported to the messaging system.
Parameters:
toplevelThe TOPLEVEL object
objectThe complex OBJECT

Definition at line 956 of file o_complex_basic.c.

Here is the call graph for this function:

void o_embed ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This functions embeds an object o_current into a libgeda. Currently complex objects are just marked to be embedded later. Picture objects are embedded immediatly.
Parameters:
toplevelThe TOPLEVEL object
o_currentThe OBJECT to embed

Definition at line 45 of file o_embed.c.

Here is the call graph for this function:

void o_unembed ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This functions unembeds an object o_current from a libgeda structure. Complex objects are just marked to be not embedded. Picture objects are unembeded immediatly.
Parameters:
toplevelThe TOPLEVEL object
o_currentThe OBJECT to unembed

Definition at line 86 of file o_embed.c.

Here is the call graph for this function:

OBJECT* o_line_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
This function creates a new object representing a line.

The line is described by its two ends - x1,y1 and x2,y2. The type parameter must be equal to OBJ_LINE. The color parameter corresponds to the color the box will be drawn with.

The OBJECT structure is allocated with the s_basic_new_object() function. The structure describing the line is allocated and initialized with the parameters given to the function.

Both the line type and the filling type are set to default values : solid line type with a width of 0, and no filling. It can be changed after with the o_set_line_options() and o_set_fill_options().

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeMust be OBJ_LINE.
[in]colorCircle line color.
[in]x1Upper x coordinate.
[in]y1Upper y coordinate.
[in]x2Lower x coordinate.
[in]y2Lower y coordinate.
Returns:
A pointer to the new end of the object list.

Definition at line 64 of file o_line_basic.c.

Here is the call graph for this function:

OBJECT* o_line_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a verbatim copy of the object pointed by o_current describing a line.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]o_currentLine OBJECT to copy.
Returns:
The new OBJECT

Definition at line 103 of file o_line_basic.c.

Here is the call graph for this function:

void o_line_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies the coordinates of one of the two ends of the line described by *object. The new coordinates of this end, identified by whichone, are given by x and y in world unit.

The coordinates of the end of line is modified in the world coordinate system. Screen coordinates and boundings are then updated.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectLine OBJECT to modify.
[in]xNew x coordinate.
[in]yNew y coordinate.
[in]whichoneWhich line parameter to modify.

whichone can have the following values:

*
LINE_END1
*
LINE_END2

Definition at line 162 of file o_line_basic.c.

Here is the call graph for this function:

void o_line_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (x1,y1) to the line described by *object. x1 and y1 are in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dxx distance to move.
[in]dyy distance to move.
[in,out]objectLine OBJECT to translate.

Definition at line 341 of file o_line_basic.c.

Here is the call graph for this function:

void o_line_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates the line described by *object around the (world_centerx,world_centery) point by angle degrees. The center of rotation is in world units.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxRotation center x coordinate in WORLD units.
[in]world_centeryRotation center y coordinate in WORLD units.
[in]angleRotation angle in degrees (See note below).
[in,out]objectLine OBJECT to rotate.

Definition at line 367 of file o_line_basic.c.

Here is the call graph for this function:

void o_line_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors the line from the point (world_centerx,world_centery) in world unit.

The line if first translated to the origin, then mirrored and finally translated back at its previous position.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectLine OBJECT to mirror.

Definition at line 422 of file o_line_basic.c.

Here is the call graph for this function:

void o_line_scale_world ( TOPLEVEL toplevel,
int  x_scale,
int  y_scale,
OBJECT object 
)
Function Description
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]x_scale
[in]y_scale
[in]object

Definition at line 1131 of file o_line_basic.c.

Here is the call graph for this function:

double o_line_length ( OBJECT object)
Function Description
This function calculates the length of a line object
Parameters:
[in]objecta line OBJECT
Returns:
The length of the line

Definition at line 1153 of file o_line_basic.c.

OBJECT* o_object_copy ( TOPLEVEL toplevel,
OBJECT selected 
)
Todo:
Finish documentation!!!!
Function Description
returns head !!!!!!!!!!!!!!!!!!! look at above.. this returns what was passed in!!!! copies selected to list_head (!! returns new list)
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]selected
Returns:
OBJECT pointer.

Definition at line 47 of file o_list.c.

Here is the call graph for this function:

GList* o_glist_copy_all ( TOPLEVEL toplevel,
const GList *  src_list,
GList *  dest_list 
)
Todo:
Finish function description!!!
Function Description
you need to pass in a head_node for dest_list_head flag is either NORMAL_FLAG or SELECTION_FLAG this function copies the objects in the src GList src_list to the destination GList dest_list this routine assumes that objects in src_list are selected objects are unselected before they are copied and then reselected this is necessary to preserve the color info
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]src_listThe GList to copy from.
[in]dest_listThe GList to copy to.
Returns:
the dest_list GList with objects appended to it.

Definition at line 137 of file o_list.c.

Here is the call graph for this function:

void o_glist_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
const GList *  list 
)
Todo:
Finish function description!!!
Function Description

Definition at line 228 of file o_list.c.

Here is the call graph for this function:

void o_glist_rotate_world ( TOPLEVEL toplevel,
int  x,
int  y,
int  angle,
const GList *  list 
)
Todo:
Finish function description!!!
Function Description

Definition at line 245 of file o_list.c.

Here is the call graph for this function:

void o_glist_mirror_world ( TOPLEVEL toplevel,
int  x,
int  y,
const GList *  list 
)
Todo:
Finish function description!!!
Function Description

Definition at line 262 of file o_list.c.

Here is the call graph for this function:

void o_glist_set_color ( TOPLEVEL toplevel,
const GList *  list,
int  color 
)
Function Description
This function changes the the new color of a list of objects
Parameters:
[in]toplevelThe TOPLEVEL structure.
[in]listThe list of OBJECTs to change color.
[in]colorThe new color.

Definition at line 284 of file o_list.c.

Here is the call graph for this function:

OBJECT* o_net_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
This function creates and returns a new net object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeThe OBJECT type (usually OBJ_NET)
[in]colorThe color of the net
[in]x1x-coord of the first point
[in]y1y-coord of the first point
[in]x2x-coord of the second point
[in]y2y-coord of the second point
Returns:
A new net OBJECT

Definition at line 81 of file o_net_basic.c.

Here is the call graph for this function:

void o_net_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function changes the position of a net object.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]dxThe x-distance to move the object
[in]dyThe y-distance to move the object
[in]objectThe net OBJECT to be moved

Definition at line 214 of file o_net_basic.c.

Here is the call graph for this function:

OBJECT* o_net_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a copy of the net object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe object that is copied
Returns:
a new net object

Definition at line 237 of file o_net_basic.c.

Here is the call graph for this function:

void o_net_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates a net object around the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the rotation center
[in]world_centeryy-coord of the rotation center
[in]angleThe angle to rotat the net object
[in]objectThe net object
Note:
only steps of 90 degrees are allowed for the angle

Definition at line 303 of file o_net_basic.c.

Here is the call graph for this function:

void o_net_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors a net object horizontaly at the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the mirror position
[in]world_centeryy-coord of the mirror position
[in]objectThe net object

Definition at line 341 of file o_net_basic.c.

Here is the call graph for this function:

int o_net_orientation ( OBJECT object)
Function Description
This function calculates the orientation of a net object.
Parameters:
[in]objectThe net object
Returns:
The orientation: HORIZONTAL, VERTICAL or NEITHER

Definition at line 362 of file o_net_basic.c.

void o_net_consolidate ( TOPLEVEL toplevel,
PAGE page 
)
Function Description
This function consolidates all net objects in a page until no more consolidations are possible.
Parameters:
toplevelThe TOPLEVEL object.
pageThe PAGE to consolidate nets in.

Definition at line 590 of file o_net_basic.c.

Here is the call graph for this function:

void o_net_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies one point of a net object. The point is specified by the whichone variable and the new coordinate is (x, y).
Parameters:
toplevelThe TOPLEVEL object
objectThe net OBJECT to modify
xnew x-coord of the net point
ynew y-coord of the net point
whichonenet point to modify

Definition at line 630 of file o_net_basic.c.

Here is the call graph for this function:

void o_net_refresh_conn_cache ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
Traverse all network segments reachable from this net and count total number of unique entities connected to all net segments.

For the purpose of this function, an entity is:

  • pin
  • bus
  • attached netname attribute

Computed number of entities is afterwards stored in all traversed net segments.

The algorithm does not handle corner cases, ie two bus segments belonging to the same bus will be counted twice.

Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe NET OBJECT to check connectivity of

Definition at line 661 of file o_net_basic.c.

Here is the call graph for this function:

gboolean o_net_is_fully_connected ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
Net is fully connected when it connects at least two separate entities.
See also:
o_net_refresh_conn_cache
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe OBJECT to check connectivity of
Returns:
TRUE if net is fully connected, FALSE otherwise

Definition at line 779 of file o_net_basic.c.

Here is the call graph for this function:

OBJECT* o_path_new ( TOPLEVEL toplevel,
char  type,
int  color,
const char *  path_string 
)
Function Description
This function creates a new object representing a path. This object is added to the end of the list object_list pointed object belongs to. The path is described by its two ends - x1,y1 and x2,y2. The type parameter must be equal to OBJ_PATH. The color parameter corresponds to the color the path will be drawn with.

The OBJECT structure is allocated with the s_basic_init_object() function. The structure describing the path is allocated and initialized with the parameters given to the function.

Both the path type and the filling type are set to default values : solid path type with a width of 0, and no filling. It can be changed after with the o_set_line_options() and o_set_fill_options().

The object is added to the end of the list described by the object_list parameter by the #s_basic_link_object().

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeMust be OBJ_PATH.
[in]colorThe path color.
[in]path_stringThe string representation of the path
Returns:
A pointer to the new end of the object list.

Definition at line 74 of file o_path_basic.c.

Here is the call graph for this function:

OBJECT* o_path_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a verbatim copy of the object pointed by o_current describing a path. The new object is added at the end of the list following the list_tail parameter.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]o_currentLine OBJECT to copy.
Returns:
A new pointer to the end of the object list.

Definition at line 109 of file o_path_basic.c.

Here is the call graph for this function:

void o_path_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies a control point location of the path object *object. The control point being modified is selected according to the whichone parameter.

The new position is given by x and y.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectThe path OBJECT
[in]xNew x coordinate for the control point
[in]yNew y coordinate for the control point
[in]whichoneWhich control point is being modified

Definition at line 300 of file o_path_basic.c.

Here is the call graph for this function:

void o_path_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (x1,y1) to the path described by *object. x1 and y1 are in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dxx distance to move.
[in]dyy distance to move.
[in,out]objectLine OBJECT to translate.

Definition at line 354 of file o_path_basic.c.

Here is the call graph for this function:

void o_path_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates the path described by *object around the (world_centerx,world_centery) point by angle degrees. The center of rotation is in world units.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxRotation center x coordinate in WORLD units.
[in]world_centeryRotation center y coordinate in WORLD units.
[in]angleRotation angle in degrees (See note below).
[in,out]objectLine OBJECT to rotate.

Definition at line 399 of file o_path_basic.c.

Here is the call graph for this function:

void o_path_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors the path from the point (world_centerx,world_centery) in world unit.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectLine OBJECT to mirror.

Definition at line 445 of file o_path_basic.c.

Here is the call graph for this function:

OBJECT* o_picture_new ( TOPLEVEL toplevel,
const gchar *  file_content,
gsize  file_length,
const gchar *  filename,
char  type,
int  x1,
int  y1,
int  x2,
int  y2,
int  angle,
int  mirrored,
int  embedded 
)
Function Description
This function creates a new object representing a picture.

The picture is described by its upper left corner (x1, y1) and its lower right corner (x2, ). The type parameter must be equal to OBJ_PICTURE.

If file_content is non-NULL, it must be a pointer to a buffer containing raw image data. If loading data from file_content is unsuccessful, and filename is non-NULL, an image will attempt to be loaded from filename. Otherwise, the picture object will be initially empty.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]file_contentRaw data of the image file, or NULL.
[in]file_lengthLength of raw data buffer
[in]filenameFile name backing this picture, or NULL.
[in]typeMust be OBJ_PICTURE.
[in]x1Upper x coordinate.
[in]y1Upper y coordinate.
[in]x2Lower x coordinate.
[in]y2Lower y coordinate.
[in]anglePicture rotation angle.
[in]mirroredWhether the image should be mirrored or not.
[in]embeddedWhether the embedded flag should be set or not.
Returns:
A pointer to a new picture OBJECT.

Definition at line 273 of file o_picture.c.

Here is the call graph for this function:

double o_picture_get_ratio ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description

Returns the width/height ratio of picture object, taking the image rotation into account.

Parameters:
toplevelThe current TOPLEVEL.
objectPicture OBJECT to inspect.
Returns:
width/height ratio for object.

Definition at line 412 of file o_picture.c.

void o_picture_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies the coordinates of one of the four corner of the picture. The new coordinates of the corner identified by whichone are given by x and y in world unit.

The coordinates of the corner is modified in the world coordinate system. Screen coordinates and boundings are then updated.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectPicture OBJECT to modify.
[in]xNew x coordinate.
[in]yNew y coordinate.
[in]whichoneWhich picture parameter to modify.

whichone can have the following values:

*
PICTURE_UPPER_LEFT
*
PICTURE_LOWER_LEFT
*
PICTURE_UPPER_RIGHT
*
PICTURE_LOWER_RIGHT

Definition at line 456 of file o_picture.c.

Here is the call graph for this function:

void o_picture_modify_all ( TOPLEVEL toplevel,
OBJECT object,
int  x1,
int  y1,
int  x2,
int  y2 
)
Function Description
Modifies the coordinates of all four corners of a picture object. The picture is adjusted to fit the rectangle enclosed by the points (x1, y1) and (x2, y2), and scaled as large as possible to still fit within that rectangle.
Parameters:
[in]toplevelcurrent TOPLEVEL.
[in,out]objectpicture OBJECT to be modified.
[in]x1x coordinate of first corner of box.
[in]y1y coordinate of first corner of box.
[in]x2x coordinate of second corner of box.
[in]y2y coordinate of second corner of box.

Definition at line 539 of file o_picture.c.

Here is the call graph for this function:

void o_picture_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates the picture described by *object around the (world_centerx, world_centery) point by angle degrees. The center of rotation is in world units.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxRotation center x coordinate in WORLD units.
[in]world_centeryRotation center y coordinate in WORLD units.
[in]angleRotation angle in degrees (See note below).
[in,out]objectPicture OBJECT to rotate.

Definition at line 570 of file o_picture.c.

Here is the call graph for this function:

void o_picture_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors the picture from the point (world_centerx,world_centery) in world unit.

The picture is first translated to the origin, then mirrored and finally translated back at its previous position.

Parameters:
[in]toplevelThe TOPLEVEL object.
[in]world_centerxOrigin x coordinate in WORLD units.
[in]world_centeryOrigin y coordinate in WORLD units.
[in,out]objectPicture OBJECT to mirror.

Definition at line 634 of file o_picture.c.

Here is the call graph for this function:

void o_picture_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function applies a translation of (x1,y1) to the picture described by *object. x1 and y1 are in world units.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]dxx distance to move.
[in]dyy distance to move.
[in,out]objectPicture OBJECT to translate.

Definition at line 692 of file o_picture.c.

Here is the call graph for this function:

OBJECT* o_picture_copy ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
This function creates a verbatim copy of the object pointed by o_current describing a picture.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]objectPicture OBJECT to copy.
Returns:
The new OBJECT

Definition at line 714 of file o_picture.c.

Here is the call graph for this function:

gboolean o_picture_is_embedded ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Returns TRUE if the picture object will have its data embedded in a schematic or symbol file; returns FALSE if its data will be obtained from a separate file.
Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to inspect.
Returns:
TRUE if object is embedded.

Definition at line 1049 of file o_picture.c.

GdkPixbuf* o_picture_get_pixbuf ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Returns a #GdkPixbuf for the picture object object, or NULL if the picture could not be loaded.

The returned value should have its reference count decremented with g_object_unref() when no longer needed.

Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to inspect.
Returns:
A #GdkPixbuf for the picture.

Definition at line 1070 of file o_picture.c.

const char* o_picture_get_data ( TOPLEVEL toplevel,
OBJECT object,
size_t *  len 
)
Function Description
Returns the raw image file data underlying the picture object, or NULL if the picture could not be loaded.
Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to inspect.
lenLocation to store buffer length.
Returns:
A read-only buffer of raw image data.

Definition at line 1093 of file o_picture.c.

gboolean o_picture_set_from_buffer ( TOPLEVEL toplevel,
OBJECT object,
const gchar *  filename,
const gchar *  data,
size_t  len,
GError **  error 
)
Function Description
Sets the contents of the picture object by reading image data from a buffer. The buffer should be in on-disk format.
Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to modify.
filenameThe new filename for the picture.
dataThe new image data buffer.
lenThe size of the data buffer.
errorLocation to return error information.
Returns:
TRUE on success, FALSE on failure.

Definition at line 1117 of file o_picture.c.

Here is the call graph for this function:

gboolean o_picture_set_from_file ( TOPLEVEL toplevel,
OBJECT object,
const gchar *  filename,
GError **  error 
)
Function Description
Sets the contents of the picture object by reading image data from a file.
Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to modify.
filenameThe filename to load image data from.
errorLocation to return error information.
Returns:
TRUE on success, FALSE on failure.

Definition at line 1176 of file o_picture.c.

Here is the call graph for this function:

const gchar* o_picture_get_filename ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Returns the filename associated with the picture object.
Parameters:
toplevelThe current TOPLEVEL.
objectThe picture OBJECT to inspect.
Returns:
the filename associated with object.

Definition at line 1205 of file o_picture.c.

GdkPixbuf* o_picture_get_fallback_pixbuf ( TOPLEVEL toplevel)
Function Description
Returns a pixbuf containing the fallback image to be used if a picture object fails to load. The returned pixbuf should be freed with g_object_unref() when no longer needed.
Returns:
a #GdkPixbuf containing a warning image.

Definition at line 1222 of file o_picture.c.

OBJECT* o_pin_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x1,
int  y1,
int  x2,
int  y2,
int  pin_type,
int  whichend 
)
Function Description
This function creates and returns a new pin object.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeThe OBJECT type (usually OBJ_PIN)
[in]colorThe color of the pin
[in]x1x-coord of the first point
[in]y1y-coord of the first point
[in]x2x-coord of the second point
[in]y2y-coord of the second point
[in]pin_typetype of pin (PIN_TYPE_NET or PIN_TYPE_BUS)
[in]whichendThe connectable end of the pin
Returns:
A new pin OBJECT

Definition at line 85 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT object 
)
Function Description
This function changes the position of a pin object.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]dxThe x-distance to move the object
[in]dyThe y-distance to move the object
[in]objectThe pin OBJECT to be moved

Definition at line 235 of file o_pin_basic.c.

Here is the call graph for this function:

OBJECT* o_pin_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a copy of the pin object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe object that is copied
Returns:
a new pin object

Definition at line 257 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates a pin object around the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the rotation center
[in]world_centeryy-coord of the rotation center
[in]angleThe angle to rotat the pin object
[in]objectThe pin object
Note:
only steps of 90 degrees are allowed for the angle

Definition at line 319 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors a pin object horizontaly at the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the mirror position
[in]world_centeryy-coord of the mirror position
[in]objectThe pin object

Definition at line 356 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_modify ( TOPLEVEL toplevel,
OBJECT object,
int  x,
int  y,
int  whichone 
)
Function Description
This function modifies one point of a pin object. The point is specified by the whichone variable and the new coordinate is (x, y).
Parameters:
toplevelThe TOPLEVEL object
objectThe pin OBJECT to modify
xnew x-coord of the pin point
ynew y-coord of the pin point
whichonepin point to modify

Definition at line 382 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_update_whichend ( TOPLEVEL toplevel,
GList *  object_list,
int  num_pins 
)
Function Description
This function determines the whichend of the pins in the object_list. In older libgeda file format versions there was no information about the active end of pins. This function calculates the bounding box of all pins in the object list. The side of the pins that are closer to the boundary of the box are set as active ends of the pins.
Parameters:
toplevelThe TOPLEVEL object
object_listlist of OBJECTs
num_pinspin count in the object list

Definition at line 407 of file o_pin_basic.c.

Here is the call graph for this function:

void o_pin_set_type ( TOPLEVEL toplevel,
OBJECT o_current,
int  pin_type 
)
Function Description
Sets the pin's type and width to a particular style.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe pin OBJECT being modified
[in]pin_typeThe new type of this pin

Definition at line 560 of file o_pin_basic.c.

Here is the call graph for this function:

SELECTION* o_selection_new ( void  )
Returns a pointer to a new SELECTION object.
Returns:
pointer to the new SELECTION object.

Definition at line 38 of file o_selection.c.

Here is the call graph for this function:

void o_selection_add ( TOPLEVEL toplevel,
SELECTION selection,
OBJECT o_selected 
)
Selects the given object and does the needed work to make the
object visually selected. Skip objects that are already selected.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]selectionPointer to the selection list
[in]o_selectedObject to select.

Definition at line 52 of file o_selection.c.

Here is the call graph for this function:

void o_selection_print_all ( const SELECTION selection)
Prints the given selection list.
Parameters:
[in]selectionPointer to selection list to print.

Definition at line 90 of file o_selection.c.

void o_selection_remove ( TOPLEVEL toplevel,
SELECTION selection,
OBJECT o_selected 
)
Removes the given object from the selection list and does the
needed work to make the object visually unselected. It's ok to call this function with an object which is not necessarily selected.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]selectionPointer to the selection list
[in]o_selectedObject to unselect and remove from the list.

Definition at line 71 of file o_selection.c.

Here is the call graph for this function:

void o_selection_select ( TOPLEVEL toplevel,
OBJECT object 
)
Sets the select flag, saves the color, and then selects the
given object
Parameters:
[in]toplevelThe TOPLEVEL object
[in]objectObject to select.

Definition at line 114 of file o_selection.c.

Here is the call graph for this function:

void o_selection_unselect ( TOPLEVEL toplevel,
OBJECT object 
)
Unsets the select flag, restores the original color of the
given object. This function should not be called by anybody outside of this file.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]objectObject to unselect.

Definition at line 132 of file o_selection.c.

Here is the call graph for this function:

int o_text_num_lines ( const char *  string)
Function Description
This function just counts the number of lines that are in the string.
Parameters:
[in]stringtext string to count the lines
Returns:
the number of lines

Definition at line 206 of file o_text_basic.c.

OBJECT* o_text_new ( TOPLEVEL toplevel,
char  type,
int  color,
int  x,
int  y,
int  alignment,
int  angle,
const char *  string,
int  size,
int  visibility,
int  show_name_value 
)
Function Description
Create an OBJECT of type OBJ_TEXT.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]typeOBJ_TEXT (TODO: why bother)
[in]colorThe color of the text.
[in]xWorld x coord of text.
[in]yWorld y coord of text.
[in]alignmentHow text bounding box aligns on (x, y).
[in]angleAngle at which text will appear.
[in]stringThe text (TODO: can be char const *)!
[in]sizeText size.
[in]visibilityVISIBLE or INVISIBLE.
[in]show_name_valueSHOW_NAME_VALUE or friends.
Returns:
Pointer to text OBJECT.
Note:
Caller is responsible for string; this function allocates its own copy.

Definition at line 251 of file o_text_basic.c.

Here is the call graph for this function:

void o_text_recreate ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function updates the underlying primary of the text object o_current.
Parameters:
toplevelThe TOPLEVEL object
o_currentThe text object to update

Definition at line 519 of file o_text_basic.c.

Here is the call graph for this function:

void o_text_translate_world ( TOPLEVEL toplevel,
int  dx,
int  dy,
OBJECT o_current 
)
Function Description
This function changes the position of a text object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]dxThe x-distance to move the object
[in]dyThe y-distance to move the object
[in]o_currentThe text OBJECT to be moved

Definition at line 536 of file o_text_basic.c.

OBJECT* o_text_copy ( TOPLEVEL toplevel,
OBJECT o_current 
)
Function Description
This function creates a copy of the text object o_current.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]o_currentThe object that is copied
Returns:
a new text object

Definition at line 554 of file o_text_basic.c.

Here is the call graph for this function:

void o_text_rotate_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
int  angle,
OBJECT object 
)
Function Description
This function rotates a text object around the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the rotation center
[in]world_centeryy-coord of the rotation center
[in]angleThe angle to rotate the text object
[in]objectThe text object
Note:
only steps of 90 degrees are allowed for the angle

Definition at line 808 of file o_text_basic.c.

Here is the call graph for this function:

void o_text_mirror_world ( TOPLEVEL toplevel,
int  world_centerx,
int  world_centery,
OBJECT object 
)
Function Description
This function mirrors a text object horizontaly at the point (world_centerx, world_centery).
Parameters:
[in]toplevelThe TOPLEVEL object
[in]world_centerxx-coord of the mirror position
[in]world_centeryy-coord of the mirror position
[in]objectThe text object

Definition at line 844 of file o_text_basic.c.

Here is the call graph for this function:

void o_text_set_string ( TOPLEVEL toplevel,
OBJECT obj,
const gchar *  new_string 
)
Function Description
Updates the text object with a new text string.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]objThe text object.
[in]new_stringThe new value.

Definition at line 961 of file o_text_basic.c.

Here is the call graph for this function:

const gchar* o_text_get_string ( TOPLEVEL toplevel,
OBJECT obj 
)
Function Description
Retrieve the text string from a text object. The returned string should be treated as constant.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]objThe text object.
Returns:
The text object's string, or NULL on failure.

Definition at line 990 of file o_text_basic.c.

void o_text_set_rendered_bounds_func ( TOPLEVEL toplevel,
RenderedBoundsFunc  func,
void *  user_data 
)
Function Description
Set the function to be used to calculate text bounds for a given TOPLEVEL.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]funcFunction to use.
[in]user_dataUser data to be passed to the function.

Definition at line 1009 of file o_text_basic.c.

double o_text_get_font_size_in_points ( TOPLEVEL toplevel,
OBJECT object 
)
Description
gEDA fonts are specified in a non-standard unit. This function applies an appopriate scaling to return the font size in postscript points.
Parameters:
[in]toplevelThe TOPLEVEL object
[in]objectThe text OBJECT whos font size to return
Returns:
The font size converted to postscript points.

Definition at line 1028 of file o_text_basic.c.

int s_attrib_add_entry ( char *  new_attrib)
Todo:
Finish function documentation!!!
Function Description

Definition at line 57 of file s_attrib.c.

void s_attrib_print ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 78 of file s_attrib.c.

int s_attrib_uniq ( char *  name)
Todo:
Finish function documentation!!!
Function Description

Definition at line 93 of file s_attrib.c.

void s_attrib_free ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 111 of file s_attrib.c.

void s_attrib_init ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 127 of file s_attrib.c.

char* s_attrib_get ( int  counter)
Todo:
Finish function documentation!!!
Function Description

Definition at line 140 of file s_attrib.c.

OBJECT* s_basic_init_object ( OBJECT new_node,
int  type,
char const *  name 
)
Function Description
Initializes the members of the OBJECT structure.
Parameters:
[in]new_nodeA pointer to an allocated OBJECT
[in]typeThe object type; one of the OBJ_* constants.
[in]nameA prefix for the object's session-unique name.
Returns:
A pointer to the initialized object.

Definition at line 59 of file s_basic.c.

OBJECT* s_basic_new_object ( int  type,
char const *  prefix 
)
Function Description
Allocates memory for an OBJECT and then calls s_basic_init_object() on it.
Parameters:
[in]typeThe sub-type of the object to create; one of the OBJ_* constants.
[in]prefixThe name prefix for the session-unique object name.
Returns:
A pointer to the fully constructed OBJECT.

Definition at line 148 of file s_basic.c.

Here is the call graph for this function:

void print_struct_forw ( GList *  list)
Todo:
Finish function documentation!!!
Function Description

Definition at line 159 of file s_basic.c.

Here is the call graph for this function:

void print_struct ( OBJECT ptr)
Todo:
Finish function documentation!!!
Function Description

Definition at line 188 of file s_basic.c.

Here is the call graph for this function:

void s_delete_object ( TOPLEVEL toplevel,
OBJECT o_current 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 217 of file s_basic.c.

Here is the call graph for this function:

void s_delete_object_glist ( TOPLEVEL toplevel,
GList *  list 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 319 of file s_basic.c.

Here is the call graph for this function:

void s_object_weak_ref ( OBJECT object,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Adds the weak reference callback notify_func to object. When object is destroyed, notify_func will be called with two arguments: the object, and the user_data.
See also:
s_object_weak_unref
Parameters:
[in,out]objectObject to weak-reference.
[in]notify_funcWeak reference notify function.
[in]user_dataData to be passed to notify_func.

Definition at line 348 of file s_basic.c.

Here is the call graph for this function:

void s_object_weak_unref ( OBJECT object,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Removes the weak reference callback notify_func from object.
See also:
s_object_weak_ref()
Parameters:
[in,out]objectObject to weak-reference.
[in]notify_funcNotify function to search for.
[in]user_dataData to to search for.

Definition at line 367 of file s_basic.c.

Here is the call graph for this function:

void s_object_add_weak_ptr ( OBJECT object,
void *  weak_pointer_loc 
)
Function Description
Adds the weak pointer at weak_pointer_loc to object. The value of weak_pointer_loc will be set to NULL when object is destroyed.
See also:
s_object_remove_weak_ptr
Parameters:
[in,out]objectObject to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 388 of file s_basic.c.

Here is the call graph for this function:

void s_object_remove_weak_ptr ( OBJECT object,
void *  weak_pointer_loc 
)
Function Description
Removes the weak pointer at weak_pointer_loc from object.
See also:
s_object_add_weak_ptr()
Parameters:
[in,out]objectObject to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 405 of file s_basic.c.

Here is the call graph for this function:

char* remove_nl ( char *  string)
Todo:
Finish function documentation!!!
Function Description

Definition at line 419 of file s_basic.c.

char* remove_last_nl ( char *  string)
Todo:
Finish function documentation!!!
Function Description

Definition at line 442 of file s_basic.c.

gchar* s_expand_env_variables ( const gchar *  string)
Function Description
This function returns the passed string with environment variables expanded.

The invocations of environment variable MUST be in the form '${variable_name}', '$variable_name' is not valid here. Environment variable names consists solely of letters, digits and '_'. It is possible to escape a '$' character in the string by repeating it twice.

It outputs error messages to console and leaves the malformed and bad variable names in the returned string.

Parameters:
[in]stringThe string with variables to expand.
Returns:
A newly-allocated string with variables expanded or NULL if input string was NULL.

Definition at line 475 of file s_basic.c.

const char* s_path_sys_data ( )
Function description
Returns the path to be searched for gEDA data shared between all users. If the GEDADATA environment variable is set, returns its value; otherwise, uses a compiled-in path.

On Windows, the compiled in path is *not* used, as it might not match the path where the user has installed gEDA.

Warning:
The returned string is owned by libgeda and should not be modified or free'd.
Todo:
On UNIX platforms we should follow the XDG Base Directory Specification.
Returns:
the gEDA shared data path, or NULL if none could be found.

Definition at line 608 of file s_basic.c.

const char* s_path_sys_config ( )
Function description
Returns the path to be searched for gEDA configuration shared between all users. If the GEDADATARC environment variable is set, returns its value; otherwise, uses a compiled-in path. Finally fallback to using the system data path.
Warning:
The returned string is owned by libgeda and should not be modified or free'd.
Todo:
On UNIX platforms we should follow the XDG Base Directory Specification.
Returns:
the gEDA shared config path, or NULL if none could be found.

Definition at line 647 of file s_basic.c.

Here is the call graph for this function:

const char* s_path_user_config ( )
Function description
Returns the path to be searched for the current user's gEDA configuration. Currently defaults to a directory ".gEDA" in the user's home directory.
Warning:
The returned string is owned by libgeda and should not be modified or free'd.
Todo:
On Windows, we should use APPDATA.
Todo:
On UNIX platforms we should follow the XDG Base Directory Specification.

Definition at line 681 of file s_basic.c.

void s_clib_free ( void  )
Function Description
Should be called at program exit to clean up any remaining data being used by the component library system.

Definition at line 358 of file s_clib.c.

Here is the call graph for this function:

GList* s_clib_get_sources ( const gboolean  sorted)
Function Description
Gets the current list of sources.
Warning:
The GList returned should be freed when no longer needed. The returned value is not guaranteed to remain valid over calls to s_clib_add_directory() or s_clib_add_command().
Returns:
A GList of CLibSource.

Definition at line 501 of file s_clib.c.

Here is the call graph for this function:

const CLibSource* s_clib_get_source_by_name ( const gchar *  name)
Function Description
Iterates through the known component sources, checking if there is a source with the given name.
Parameters:
nameThe source name to look for.
Returns:
The matching source, or NULL if no match was found.

Definition at line 817 of file s_clib.c.

void s_clib_refresh ( )
Function Description
Resets the list of symbols available from each source, and repopulates it from scratch. Useful e.g. for checking for new symbols.
Bug:
Disabled for now because it would break cached CLibSymbols used all over the place (e.g. in st_object).

Definition at line 779 of file s_clib.c.

Here is the call graph for this function:

const CLibSource* s_clib_add_directory ( const gchar *  directory,
const gchar *  name 
)
Function Description
Adds a directory containing symbol files to the library. Only files ending with SYM_FILENAME_FILTER are considered to be symbol files. A name may be specified for the source; if name is NULL, the basename of the directory as returned by g_path_get_basename() is used.
Parameters:
directoryThe path of the directory to add.
nameA descriptive name for the directory.
Returns:
The CLibSource associated with the directory.

Definition at line 847 of file s_clib.c.

Here is the call graph for this function:

const CLibSource* s_clib_add_command ( const gchar *  list_cmd,
const gchar *  get_cmd,
const gchar *  name 
)
Function Description
Adds a set of commands which can generate symbols to the library. list_cmd and get_cmd should be strings consisting of an executable name followed by any arguments required. Executables are resolved using the current PATH. See page Library Commands for more information on library commands.
Parameters:
list_cmdThe executable & arguments used to list available symbols.
get_cmdThe executable & arguments used to retrieve symbol data.
nameA descriptive name for the component source.
Returns:
The CLibSource associated with the component source.

Definition at line 893 of file s_clib.c.

Here is the call graph for this function:

const CLibSource* s_clib_add_scm ( SCM  listfunc,
SCM  getfunc,
const gchar *  name 
)
Function Description
Adds a source to the library based on Scheme procedures. See page Library Scheme Procedures for more information. Two procedures are required: listfunc must return a Scheme list of symbol names, and getfunc must return a string containing symbol data when passed a symbol name.
Parameters:
listfuncA Scheme function returning a list of symbols.
getfuncA Scheme function returning symbol data.
nameA descriptive name for the component source.
Returns:
The new CLibSource.

Definition at line 942 of file s_clib.c.

Here is the call graph for this function:

const gchar* s_clib_source_get_name ( const CLibSource source)
Function Description
Get the name of a source for use e.g. in displaying a GUI.
Parameters:
sourceSource to be examined.
Returns:
Name of source.

Definition at line 981 of file s_clib.c.

GList* s_clib_source_get_symbols ( const CLibSource source)
Function Description
Get a GList containing all of the symbols available from source.
Warning:
The returned GList will not be consistent over a call to s_clib_refresh(). It should be freed when no longer needed.
Parameters:
sourceSource to be examined.
Returns:
A GList of CLibSymbol.

Definition at line 998 of file s_clib.c.

const gchar* s_clib_symbol_get_name ( const CLibSymbol symbol)
Function Description
Get the name of a symbol. The symbol name uniquely identifies it to libgeda.
Parameters:
symbolSymbol to be examined.
Returns:
Name of symbol.

Definition at line 1013 of file s_clib.c.

gchar* s_clib_symbol_get_filename ( const CLibSymbol symbol)
Function Description
Get the filename of the file a symbol was loaded from, if possible (e.g. to allow loading for user editing).
Warning:
The returned string should be freed when no longer needed.
Todo:
This is hack until there is a way to edit documents in gschem which do not have a file in the filesystem associated with them.
Deprecated:
This function is a temporary workaround.
Parameters:
symbolSymbol to be examined.
Returns:
Filename of symbol.

Definition at line 1036 of file s_clib.c.

const CLibSource* s_clib_symbol_get_source ( const CLibSymbol symbol)
Function Description
Get the source which a symbol is associated.
Parameters:
symbolSymbol to be examined.
Returns:
Source which owns symbol.

Definition at line 1052 of file s_clib.c.

gchar* s_clib_symbol_get_data ( const CLibSymbol symbol)
Function Description
Get the unparsed gEDA-format data corresponding to a symbol from the symbol's data source. The return value should be free()'d when no longer needed.

On failure, returns NULL (the error will be logged).

Parameters:
symbolSymbol to get data for.
Returns:
Allocated buffer containing symbol data.

Definition at line 1168 of file s_clib.c.

Here is the call graph for this function:

GList* s_clib_search ( const gchar *  pattern,
const CLibSearchMode  mode 
)
Function Description
Searches the library, returning all symbols whose names match pattern.

Two search modes are available: CLIB_EXACT, where pattern is compared to the symbol name using strcmp(), and CLIB_GLOB, where pattern is assumed to be a glob pattern (see the GLib documentation for details of the glob syntax applicable).

Warning:
The CLibSymbol instances in the GList returned belong to the component library, and should be considered constants; they should not be manipulated or free()'d. On the other hand, the GList returned must be freed with g_list_free() when no longer needed. Note that the values returned will be invalidated by a call to s_clib_free() or s_clib_refresh().
Parameters:
patternThe pattern to match against.
modeThe search mode to use.
Returns:
A GList of matching CLibSymbol structures.

Definition at line 1251 of file s_clib.c.

void s_clib_flush_search_cache ( )
Function Description
Clears the hashtable which caches the results of s_clib_search(). You shouldn't ever need to call this, as all functions which invalidate the cache are supposed to make sure it's flushed.

Definition at line 1339 of file s_clib.c.

void s_clib_flush_symbol_cache ( )
Function Description
Clears the hashtable which caches the results of s_clib_symbol_get_data(). You shouldn't ever need to call this, as all functions which invalidate the cache are supposed to make sure it's flushed.

Definition at line 1351 of file s_clib.c.

void s_clib_symbol_invalidate_data ( const CLibSymbol symbol)
Function Description
Removes all cached symbol data for symbol.
Parameters:
symbolSymbol to flush cached data for.

Definition at line 1363 of file s_clib.c.

const CLibSymbol* s_clib_get_symbol_by_name ( const gchar *  name)
Function Description
Return the first symbol found with the given name. If more than one matching symbol is found or no matches are found at all, emits a log message warning the user.
Parameters:
nameThe symbol name to match against.
Returns:
The first matching symbol, or NULL if none found.

Definition at line 1377 of file s_clib.c.

Here is the call graph for this function:

gchar* s_clib_symbol_get_data_by_name ( const gchar *  name)
Function Description
Return the data for the first symbol found with the given name. This is a helper function for the schematic load system, as it will always want to load symbols given only their name.

On failure, returns NULL (the error will be logged).

Parameters:
nameThe symbol name to match against.
Returns:
Allocated buffer containing symbol data.

Definition at line 1412 of file s_clib.c.

Here is the call graph for this function:

GList* s_toplevel_get_symbols ( const TOPLEVEL toplevel)
Function Description

Scan a TOPLEVEL structure's object list looking for symbols, and return them in a list.

Warning:
The CLibSymbol instances in the GList returned belong to the component library, and should be considered constants; they should not be manipulated or free()'d. On the other hand, the GList returned must be freed with g_list_free() when no longer needed. Note that the values returned will be invalidated by a call to s_clib_free() or s_clib_refresh().
Bug:
Only includes components which are not embedded, but they should (probably) also appear in the list.
Parameters:
toplevelTOPLEVEL structure to scan.
Returns:
GList of symbols.

Definition at line 1440 of file s_clib.c.

Here is the call graph for this function:

void s_color_map_defaults ( COLOR map)
Function Description
Initialises a color map to a simple default: black features on a white background, with "special" colors as gray.
Warning:
map must be have length of at least MAX_COLORS.
Parameters:
mapColor map to initialise.

Definition at line 91 of file s_color.c.

gboolean s_color_rgba_decode ( const gchar *  rgba,
guchar *  r,
guchar *  g,
guchar *  b,
guchar *  a 
)
gchar* s_color_rgba_encode ( guint8  r,
guint8  g,
guint8  b,
guint8  a 
)

Definition at line 187 of file s_color.c.

SCM s_color_map_to_scm ( const COLOR map)

Definition at line 224 of file s_color.c.

Here is the call graph for this function:

void s_color_map_from_scm ( COLOR map,
SCM  lst,
const char *  scheme_proc_name 
)
Warning:
This function should ONLY be called from Scheme procedures.

Definition at line 245 of file s_color.c.

Here is the call graph for this function:

void s_conn_remove_object ( TOPLEVEL toplevel,
OBJECT to_remove 
)
Function Description
This function removes all connections from and to the OBJECT to_remove.
Parameters:
toplevel(currently not used)
to_removeOBJECT to unconnected from all other objects

Definition at line 193 of file s_conn.c.

Here is the call graph for this function:

void s_conn_update_object ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
This function searches for all geometrical conections of the OBJECT object to all other connectable objects. It adds connections to the object and from all other objects to this one.
Parameters:
toplevel(currently not used)
objectOBJECT to add into the connection system

Definition at line 505 of file s_conn.c.

Here is the call graph for this function:

int s_conn_net_search ( OBJECT new_net,
int  whichone,
GList *  conn_list 
)
Function Description
This method searches the connection list for the first matching connection with the given x, y, and whichone endpoint.
Parameters:
[in]new_netNet OBJECT to compare to.
[in]whichoneThe connection number to check.
[in]conn_listList of existing connections to compare new_net to.
Returns:
TRUE if a matching connection is found, FALSE otherwise.

Definition at line 560 of file s_conn.c.

GList* s_conn_return_others ( GList *  input_list,
OBJECT object 
)
Function Description
This function gets all other_object from the connection list of the current object. COMPLEX objects are entered, and their prim_objs processed. If an input_list is given, the other objects are appended to that list.
Parameters:
[in]input_listGList of OBJECT's
[in]objectOBJECT to get other OBJECTs from
Returns:
A GList of OBJECTs
Warning:
Caller must g_list_free returned GList pointer. Do not free individual data items in list.

Definition at line 627 of file s_conn.c.

Here is the call graph for this function:

void s_conn_append_conns_changed_hook ( TOPLEVEL toplevel,
ConnsChangedFunc  func,
void *  data 
)

Definition at line 665 of file s_conn.c.

void s_conn_emit_conns_changed ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 689 of file s_conn.c.

Here is the call graph for this function:

void s_conn_freeze_hooks ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 702 of file s_conn.c.

void s_conn_thaw_hooks ( TOPLEVEL toplevel,
OBJECT object 
)

Definition at line 707 of file s_conn.c.

Here is the call graph for this function:

void s_cue_postscript_fillbox ( TOPLEVEL toplevel,
FILE *  fp,
int  x,
int  y 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 41 of file s_cue.c.

Here is the call graph for this function:

void s_cue_postscript_junction ( TOPLEVEL toplevel,
FILE *  fp,
int  x,
int  y,
int  bus_involved 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 62 of file s_cue.c.

Here is the call graph for this function:

void s_cue_output_all ( TOPLEVEL toplevel,
const GList *  obj_list,
FILE *  fp,
int  type 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 120 of file s_cue.c.

Here is the call graph for this function:

void s_cue_output_lowlevel ( TOPLEVEL toplevel,
OBJECT object,
int  whichone,
FILE *  fp,
int  output_type 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 152 of file s_cue.c.

Here is the call graph for this function:

void s_cue_output_lowlevel_midpoints ( TOPLEVEL toplevel,
OBJECT object,
FILE *  fp,
int  output_type 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 242 of file s_cue.c.

Here is the call graph for this function:

void s_cue_output_single ( TOPLEVEL toplevel,
OBJECT object,
FILE *  fp,
int  type 
)
Function Description
Cues are drawn on pins, nets and buses. Two types of cues are drawn:
  • endpoint cues (identifying unconnected ends of objects)
  • junction cues (identifying net/pin/bus junctions)
Parameters:
[in]toplevelThe TOPLEVEL object
[in]objectThe OBJECT to output cues for
[in]fpThe file handle to output to
[in]typeThe type of output being produced

Definition at line 290 of file s_cue.c.

Here is the call graph for this function:

PAGE* s_hierarchy_down_schematic_single ( TOPLEVEL toplevel,
const gchar *  filename,
PAGE parent,
int  page_control,
int  flag 
)
Todo:
Finish function documentation!!!
Function Description
This function searches the associated source file refered by the filename and loads it. If the flag is set to HIERARCHY_NORMAL_LOAD and the page is allready in the list of pages it will return the pid of that page. If the flag is set to HIERARCHY_FORCE_LOAD then this function will load the page again with a new page id. The second case is mainly used by gnetlist where pushed down schematics MUST be unique.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]filenameSchematic file name.
[in]parentThe parent page of the schematic.
[in]page_control
[in]flag
Returns:
The page loaded, or NULL if failed.
Note:
This function goes and finds the associated source files and loads all up It only works for schematic files though this is basically push flag can either be HIERARCHY_NORMAL_LOAD or HIERARCHY_FORCE_LOAD flag is mainly used by gnetlist where pushed down schematics MUST be unique

Definition at line 63 of file s_hierarchy.c.

Here is the call graph for this function:

void s_hierarchy_down_symbol ( TOPLEVEL toplevel,
const CLibSymbol symbol,
PAGE parent 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 144 of file s_hierarchy.c.

Here is the call graph for this function:

PAGE* s_hierarchy_find_up_page ( GedaPageList page_list,
PAGE current_page 
)
Function Description
This function searches the parent page of page page in the hierarchy. It checks all the pages in the list page_list.

It returns a pointer on the page if found, NULL otherwise.

Note:
The page current_page must be in the list page_list.
Parameters:
[in]page_listThe list of pages in which to search.
[in]current_pageThe reference page for the search.
Returns:
A pointer on the page found or NULL if not found.

Definition at line 191 of file s_hierarchy.c.

Here is the call graph for this function:

GList* s_hierarchy_traversepages ( TOPLEVEL toplevel,
PAGE p_current,
gint  flags 
)
Function Description
This function traverses the hierarchy tree of pages and returns a flat list of pages that are below p_current. There are two flags that can be used to control the way that the return value is constructed: HIERARCHY_NODUPS returns a list without duplicate pages, and HIERARCHY_POSTORDER traverses the hierarchy tree and returns a postorder list instead of preorder.
Parameters:
toplevelThe TOPLEVEL structure.
p_currentThe PAGE to traverse hierarchy for.
flagsFlags controlling form of return value.
Returns:
A GList of PAGE pointers.
Warning:
Caller must destroy returned GList with g_list_free().

Definition at line 219 of file s_hierarchy.c.

Here is the call graph for this function:

gint s_hierarchy_print_page ( PAGE p_current,
void *  data 
)
Todo:
Finish function documentation!!!
Function Description
Note:
Test function which only prints the name of a page and it's number.

Definition at line 304 of file s_hierarchy.c.

PAGE* s_hierarchy_find_prev_page ( GedaPageList page_list,
PAGE current_page 
)
Function Description
This function searches the previous sibling of page page in the hierarchy. It checks all the pages preceding page in the list page_list.

It returns a pointer on the page if found, NULL otherwise.

Note:
The page current_page must be in the list page_list.
Parameters:
[in]page_listThe list of pages in which to search.
[in]current_pageThe reference page for the search.
Returns:
A pointer on the page found or NULL if not found.

Definition at line 327 of file s_hierarchy.c.

PAGE* s_hierarchy_find_next_page ( GedaPageList page_list,
PAGE current_page 
)
Function Description
This function searches the next sibling of page page in the hierarchy. It checks all the pages following page in the list page_list.

It returns a pointer on the page if found, NULL otherwise.

Note:
The page current_page must be in the list page_list.
Parameters:
[in]page_listThe list of pages in which to search.
[in]current_pageThe reference page for the search.
Returns:
A pointer on the page found or NULL if not found.

Definition at line 361 of file s_hierarchy.c.

void s_log_init ( const gchar *  prefix)
Function Description
This function opens the file filename to log to and registers the handler to redirect log message to this file.
Parameters:
[in]prefixCharacter string with file name prefix to log to.

Definition at line 77 of file s_log.c.

Here is the call graph for this function:

void s_log_close ( void  )
Function Description
This function deregisters the handler for redirection to the log file and closes it.

Definition at line 180 of file s_log.c.

gchar* s_log_read ( void  )
Function Description
This function reads the current log file and returns its contents.
Returns:
Character string with current log's contents.

Definition at line 207 of file s_log.c.

int s_menu_return_num ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 56 of file s_menu.c.

SCM s_menu_return_entry ( int  index,
char **  menu_name 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 66 of file s_menu.c.

int s_menu_add_entry ( char *  new_menu,
SCM  menu_items 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 86 of file s_menu.c.

void s_menu_print ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 109 of file s_menu.c.

void s_menu_free ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 125 of file s_menu.c.

void s_menu_init ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 145 of file s_menu.c.

PAGE* s_page_new ( TOPLEVEL toplevel,
const gchar *  filename 
)
Function Description
Creates a new page and add it to toplevel's list of pages.

It initializes the PAGE structure and set its page_filename to filename. toplevel's current page is not changed by this function.

Definition at line 116 of file s_page.c.

Here is the call graph for this function:

void s_page_delete ( TOPLEVEL toplevel,
PAGE page 
)
Function Description
Deletes a single page page from toplevel's list of pages.

See s_page_delete_list() to delete all pages of a toplevel

If the current page of toplevel is given as parameter page, the function sets the field page_current of the TOPLEVEL struct to NULL.

Definition at line 187 of file s_page.c.

Here is the call graph for this function:

void s_page_delete_list ( TOPLEVEL toplevel)
Function Description
Deletes the list of pages of toplevel. This function should only be called when you are finishing up.
Parameters:
toplevelThe TOPLEVEL object.

Definition at line 284 of file s_page.c.

Here is the call graph for this function:

void s_page_weak_ref ( PAGE page,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Adds the weak reference callback notify_func to page. When page is destroyed, notify_func will be called with two arguments: the page, and the user_data.
See also:
s_page_weak_unref
Parameters:
[in,out]pagePage to weak-reference.
[in]notify_funcWeak reference notify function.
[in]user_dataData to be passed to notify_func.

Definition at line 317 of file s_page.c.

Here is the call graph for this function:

void s_page_weak_unref ( PAGE page,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Removes the weak reference callback notify_func from page.
See also:
s_page_weak_ref()
Parameters:
[in,out]pagePage to weak-reference.
[in]notify_funcNotify function to search for.
[in]user_dataData to to search for.

Definition at line 336 of file s_page.c.

Here is the call graph for this function:

void s_page_add_weak_ptr ( PAGE page,
void *  weak_pointer_loc 
)
Function Description
Adds the weak pointer at weak_pointer_loc to page. The value of weak_pointer_loc will be set to NULL when page is destroyed.
See also:
s_page_remove_weak_ptr
Parameters:
[in,out]pagePage to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 357 of file s_page.c.

Here is the call graph for this function:

void s_page_remove_weak_ptr ( PAGE page,
void *  weak_pointer_loc 
)
Function Description
Removes the weak pointer at weak_pointer_loc from page.
See also:
s_page_add_weak_ptr()
Parameters:
[in,out]pagePage to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 374 of file s_page.c.

Here is the call graph for this function:

void s_page_goto ( TOPLEVEL toplevel,
PAGE p_new 
)
Function Description
Changes the current page in toplevel to the page p_new.
Parameters:
toplevelThe TOPLEVEL object
p_newThe PAGE to go to

Definition at line 389 of file s_page.c.

PAGE* s_page_search ( TOPLEVEL toplevel,
const gchar *  filename 
)
Function Description
Searches in toplevel's list of pages for a page with a filename equal to filename.
Parameters:
toplevelThe TOPLEVEL object
filenameThe filename string to search for
Returns:
PAGE pointer to a matching page, NULL otherwise.

Definition at line 414 of file s_page.c.

PAGE* s_page_search_by_page_id ( GedaPageList list,
int  pid 
)
Function Description
This functions returns the page that have the page id pid in the list of pages starting at page_list, or NULL if there is no such page.
Parameters:
[in]listThe list of page to search the page in.
[in]pidThe ID of the page to find.
Returns:
A pointer on the page found or NULL if not found.

Definition at line 440 of file s_page.c.

void s_page_print_all ( TOPLEVEL toplevel)
Function Description
This function prints the internal structure of toplevel's list of pages.
Parameters:
[in]toplevelThe TOPLEVEL object to print.

Definition at line 463 of file s_page.c.

Here is the call graph for this function:

gint s_page_save_all ( TOPLEVEL toplevel)
Function Description
Saves all the pages in the toplevel parameter.
Parameters:
[in]toplevelThe TOPLEVEL to save pages from.
Returns:
The number of failed tries to save a page.

Definition at line 485 of file s_page.c.

Here is the call graph for this function:

gboolean s_page_check_changed ( GedaPageList list)
Function Description
This function checks the CHANGED flag for all pages in the list object.
Parameters:
[in]listGedaPageList to check CHANGED flag in.
Returns:
1 if any page has the CHANGED flag set, 0 otherwise.

Definition at line 524 of file s_page.c.

void s_page_clear_changed ( GedaPageList list)
Function Description
This function resets the CHANGED flag of each page following head.
Parameters:
[in,out]listPAGE list to set CHANGED flags in.

Definition at line 548 of file s_page.c.

void s_page_autosave_init ( TOPLEVEL toplevel)
Function Description
This function sets up the autosave callback function.
Parameters:
[in]toplevelThe TOPLEVEL object.

Definition at line 568 of file s_page.c.

Here is the call graph for this function:

gint s_page_autosave ( TOPLEVEL toplevel)
Function Description
This function is a callback of the glib g_timeout functions. It is called every "interval" milliseconds and it sets a flag to save a backup copy of the opened pages.
Parameters:
[in]toplevelThe TOPLEVEL object.
Returns:
The length in milliseconds to set for next interval.

Definition at line 589 of file s_page.c.

void s_page_append ( TOPLEVEL toplevel,
PAGE page,
OBJECT object 
)
Function Description
Links the passed OBJECT to the end of the PAGE's linked list of objects.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE the object is being added to.
[in]objectThe OBJECT being added to the page.

Definition at line 633 of file s_page.c.

Here is the call graph for this function:

void s_page_append_list ( TOPLEVEL toplevel,
PAGE page,
GList *  obj_list 
)
Function Description
Links the passed OBJECT GList to the end of the PAGE's object_list.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE the objects are being added to.
[in]obj_listThe OBJECT list being added to the page.

Definition at line 649 of file s_page.c.

Here is the call graph for this function:

void s_page_remove ( TOPLEVEL toplevel,
PAGE page,
OBJECT object 
)
Function Description
Removes the passed OBJECT from the PAGE's linked list of objects.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE the object is being removed from.
[in]objectThe OBJECT being removed from the page.

Definition at line 668 of file s_page.c.

Here is the call graph for this function:

void s_page_replace ( TOPLEVEL toplevel,
PAGE page,
OBJECT object1,
OBJECT object2 
)
Function Description
Removes object1 from page's linked list of objects, and puts object2 in the position thus vacated. If object1 is not in page, object2 is appended to page.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE to be modified.
[in]object1The OBJECT being removed from the page.
[in]object2The OBJECT being added to the page.

Definition at line 687 of file s_page.c.

Here is the call graph for this function:

void s_page_delete_objects ( TOPLEVEL toplevel,
PAGE page 
)
Function Description
Removes and frees all OBJECTs from the PAGE.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE being cleared.

Definition at line 711 of file s_page.c.

Here is the call graph for this function:

const GList* s_page_objects ( PAGE page)
Function Description
An accessor for the PAGE's GList of objects.

NB: This GList is owned by the PAGE, and must not be free'd or modified by the caller.

Parameters:
[in]pageThe PAGE to get objects on.
Returns:
a const pointer to the PAGE's GList of objects

Definition at line 734 of file s_page.c.

GList* s_page_objects_in_region ( TOPLEVEL toplevel,
PAGE page,
int  min_x,
int  min_y,
int  max_x,
int  max_y 
)
Function Description
Finds the objects which are inside, or intersect the passed box shaped region.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE to find objects on.
[in]min_xThe smaller X coordinate of the region.
[in]min_yThe smaller Y coordinate of the region.
[in]max_xThe larger X coordinate of the region.
[in]max_yThe larger Y coordinate of the region.
Returns:
The GList of OBJECTs in the region.

Definition at line 754 of file s_page.c.

Here is the call graph for this function:

GList* s_page_objects_in_regions ( TOPLEVEL toplevel,
PAGE page,
BOX rects,
int  n_rects 
)
Function Description
Finds the objects which are inside, or intersect the passed box shaped region.
Parameters:
[in]toplevelThe TOPLEVEL object.
[in]pageThe PAGE to find objects on.
[in]rectsThe BOX regions to check.
[in]n_rectsThe number of regions.
Returns:
The GList of OBJECTs in the region.

Definition at line 779 of file s_page.c.

Here is the call graph for this function:

int s_papersizes_add_entry ( char *  new_papersize,
int  width,
int  height 
)
Todo:
Finish function documentation!!!
Function Description
width and height in portrait mode

Definition at line 60 of file s_papersizes.c.

void s_papersizes_print ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 84 of file s_papersizes.c.

int s_papersizes_uniq ( char *  name)
Todo:
Finish function documentation!!!
Function Description
true for uniqueness, zero for duplication

Definition at line 98 of file s_papersizes.c.

void s_papersizes_free ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 116 of file s_papersizes.c.

void s_papersizes_init ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 132 of file s_papersizes.c.

char* s_papersizes_get ( int  counter)
Todo:
Finish function documentation!!!
Function Description

Definition at line 145 of file s_papersizes.c.

void s_papersizes_get_size ( char *  string,
int *  width,
int *  height 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 159 of file s_papersizes.c.

PATH* s_path_parse ( const char *  path_str)

Definition at line 637 of file s_path.c.

Here is the call graph for this function:

char* s_path_string_from_path ( const PATH path)

Definition at line 658 of file s_path.c.

void s_toplevel_append_new_hook ( NewToplevelFunc  func,
void *  user_data 
)

Definition at line 45 of file s_toplevel.c.

TOPLEVEL* s_toplevel_new ( void  )
Function Description
Create and return an empty TOPLEVEL object with sensible defaults for its properties.
Returns:
the newly created TOPLEVEL.
Todo:
rethink block below that is set in gschem but used in libgeda.

Definition at line 75 of file s_toplevel.c.

Here is the call graph for this function:

void s_toplevel_delete ( TOPLEVEL toplevel)
Todo:
Finish function documentation!!!
Function Description

Definition at line 195 of file s_toplevel.c.

Here is the call graph for this function:

void s_toplevel_weak_ref ( TOPLEVEL toplevel,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Adds the weak reference callback notify_func to toplevel. When toplevel is destroyed, notify_func will be called with two arguments: the toplevel, and the user_data.
See also:
s_toplevel_weak_unref
Parameters:
[in,out]toplevelToplevel to weak-reference.
[in]notify_funcWeak reference notify function.
[in]user_dataData to be passed to notify_func.

Definition at line 246 of file s_toplevel.c.

Here is the call graph for this function:

void s_toplevel_weak_unref ( TOPLEVEL toplevel,
void(*)(void *, void *)  notify_func,
void *  user_data 
)
Function Description
Removes the weak reference callback notify_func from toplevel.
See also:
s_toplevel_weak_ref()
Parameters:
[in,out]toplevelToplevel to weak-reference.
[in]notify_funcNotify function to search for.
[in]user_dataData to to search for.

Definition at line 266 of file s_toplevel.c.

Here is the call graph for this function:

void s_toplevel_add_weak_ptr ( TOPLEVEL toplevel,
void *  weak_pointer_loc 
)
Function Description
Adds the weak pointer at weak_pointer_loc to toplevel. The value of weak_pointer_loc will be set to NULL when toplevel is destroyed.
See also:
s_toplevel_remove_weak_ptr
Parameters:
[in,out]toplevelToplevel to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 287 of file s_toplevel.c.

Here is the call graph for this function:

void s_toplevel_remove_weak_ptr ( TOPLEVEL toplevel,
void *  weak_pointer_loc 
)
Function Description
Removes the weak pointer at weak_pointer_loc from toplevel.
See also:
s_toplevel_add_weak_ptr()
Parameters:
[in,out]toplevelToplevel to weak-reference.
[in]weak_pointer_locMemory address of a pointer.

Definition at line 305 of file s_toplevel.c.

Here is the call graph for this function:

int s_slib_add_entry ( char *  new_path)
Todo:
Finish function documentation!!!
Function Description

Definition at line 65 of file s_slib.c.

int s_slib_search_for_dirname ( char *  dir_name)
Todo:
Finish function documentation!!!
Function Description
Returns:
1 if directory is found, zero otherwise.

Definition at line 87 of file s_slib.c.

char* s_slib_search_dirs ( const char *  basename)
Todo:
Finish function documentation!!!
Function Description
Warning:
Caller must g_free returned pointer.

Definition at line 107 of file s_slib.c.

char* s_slib_search_lowlevel ( const char *  basename)
Todo:
Finish function documentation!!!
Function Description
Warning:
Caller must g_free returned pointer.

Definition at line 161 of file s_slib.c.

Here is the call graph for this function:

char* s_slib_getbasename ( const char *  rawname)
Todo:
Finish function documentation!!!
Function Description
This function takes a raw file name and returns a processed file name. It takes the raw file name and copies everything up to the first period and removes any _# (where # is any number of digits.
Parameters:
[in]rawnameCharacter string with the raw file name to parse.
Returns:
The base file name in a character string.
Warning:
Caller must g_free returned pointer.

Definition at line 200 of file s_slib.c.

char* s_slib_search ( const char *  filename,
int  flag 
)
Todo:
Finish function documentation!!!
Function Description
This function will search the SLIB for a particular file name starting at a location specified by the flag parameter.
Parameters:
[in]filenameCharacter string with file name to search for.
[in]flagSpecifies search start location. (See below...)

The flag parameter can be one of the following values:

SLIB_SEARCH_START
Starts a new search for a source file.
SLIB_SEARCH_NEXT
Returns the next instance of the file if one exists.
SLIB_SEARCH_DONE
Finish searching.

Filename is the raw symbol/whatever file name. This function does all the required stripping (up to the first period).

Warning:
Caller must g_free returned pointer.

Definition at line 293 of file s_slib.c.

Here is the call graph for this function:

char* s_slib_search_single ( const char *  filename)
Todo:
Finish function documentation!!!
Function Description
This function will search the SLIB for a particular file name starting at a location specified by the flag parameter.
Parameters:
[in]filenameCharacter string with file name to search for.

Filename is the raw symbol/whatever file name. This function only looks for the file name as is and does no other changes to it.

Warning:
Caller must g_free returned pointer.

Definition at line 352 of file s_slib.c.

Here is the call graph for this function:

void s_slib_free ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 367 of file s_slib.c.

void s_slib_init ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 383 of file s_slib.c.

char* s_slib_getdir ( int  index)
Todo:
Finish function documentation!!!
Function Description
Warning:
Caller must not free the returned pointer.

Definition at line 399 of file s_slib.c.

char* s_slib_getfiles ( char *  directory,
int  flag 
)
Todo:
Finish function documentation!!!
Function Description
Parameters:
[in]directoryCharacter string with directory to get files from.
[in]flagSearch control flag. (See below...)
Returns:
A file name if one is found, NULL otherwise.
Warning:
Caller must g_free returned pointer.

The flag parameter can be one of the following values:

OPEN_DIR
Opens the directory and returns NULL.
READ_DIR
Returns the next non "." entry.
CLOSE_DIR
Closes the directory.
Bug:
This is TOTTALLY BROKEN! statics are not allowed anymore
Warning:
this function is not reentrant

Definition at line 429 of file s_slib.c.

void s_slib_print ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 537 of file s_slib.c.

int s_slib_uniq ( char *  path)
Todo:
Finish function documentation!!!
Function Description

Definition at line 551 of file s_slib.c.

Here is the call graph for this function:

void s_slib_print_dirs ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 574 of file s_slib.c.

Here is the call graph for this function:

char* s_slot_search_slot ( OBJECT object,
OBJECT **  return_found 
)
Function Description
Search for slot attribute.

The returned value will only come from an attached attribute.

Parameters:
[in]objectOBJECT list to search.
[in]return_foundattached slot attribute if found, NULL otherwise.
Returns:
Character string with attribute value, NULL otherwise.
Warning:
Caller must g_free returned character string

Definition at line 56 of file s_slot.c.

Here is the call graph for this function:

void s_slot_update_object ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
Update pinnumber attributes in a graphic object. The interesting case is where the object is an instantiation of a slotted part. This means that s_slot_update_object iterates through all pins found on object and sets the pinnumber= attrib on each. This doesn't matter for non-slotted parts, but on slotted parts, this is what sets the pinnumber= attribute on slots 2, 3, 4....
Parameters:
[in]toplevelThe TOPLEVEL object.
[in,out]objectThe OBJECT to update.

Definition at line 124 of file s_slot.c.

Here is the call graph for this function:

void s_tile_update_object ( TOPLEVEL toplevel,
OBJECT object 
)
Function Description
This function updates the tile informations of an object. This function can be used if an object has been moved on the page
Parameters:
toplevelThe TOPLEVEL structure
objectThe OBJECT to update

Definition at line 370 of file s_tile.c.

Here is the call graph for this function:

GList* s_tile_get_objectlists ( TOPLEVEL toplevel,
PAGE p_current,
int  world_x1,
int  world_y1,
int  world_x2,
int  world_y2 
)
Function Description
This functions collects all object lists of the tiles that are touched by the given rectangle (x1,y1), (x2,y2).
Note:
The caller has to g_list_free() the returned list.

Definition at line 383 of file s_tile.c.

UNDO* s_undo_return_tail ( UNDO head)
Todo:
Finish function documentation!!!
Function Description

Definition at line 42 of file s_undo.c.

UNDO* s_undo_return_head ( UNDO tail)
Todo:
Finish function documentation!!!
Function Description

Definition at line 61 of file s_undo.c.

UNDO* s_undo_new_head ( void  )
Todo:
Finish function documentation!!!
Function Description

Definition at line 80 of file s_undo.c.

void s_undo_destroy_head ( UNDO u_head)
Todo:
Finish function documentation!!!
Function Description

Definition at line 104 of file s_undo.c.

UNDO* s_undo_add ( UNDO head,
int  type,
char *  filename,
GList *  object_list,
int  left,
int  top,
int  right,
int  bottom,
int  page_control,
int  up 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 114 of file s_undo.c.

Here is the call graph for this function:

void s_undo_print_all ( UNDO head)
Todo:
Finish function documentation!!!
Function Description

Definition at line 155 of file s_undo.c.

Here is the call graph for this function:

void s_undo_destroy_all ( TOPLEVEL toplevel,
UNDO head 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 187 of file s_undo.c.

Here is the call graph for this function:

void s_undo_remove ( TOPLEVEL toplevel,
UNDO head,
UNDO u_tos 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 213 of file s_undo.c.

Here is the call graph for this function:

void s_undo_remove_rest ( TOPLEVEL toplevel,
UNDO head 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 255 of file s_undo.c.

Here is the call graph for this function:

int s_undo_levels ( UNDO head)
Todo:
Finish function documentation!!!
Function Description

Definition at line 285 of file s_undo.c.

void s_undo_init ( PAGE p_current)
Todo:
Finish function documentation!!!
Function Description

Definition at line 307 of file s_undo.c.

void s_undo_free_all ( TOPLEVEL toplevel,
PAGE p_current 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 318 of file s_undo.c.

Here is the call graph for this function:

char* u_basic_breakup_string ( char *  string,
char  delimiter,
int  count 
)
Todo:
Finish function documentation!!!
Function Description

Definition at line 44 of file u_basic.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines