Exemplo n.º 1
0
/*!
 *  \brief Create a TOPLEVEL object
 *  \par Function Description
 *  Create and return an empty TOPLEVEL object with sensible defaults
 *  for its properties.
 *
 *  \returns the newly created TOPLEVEL.
 */
TOPLEVEL *s_toplevel_new (void)
{
  TOPLEVEL *toplevel;

  toplevel = (TOPLEVEL*)g_new (TOPLEVEL, 1);

  toplevel->RC_list = NULL;

  toplevel->bitmap_directory   = NULL;

  /* These values are the default extents of the schematic drawing area.
   *
   * The negative values allow symbols, residing at the origin, to be
   * edited without translation to other coordinates.
   */
  toplevel->init_left = -60500;
  toplevel->init_top  = -45375;
  toplevel->init_right  = 121000;
  toplevel->init_bottom = 90750;

  toplevel->pages = geda_list_new();
  toplevel->page_current = NULL;

  toplevel->show_hidden_text = 0;

  toplevel->major_changed_refdes = NULL;

  toplevel->image_color = FALSE;

  toplevel->net_consolidate = FALSE;

  /* The following is an attempt at getting (deterministic) defaults */
  /* for the following variables */
  toplevel->attribute_promotion = FALSE;
  toplevel->promote_invisible   = FALSE;
  toplevel->keep_invisible      = FALSE;

  toplevel->make_backup_files = TRUE;

  toplevel->bus_ripper_symname = NULL;

  toplevel->force_boundingbox = FALSE;

  toplevel->always_promote_attributes = NULL;

  toplevel->rendered_text_bounds_func = NULL;
  toplevel->rendered_text_bounds_data = NULL;

  toplevel->change_notify_funcs = NULL;

  toplevel->load_newer_backup_func = NULL;
  toplevel->load_newer_backup_data = NULL;

  /* Auto-save interval */
  toplevel->auto_save_interval = 0;
  toplevel->auto_save_timeout = 0;

  toplevel->weak_refs = NULL;
  return toplevel;
}
Exemplo n.º 2
0
/*! \todo Finish function documentation!!!
 *  \brief
 *  \par Function Description
 *
 */
TOPLEVEL *s_toplevel_new (void)
{
    TOPLEVEL *toplevel;

    toplevel = (TOPLEVEL*)g_new (TOPLEVEL, 1);

    toplevel->RC_list = NULL;

    toplevel->untitled_name      = NULL;
    toplevel->font_directory     = NULL;
    toplevel->scheme_directory   = NULL;
    toplevel->bitmap_directory   = NULL;

    toplevel->init_left = 0;
    toplevel->init_top  = 0;
    /* init_right and _bottom are set before this function is called */

    toplevel->width  = 1;
    toplevel->height = 1;
    toplevel->snap = SNAP_GRID;

    toplevel->override_color = -1;

    toplevel->DONT_REDRAW       = 0;
    toplevel->ADDING_SEL        = 0;

    toplevel->pages = geda_list_new();
    toplevel->page_current = NULL;

    toplevel->show_hidden_text = 0;

    toplevel->major_changed_refdes = NULL;

    toplevel->snap_size = 100;

    /* BLOCK SET IN GSCHEM, BUT USED IN LIBGEDA - NEEDS A RETHINK */
    toplevel->background_color   = 0;
    toplevel->override_net_color = -1;
    toplevel->override_bus_color = -1;
    toplevel->override_pin_color = -1;
    toplevel->pin_style = 0;
    toplevel->net_style = 0;
    toplevel->bus_style = 0;
    toplevel->line_style = 0;
    /* END BLOCK - ALTHOUGH THERE ARE MORE CASES! */

    toplevel->object_clipping = 0;

    toplevel->text_output = 0;

    toplevel->print_orientation = 0;

    toplevel->image_color = FALSE;

    toplevel->print_color = FALSE;

    toplevel->print_color_background = 0;

    toplevel->setpagedevice_orientation = FALSE;

    toplevel->setpagedevice_pagesize = FALSE;

    toplevel->postscript_prolog = NULL;
    toplevel->postscript_font_scale = 1.0;

    toplevel->net_consolidate = FALSE;

    /* The following is an attempt at getting (deterministic) defaults */
    /* for the following variables */
    toplevel->attribute_promotion = FALSE;
    toplevel->promote_invisible   = FALSE;
    toplevel->keep_invisible      = FALSE;

    toplevel->print_output_type = 0;

    toplevel->print_output_capstyle = BUTT_CAP;

    toplevel->paper_width  = 0;
    toplevel->paper_height = 0;

    toplevel->bus_ripper_symname = NULL;

    toplevel->force_boundingbox = FALSE;

    toplevel->print_vector_threshold = 3;

    toplevel->always_promote_attributes = NULL;

    toplevel->net_naming_priority = 0;
    toplevel->hierarchy_traversal = 0;
    toplevel->hierarchy_uref_mangle = 0;
    toplevel->hierarchy_netname_mangle = 0;
    toplevel->hierarchy_netattrib_mangle = 0;
    toplevel->hierarchy_uref_separator      = NULL;
    toplevel->hierarchy_netname_separator   = NULL;
    toplevel->hierarchy_netattrib_separator = NULL;
    toplevel->hierarchy_netattrib_order = 0;
    toplevel->hierarchy_netname_order = 0;
    toplevel->hierarchy_uref_order = 0;
    toplevel->unnamed_netname = NULL;
    toplevel->unnamed_busname = NULL;

    toplevel->rendered_text_bounds_func = NULL;
    toplevel->rendered_text_bounds_data = NULL;

    /* Auto-save interval */
    toplevel->auto_save_interval = 0;
    toplevel->auto_save_timeout = 0;

    /* disable the events */
    toplevel->DONT_REDRAW = 1;

    return toplevel;
}