Enlightenment CVS committal Author : devilhorns Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_int_config_apps.c Log Message: Some fixes for new apps dialog. - Formatting fixes. - Use a framtable for the category button & list (allows for better resizing). - Don't set a dynamic framelist title as this causes weird resize issues with the frame itself. Instead, just an ilist header to show which category the user is browsing. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_apps.c,v retrieving revision 1.69 retrieving revision 1.70 diff -u -3 -r1.69 -r1.70 --- e_int_config_apps.c 7 Jun 2007 16:42:51 -0000 1.69 +++ e_int_config_apps.c 9 Jun 2007 22:08:56 -0000 1.70 @@ -39,7 +39,7 @@ { E_Config_Once *once; - Evas_Object *o_apps, *o_list, *o_frame; + Evas_Object *o_apps, *o_list; Evas_Object *o_add, *o_del, *o_categories; Ecore_List *apps; const char *category; @@ -49,7 +49,7 @@ }; EAPI E_Config_Dialog * - e_int_config_apps_add(E_Container *con) +e_int_config_apps_add(E_Container *con) { E_Desktop_Edit *ed; Efreet_Desktop *de = NULL; @@ -92,7 +92,7 @@ char buf[4096]; snprintf(buf, sizeof(buf), "%s/.e/e/applications/menu/favorite.menu", - e_user_homedir_get()); + e_user_homedir_get()); once = E_NEW(E_Config_Once, 1); once->title = _("Favorites Menu"); @@ -193,24 +193,24 @@ static void * _create_data(E_Config_Dialog *cfd) { - E_Config_Dialog_Data *cfdata; - E_Config_Once *once; - const char *ext; - - cfdata = E_NEW(E_Config_Dialog_Data, 1); - once = cfd->data; - if (!once->filename) return NULL; - - ext = strrchr(once->filename, '.'); - if (!ext) return NULL; - - cfdata->once = once; - if (!strcmp(ext, ".menu")) - cfdata->apps = _load_menu(once->filename); - else if (!strcmp(ext, ".order")) - cfdata->apps = _load_order(once->filename); + E_Config_Dialog_Data *cfdata; + E_Config_Once *once; + const char *ext; - return cfdata; + cfdata = E_NEW(E_Config_Dialog_Data, 1); + once = cfd->data; + if (!once->filename) return NULL; + + ext = strrchr(once->filename, '.'); + if (!ext) return NULL; + + cfdata->once = once; + if (!strcmp(ext, ".menu")) + cfdata->apps = _load_menu(once->filename); + else if (!strcmp(ext, ".order")) + cfdata->apps = _load_order(once->filename); + + return cfdata; } static Ecore_List * @@ -237,16 +237,16 @@ static Ecore_List * _load_order(const char *path) { - E_Order *order; - Evas_List *l; - Ecore_List *apps; - - apps = ecore_list_new(); - order = e_order_new(path); - for (l = order->desktops; l; l = l->next) - ecore_list_append(apps, l->data); + E_Order *order; + Evas_List *l; + Ecore_List *apps; - return apps; + apps = ecore_list_new(); + order = e_order_new(path); + for (l = order->desktops; l; l = l->next) + ecore_list_append(apps, l->data); + + return apps; } static void @@ -272,18 +272,18 @@ ot = e_widget_table_add(evas, 0); - of = e_widget_framelist_add(evas, _("Application Categories"), 0); - cfdata->o_frame = of; - - ob = e_widget_button_add(evas, _("Categories"), "widget/categories", _cb_categories, cfdata, NULL); + of = e_widget_frametable_add(evas, _("Application Categories"), 0); + ob = e_widget_button_add(evas, _("Categories"), "widget/categories", + _cb_categories, cfdata, NULL); cfdata->o_categories = ob; e_widget_disabled_set(ob, 1); - e_widget_framelist_object_append(of, ob); + e_widget_frametable_object_append(of, ob, 0, 0, 1, 1, 1, 0, 1, 0); ob = e_widget_ilist_add(evas, 24, 24, &(cfdata->app)); cfdata->o_apps = ob; _fill_categories(cfdata); - e_widget_framelist_object_append(of, ob); + e_widget_frametable_object_append(of, ob, 0, 1, 1, 1, 1, 1, 1, 1); + e_widget_table_object_append(ot, of, 0, 0, 1, 4, 1, 1, 1, 1); ob = e_widget_button_add(evas, _("Add"), "widget/add", _cb_add, cfdata, NULL); @@ -365,7 +365,6 @@ { Evas *evas; Evas_Coord w; - Ecore_List *cats; char *category; @@ -373,15 +372,14 @@ evas_event_freeze(evas); edje_freeze(); e_widget_ilist_freeze(cfdata->o_apps); - e_widget_ilist_clear(cfdata->o_apps); - e_widget_framelist_label_set(cfdata->o_frame, _("Application Categories")); cats = efreet_util_desktop_categories_list(); ecore_list_sort(cats, ECORE_COMPARE_CB(strcmp), ECORE_SORT_MIN); ecore_list_goto_first(cats); while ((category = ecore_list_next(cats))) - e_widget_ilist_append(cfdata->o_apps, NULL, category, _category_cb_selected, cfdata, category); + e_widget_ilist_append(cfdata->o_apps, NULL, category, + _category_cb_selected, cfdata, category); ecore_list_destroy(cats); e_widget_ilist_go(cfdata->o_apps); @@ -406,7 +404,6 @@ Ecore_List *desktops; Efreet_Desktop *desktop; - char buf[4096]; if (!cfdata->category) return; evas = evas_object_evas_get(cfdata->o_apps); @@ -414,8 +411,7 @@ edje_freeze(); e_widget_ilist_freeze(cfdata->o_apps); e_widget_ilist_clear(cfdata->o_apps); - snprintf(buf, sizeof(buf), "%s (%s)", _("Applications"), cfdata->category); - e_widget_framelist_label_set(cfdata->o_frame, buf); + e_widget_ilist_header_append(cfdata->o_apps, NULL, cfdata->category); desktops = (Ecore_List *)efreet_util_desktop_category_list(cfdata->category); ecore_list_sort(desktops, ECORE_COMPARE_CB(_cb_desktop_name_sort), ECORE_SORT_MIN); @@ -423,11 +419,10 @@ while ((desktop = ecore_list_next(desktops))) { Evas_Object *icon; + icon = e_util_desktop_icon_add(desktop, "24x24", evas); - e_widget_ilist_append(cfdata->o_apps, icon, desktop->name, - _apps_cb_selected, cfdata, - desktop->orig_path); + _apps_cb_selected, cfdata, desktop->orig_path); } e_widget_ilist_go(cfdata->o_apps); @@ -463,8 +458,7 @@ icon = e_util_desktop_icon_add(desktop, "24x24", evas); e_widget_ilist_append(cfdata->o_list, icon, desktop->name, - _list_cb_selected, cfdata, - desktop->orig_path); + _list_cb_selected, cfdata, desktop->orig_path); } e_widget_ilist_go(cfdata->o_list); @@ -584,4 +578,3 @@ if (ecore_list_goto(cfdata->apps, desk)) ecore_list_remove(cfdata->apps); } - ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs