Work on a config dialog.

This commit is contained in:
Jaime Thomas
2009-02-20 04:23:07 +00:00
parent 43e68e0c3d
commit f7a5dfa6cd
9 changed files with 478 additions and 58 deletions

View File

@@ -164,7 +164,7 @@ _cb_filelist_key_down(void *data, Evas *e __UNUSED__,
{
len = strlen(text) + 2;
text = realloc(text, len);
ecore_strlcat(text, append, len);
strncat(text, append, len);
}
/* Avoid sending the same signal twice... seems to skip the
@@ -184,21 +184,21 @@ int
ecdb_create_main_gui(void)
{
Evas_Coord mw, mh;
const char *scale, *engine;
engine = getenv("ECDB_ENGINE");
if (engine)
if (!strcmp(em->engine, "opengl_x11"))
{
if (!strcmp(engine, "gl"))
em->main_win_ee = ecore_evas_gl_x11_new(0, 0, 0, 0, 255, 255);
else if (!strcmp(engine, "xr"))
em->main_win_ee = ecore_evas_xrender_x11_new(0, 0, 0, 0, 255, 255);
else if (!strcmp(engine, "x11"))
em->main_win_ee = ecore_evas_software_x11_new(0, 0, 0, 0, 255, 255);
em->main_win_ee = ecore_evas_gl_x11_new(0, 0, 0, 0, 255, 255);
em->xwin = ecore_evas_gl_x11_window_get(em->main_win_ee);
}
else
else if (!strcmp(em->engine, "xrender_x11"))
{
em->main_win_ee = ecore_evas_xrender_x11_new(0, 0, 0, 0, 255, 255);
em->xwin = ecore_evas_xrender_x11_window_get(em->main_win_ee);
}
else if (!strcmp(em->engine, "software_x11"))
{
em->main_win_ee = ecore_evas_software_x11_new(0, 0, 0, 0, 255, 255);
em->xwin = ecore_evas_software_x11_window_get(em->main_win_ee);
}
if (!em->main_win_ee)
@@ -210,10 +210,8 @@ ecdb_create_main_gui(void)
ecore_evas_title_set(em->main_win_ee, "ECDB");
ecore_evas_name_class_set(em->main_win_ee, "ECDB", "ECDB");
ecore_evas_avoid_damage_set(em->main_win_ee, 1);
ecore_x_dnd_aware_set(ecore_evas_software_x11_window_get(em->main_win_ee),
1);
ecore_x_dnd_type_set(ecore_evas_software_x11_window_get(em->main_win_ee),
"*", 1);
ecore_x_dnd_aware_set(em->xwin, 1);
ecore_x_dnd_type_set(em->xwin, "*", 1);
ecore_evas_callback_delete_request_set(em->main_win_ee, ecdb_shutdown);
ecore_evas_callback_destroy_set(em->main_win_ee, ecdb_shutdown);
@@ -222,13 +220,10 @@ ecdb_create_main_gui(void)
ecore_evas_callback_mouse_out_set(em->main_win_ee, ecdb_cb_leave);
ecore_evas_callback_resize_set(em->main_win_ee, ecdb_cb_resize);
edje_frametime_set(1.0 / 60.0);
edje_frametime_set(1.0 / (double)em->fps);
ecore_evas_show(em->main_win_ee);
/* Make this configurable at some point */
ecdb_set_main_theme(NULL);
scale = getenv("ECDB_SCALE");
em->scalef = (scale) ? atof(scale) : 1.0;
edje_scale_set(em->scalef);
em->page = calloc(1, sizeof(Ecdb_Page));
@@ -253,19 +248,6 @@ ecdb_create_main_gui(void)
return TRUE;
}
/* This needs some work. Where should user themes go? */
void
ecdb_set_main_theme(const char *theme_name)
{
if (!theme_name)
{
snprintf(em->theme_path, PATH_MAX, "%s/%s", PACKAGE_DATA_DIR,
"themes/default.edj");
evas_font_path_append(ecore_evas_get(em->main_win_ee),
PACKAGE_DATA_DIR"/font");
}
}
void
ecdb_handle_typebuf(Evas_Object *gui, Ewl_Widget *fl)
{