/*! \brief Perform runtime initialization of libgeda library. * \par 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. * */ void libgeda_init(void) { #ifdef ENABLE_NLS /* Initialise gettext */ bindtextdomain (LIBGEDA_GETTEXT_DOMAIN, LOCALEDIR); bind_textdomain_codeset(LIBGEDA_GETTEXT_DOMAIN, "UTF-8"); #endif /* Initialise gobject */ g_type_init (); s_path_sys_data (); s_path_sys_config (); s_clib_init(); s_slib_init(); s_menu_init(); s_attrib_init(); s_color_init(); g_register_libgeda_funcs(); g_register_libgeda_dirs(); edascm_init (); }
/*! \todo Finish function documentation!!! * \brief * \par Function Description * */ void g_rc_parse_gtkrc() { gchar *filename; filename = g_build_filename (s_path_sys_config (), "gschem-gtkrc", NULL); gtk_rc_parse (filename); g_free (filename); filename = g_build_filename (s_path_user_config (), "gschem-gtkrc", NULL); gtk_rc_parse (filename); g_free (filename); }
/*! \brief Load a system configuration file. * \par Function Description * Attempts to load the system configuration file with basename \a * rcname. The string "system-" is prefixed to \a rcname. If \a * rcname is NULL, the default value of "gafrc" is used. * * \param toplevel The current #TOPLEVEL structure. * \param rcfile The basename of the configuration file to load, or NULL. * \param err Return location for errors, or NULL. * \return TRUE on success, FALSE on failure. */ gboolean g_rc_parse_system (TOPLEVEL *toplevel, const gchar *rcname, GError **err) { gchar *sysname = NULL; gboolean status; /* Default to gafrc */ rcname = (rcname != NULL) ? rcname : "gafrc"; sysname = g_strdup_printf ("system-%s", rcname); status = g_rc_parse_local (toplevel, sysname, s_path_sys_config (), err); g_free (sysname); return status; }
/*! \brief Register some libgeda variables with scheme. * \par Function Description * Define some variables to be visible to Scheme. */ void g_register_libgeda_vars (void) { scm_c_define("geda-rc-path", scm_from_utf8_string (s_path_sys_config ())); scm_c_define("geda-data-path", scm_from_utf8_string (s_path_sys_data ())); scm_c_define("path-sep", scm_from_utf8_string(G_DIR_SEPARATOR_S)); scm_c_define("OBJ_LINE", SCM_MAKE_CHAR((unsigned char) OBJ_LINE)); scm_c_define("OBJ_BOX", SCM_MAKE_CHAR((unsigned char) OBJ_BOX)); scm_c_define("OBJ_PICTURE", SCM_MAKE_CHAR((unsigned char) OBJ_PICTURE)); scm_c_define("OBJ_CIRCLE", SCM_MAKE_CHAR((unsigned char) OBJ_CIRCLE)); scm_c_define("OBJ_NET", SCM_MAKE_CHAR((unsigned char) OBJ_NET)); scm_c_define("OBJ_BUS", SCM_MAKE_CHAR((unsigned char) OBJ_BUS)); scm_c_define("OBJ_COMPLEX", SCM_MAKE_CHAR((unsigned char) OBJ_COMPLEX)); scm_c_define("OBJ_TEXT", SCM_MAKE_CHAR((unsigned char) OBJ_TEXT)); scm_c_define("OBJ_PIN", SCM_MAKE_CHAR((unsigned char) OBJ_PIN)); scm_c_define("OBJ_ARC", SCM_MAKE_CHAR((unsigned char) OBJ_ARC)); scm_c_define("OBJ_PLACEHOLDER", SCM_MAKE_CHAR((unsigned char) OBJ_PLACEHOLDER)); scm_c_define("OBJ_PATH", SCM_MAKE_CHAR((unsigned char) OBJ_PATH)); }