More dialog resize work for vertical lists.

SVN revision: 29565
This commit is contained in:
Christopher Michael 2007-04-17 08:57:20 +00:00
parent 4d50206f0b
commit d75a212483
1 changed files with 57 additions and 71 deletions

View File

@ -386,7 +386,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
edje_thaw();
evas_event_thaw(evas_object_evas_get(ob));
e_widget_framelist_object_append(of, ob);
e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 0, 1, 0);
e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 1, 1, 1);
of = e_widget_framelist_add(evas, _("Styles"), 1);
ob = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_style));
@ -395,7 +395,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
e_widget_ilist_go(ob);
e_widget_min_size_set(ob, 125, 250);
e_widget_framelist_object_append(of, ob);
e_widget_table_object_append(ot, of, 2, 0, 1, 1, 1, 0, 1, 0);
e_widget_table_object_append(ot, of, 2, 0, 1, 1, 1, 1, 1, 1);
ob = e_widget_check_add(evas, _("Enable Font Class"), &(cfdata->cur_enabled));
cfdata->gui.enabled = ob;
@ -413,7 +413,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
e_widget_table_object_append(ott, ob, 1, 0, 2, 1, 1, 0, 1, 0);
e_widget_table_object_append(ot, ott, 1, 1, 2, 1, 1, 0, 1, 0);
e_dialog_resizable_set(cfd->dia, 1);
return ot;
}
@ -478,38 +478,36 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Evas_Object *o, *of, *ob, *ott, *ot;
Evas_List *next;
E_Radio_Group *rg;
int option_enable;
Evas_Object *ot, *ob, *of, *ott;
Evas_Coord w;
E_Radio_Group *rg;
Evas_List *next;
int option_enable;
cfdata->cur_index = -1;
cfdata->evas = evas;
cfdata->gui.font_list = NULL;
cfdata->gui.font = NULL;
o = e_widget_list_add(evas, 0, 0);
/* Create Font Class Widgets */
ot = e_widget_table_add(evas, 0);
of = e_widget_framelist_add(evas, _("Font Class"), 1);
of = e_widget_framelist_add(evas, _("Font Classes"), 0);
ob = e_widget_ilist_add(evas, 16, 16, NULL);
cfdata->gui.class_list = ob;
_fill_ilist(cfdata);
e_widget_ilist_multi_select_set(ob, 1);
e_widget_min_size_get(ob, &w, NULL);
e_widget_min_size_set(ob, w, 100);
e_widget_min_size_set(ob, w, 250);
e_widget_on_change_hook_set(ob, _ilist_font_cb_change, cfdata);
e_widget_framelist_object_append(of, ob);
e_widget_table_object_append(ot, of, 0, 0, 1, 5, 1, 1, 1, 1);
e_widget_table_object_append(ot, of, 0, 0, 1, 1, 1, 1, 1, 1);
/* Font List */
of = e_widget_framelist_add(evas, _("Fonts"), 1);
cfdata->gui.font_list = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_font));
e_widget_on_change_hook_set(cfdata->gui.font_list, _font_cb_change, cfdata);
evas_event_freeze(evas_object_evas_get(cfdata->gui.font_list));
ob = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_font));
cfdata->gui.font_list = ob;
e_widget_on_change_hook_set(ob, _font_cb_change, cfdata);
evas_event_freeze(evas_object_evas_get(ob));
edje_freeze();
e_widget_ilist_freeze(cfdata->gui.font_list);
e_widget_ilist_freeze(ob);
if (cfdata->font_hash == NULL)
{
@ -517,96 +515,84 @@ _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
fonts = evas_font_available_list(evas);
cfdata->font_hash = e_font_available_list_parse(fonts);
evas_hash_foreach(cfdata->font_hash, _font_hash_cb, cfdata);
evas_hash_foreach(cfdata->font_hash, _font_hash_cb, cfdata);
if (cfdata->font_list)
{
cfdata->font_list = evas_list_sort(cfdata->font_list,
evas_list_count(cfdata->font_list),
_sort_fonts);
evas_list_count(cfdata->font_list),
_sort_fonts);
}
evas_font_available_list_free(evas, fonts);
}
if (cfdata->font_list)
if (cfdata->font_list)
{
for ( next = cfdata->font_list; next ; next = next->next)
Evas_List *next;
for (next = cfdata->font_list; next; next = next->next)
{
char *f;
f = next->data;
e_widget_ilist_append(cfdata->gui.font_list, NULL, f, NULL, NULL, f);
e_widget_ilist_append(ob, NULL, f, NULL, NULL, f);
}
}
e_widget_ilist_go(cfdata->gui.font_list);
e_widget_min_size_get(cfdata->gui.font_list, &w, NULL);
e_widget_min_size_set(cfdata->gui.font_list, w, 100);
e_widget_ilist_thaw(cfdata->gui.font_list);
e_widget_ilist_go(ob);
e_widget_min_size_get(ob, &w, NULL);
e_widget_min_size_set(ob, w, 250);
e_widget_ilist_thaw(ob);
edje_thaw();
evas_event_thaw(evas_object_evas_get(cfdata->gui.font_list));
e_widget_framelist_object_append(of, cfdata->gui.font_list);
e_widget_table_object_append(ot, of, 1, 0, 1, 5, 1, 1, 1, 1);
evas_event_thaw(evas_object_evas_get(ob));
e_widget_framelist_object_append(of, ob);
e_widget_table_object_append(ot, of, 1, 0, 1, 1, 1, 1, 1, 1);
/* Empty Style List */
of = e_widget_framelist_add(evas, _("Styles"), 1);
cfdata->gui.style_list = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_style));
e_widget_on_change_hook_set(cfdata->gui.style_list, _style_cb_change, cfdata);
e_widget_ilist_go(cfdata->gui.style_list);
e_widget_min_size_set(cfdata->gui.style_list, 75, 100);
e_widget_framelist_object_append(of, cfdata->gui.style_list);
e_widget_table_object_append(ot, of, 2, 0, 1, 5, 1, 1, 1, 1);
cfdata->gui.enabled = e_widget_check_add(evas, _("Enable Font Class"), &(cfdata->cur_enabled));
e_widget_disabled_set(cfdata->gui.enabled, 1);
e_widget_table_object_append(ot, cfdata->gui.enabled, 0, 5, 1, 1, 1, 0, 1, 0);
e_widget_on_change_hook_set(cfdata->gui.enabled, _enabled_font_cb_change, cfdata);
ob = e_widget_ilist_add(evas, 16, 16, &(cfdata->cur_style));
cfdata->gui.style_list = ob;
e_widget_on_change_hook_set(ob, _style_cb_change, cfdata);
e_widget_ilist_go(ob);
e_widget_min_size_set(ob, 125, 250);
e_widget_framelist_object_append(of, ob);
e_widget_table_object_append(ot, of, 2, 0, 1, 1, 1, 1, 1, 1);
ob = e_widget_check_add(evas, _("Enable Font Class"), &(cfdata->cur_enabled));
cfdata->gui.enabled = ob;
e_widget_on_change_hook_set(ob, _enabled_font_cb_change, cfdata);
e_widget_disabled_set(ob, 1);
e_widget_table_object_append(ot, ob, 0, 1, 1, 1, 1, 0, 1, 0);
ott = e_widget_table_add(evas, 1);
ob = e_widget_label_add(evas, _("Font Size:"));
e_widget_table_object_append(ott, ob, 0, 0, 1, 1, 1, 0, 1, 0);
ob = e_widget_slider_add(evas, 1, 0, _("%2.1f pixels"), 5.0, 25.0, 0.5, 0,
&(cfdata->cur_size), NULL, 25);
cfdata->gui.size = ob;
e_widget_disabled_set(ob, 1);
e_widget_on_change_hook_set(ob, _size_cb_change, cfdata);
e_widget_table_object_append(ott, ob, 1, 0, 2, 1, 1, 0, 1, 0);
e_widget_table_object_append(ot, ott, 1, 1, 2, 1, 1, 0, 1, 0);
cfdata->gui.size = e_widget_slider_add(evas, 1, 0, _("%2.1f pixels"), 5.0, 25.0, 0.5, 0, &(cfdata->cur_size), NULL, 25);
e_widget_disabled_set(cfdata->gui.size, 1);
e_widget_min_size_set(cfdata->gui.size, 80, 25);
e_widget_on_change_hook_set(cfdata->gui.size, _size_cb_change, cfdata);
e_widget_table_object_append(ott, cfdata->gui.size,
1, 0, 1, 1, 1, 0, 1, 0);
e_widget_table_object_append(ot, ott, 1, 5, 2, 1, 1, 1, 1, 1);
e_widget_list_object_append(o, ot, 1, 1, 0.5);
/* Create Hinting Widgets */
of = e_widget_framelist_add(evas, _("Hinting"), 1);
e_widget_framelist_content_align_set(of, 0.5, 0.5);
rg = e_widget_radio_group_new(&(cfdata->hinting));
option_enable = evas_font_hinting_can_hint(evas, EVAS_FONT_HINTING_BYTECODE);
ob = e_widget_radio_add(evas, _("Bytecode"), 0, rg);
e_widget_disabled_set(ob, !option_enable);
e_widget_framelist_object_append(of, ob);
option_enable = evas_font_hinting_can_hint(evas, EVAS_FONT_HINTING_AUTO);
ob = e_widget_radio_add(evas, _("Automatic"), 1, rg);
e_widget_disabled_set(ob, !option_enable);
e_widget_framelist_object_append(of, ob);
option_enable = evas_font_hinting_can_hint(evas, EVAS_FONT_HINTING_NONE);
ob = e_widget_radio_add(evas, _("None"), 2, rg);
e_widget_disabled_set(ob, !option_enable);
e_widget_framelist_object_append(of, ob);
e_widget_list_object_append(o, of, 1, 1, 0.5);
/* Create Fallbacks Widgets */
of = e_widget_framelist_add(evas, _("Font Fallbacks"), 0);
e_widget_framelist_content_align_set(of, 0.5, 0.5);
e_widget_table_object_append(ot, of, 0, 2, 3, 1, 1, 0, 1, 0);
of = e_widget_framelist_add(evas, _("Font Fallbacks"), 0);
ob = e_widget_config_list_add(evas, e_widget_entry_add, _("Fallback Name"), 2);
cfdata->gui.fallback_list = ob;
e_widget_framelist_object_append(of, ob);
/* Fill In Ilist */
e_widget_table_object_append(ot, of, 0, 3, 3, 1, 1, 0, 1, 0);
option_enable = 0;
for (next = e_font_fallback_list(); next; next = next->next)
{
@ -624,8 +610,8 @@ _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
e_widget_check_checked_set(ob, option_enable);
e_widget_change(ob);
e_widget_list_object_append(o, of, 1, 1, 0.5);
return o;
e_dialog_resizable_set(cfd->dia, 1);
return ot;
}
/* Private Font Class Functions */