Add font fallbacks configuration to font config dialog
* Add arrow icons to default theme * Add api to ilist for manipulating list labels (for moving) * TODO: need to split list manipulation code out to its own widget but what should the diget be called? e_widget_editable_list? SVN revision: 21806
This commit is contained in:
parent
7f422515a1
commit
5828935a95
|
@ -29,6 +29,9 @@ images {
|
|||
image: "e17_pager_window.png" COMP;
|
||||
|
||||
image: "e17_icon_right_arrow.png" COMP;
|
||||
image: "e17_icon_up_arrow.png" COMP;
|
||||
image: "e17_icon_down_arrow.png" COMP;
|
||||
|
||||
image: "e17_pointer.png" COMP;
|
||||
}
|
||||
|
||||
|
@ -511,6 +514,40 @@ group {
|
|||
}
|
||||
}
|
||||
}
|
||||
group {
|
||||
name: "icons/widget/up_arrow";
|
||||
parts {
|
||||
part {
|
||||
name: "icon";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
aspect: 0.83333333333 0.83333333333;
|
||||
max: 12 10;
|
||||
image {
|
||||
normal: "e17_icon_up_arrow.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
group {
|
||||
name: "icons/widget/down_arrow";
|
||||
parts {
|
||||
part {
|
||||
name: "icon";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
aspect: 0.83333333333 0.83333333333;
|
||||
max: 12 10;
|
||||
image {
|
||||
normal: "e17_icon_down_arrow.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
group {
|
||||
name: "icons/enlightenment/mouse";
|
||||
max: 64 64;
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -296,6 +296,29 @@ e_ilist_remove_label(Evas_Object *obj, const char *label)
|
|||
}
|
||||
}
|
||||
|
||||
EAPI const char *
|
||||
e_ilist_nth_label_get(Evas_Object *obj, int n)
|
||||
{
|
||||
E_Smart_Item *si;
|
||||
|
||||
API_ENTRY return NULL;
|
||||
if (!sd->items) return NULL;
|
||||
si = evas_list_nth(sd->items, n);
|
||||
if (si) return edje_object_part_text_get(si->base_obj, "label");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
EAPI void
|
||||
e_ilist_nth_label_set(Evas_Object *obj, int n, const char *label)
|
||||
{
|
||||
E_Smart_Item *si;
|
||||
|
||||
API_ENTRY return;
|
||||
if (!sd->items) return;
|
||||
si = evas_list_nth(sd->items, n);
|
||||
if (si) edje_object_part_text_set(si->base_obj, "label", label);
|
||||
}
|
||||
|
||||
EAPI int
|
||||
e_ilist_count(Evas_Object *obj)
|
||||
{
|
||||
|
|
|
@ -20,6 +20,8 @@ EAPI void e_ilist_selector_set (Evas_Object *obj, int selector)
|
|||
EAPI int e_ilist_selector_get (Evas_Object *obj);
|
||||
EAPI void e_ilist_remove_num (Evas_Object *obj, int n);
|
||||
EAPI void e_ilist_remove_label (Evas_Object *obj, const char *label);
|
||||
EAPI const char *e_ilist_nth_label_get (Evas_Object *obj, int n);
|
||||
EAPI void e_ilist_nth_label_set (Evas_Object *obj, int n, const char *label);
|
||||
EAPI int e_ilist_count (Evas_Object *obj);
|
||||
EAPI void e_ilist_clear (Evas_Object *obj);
|
||||
|
||||
|
|
|
@ -3,28 +3,24 @@
|
|||
*/
|
||||
#include "e.h"
|
||||
|
||||
#define CLASS_ENABLED 0
|
||||
#define CLASS_DISABLED 1
|
||||
|
||||
typedef struct _E_Text_Class_Pair E_Text_Class_Pair;
|
||||
typedef struct _CFText_Class CFText_Class;
|
||||
typedef struct _E_Widget_Data E_Widget_Data;
|
||||
|
||||
static void *_create_data(E_Config_Dialog *cfd);
|
||||
static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||
static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||
static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata);
|
||||
|
||||
static void _ilist_cb_change(void *data, Evas_Object *obj);
|
||||
static void _enabled_cb_change(void *data, Evas_Object *obj);
|
||||
static void _ilist_font_cb_change(void *data, Evas_Object *obj);
|
||||
static void _enabled_font_cb_change(void *data, Evas_Object *obj);
|
||||
|
||||
|
||||
struct _E_Widget_Data
|
||||
{
|
||||
E_Radio_Group *group;
|
||||
Evas_Object *o_radio;
|
||||
int valnum;
|
||||
};
|
||||
static void _ilist_fallback_cb_change(void *data, Evas_Object *obj);
|
||||
static void _enabled_fallback_cb_change(void *data, Evas_Object *obj);
|
||||
static void _button_fallback_cb_add(void *data, void *obj);
|
||||
static void _button_fallback_cb_remove(void *data, void *obj);
|
||||
static void _button_fallback_cb_up(void *data, void *obj);
|
||||
static void _button_fallback_cb_down(void *data, void *obj);
|
||||
static void _list_select_num(E_Config_Dialog_Data *cfdata, int indx);
|
||||
|
||||
struct _E_Text_Class_Pair
|
||||
{
|
||||
|
@ -84,19 +80,29 @@ struct _E_Config_Dialog_Data
|
|||
int cur_index;
|
||||
|
||||
/* Font Fallbacks */
|
||||
Evas_List *font_fallbacks;
|
||||
int fallbacks_state;
|
||||
char *cur_fallback;
|
||||
int cur_fallbacks_enabled;
|
||||
|
||||
/* Font Hinting */
|
||||
int hinting;
|
||||
|
||||
struct
|
||||
{
|
||||
/* Font Classes */
|
||||
Evas_Object *class_list;
|
||||
|
||||
Evas_Object *font;
|
||||
Evas_Object *size;
|
||||
Evas_Object *enabled;
|
||||
|
||||
/* Font Fallbacks */
|
||||
Evas_Object *fallback_list; /* Selecting a list entry starts edit*/
|
||||
|
||||
Evas_Object *fallback; /* Text Entry */
|
||||
Evas_Object *fallback_up; /* Move selected list entry up */
|
||||
Evas_Object *fallback_down; /* Move selected list entry down */
|
||||
Evas_Object *fallback_add; /* create and select a new list entry */
|
||||
Evas_Object *fallback_remove; /* remove the selected entry */
|
||||
}
|
||||
gui;
|
||||
};
|
||||
|
@ -121,13 +127,13 @@ e_int_config_fonts(E_Container *con)
|
|||
static void
|
||||
_fill_data(E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
Evas_List *enabled_list;
|
||||
Evas_List *font_list;
|
||||
Evas_List *next;
|
||||
E_Font_Default *efd;
|
||||
CFText_Class *tc;
|
||||
int i;
|
||||
|
||||
enabled_list = e_font_default_list();
|
||||
font_list = e_font_default_list();
|
||||
|
||||
/* Fill out the font list */
|
||||
for (i = 0; text_class_predefined_names[i].class_name; i++ )
|
||||
|
@ -140,7 +146,7 @@ _fill_data(E_Config_Dialog_Data *cfdata)
|
|||
tc->size = 0;
|
||||
tc->enabled = 0;
|
||||
|
||||
for (next = enabled_list; next ; next = next->next)
|
||||
for (next = font_list; next ; next = next->next)
|
||||
{
|
||||
efd = next->data;
|
||||
|
||||
|
@ -173,6 +179,8 @@ _fill_data(E_Config_Dialog_Data *cfdata)
|
|||
/* Fill Hinting */
|
||||
cfdata->hinting = e_config->font_hinting;
|
||||
|
||||
/* Font fallbacks configured in widgets */
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -201,12 +209,14 @@ _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
|||
evas_stringshare_del(tc->font);
|
||||
E_FREE(tc);
|
||||
}
|
||||
|
||||
free(cfdata);
|
||||
}
|
||||
|
||||
static int
|
||||
_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
int i;
|
||||
Evas_List *next;
|
||||
CFText_Class *tc;
|
||||
|
||||
|
@ -234,6 +244,19 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
|||
}
|
||||
}
|
||||
|
||||
/* Fallbacks configure */
|
||||
e_font_fallback_clear();
|
||||
|
||||
if (cfdata->cur_fallbacks_enabled)
|
||||
{
|
||||
for (i = 0; i < e_widget_ilist_count(cfdata->gui.fallback_list); i++)
|
||||
{
|
||||
const char *fallback;
|
||||
fallback = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, i);
|
||||
if (fallback != NULL && strlen(fallback) > 0)
|
||||
e_font_fallback_append(fallback);
|
||||
}
|
||||
}
|
||||
e_font_apply();
|
||||
|
||||
/* Apply Hinting */
|
||||
|
@ -259,7 +282,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
of = e_widget_frametable_add(evas, _("Font Class Configuration"), 0);
|
||||
cfdata->gui.class_list = e_widget_ilist_add(evas, 16, 16, NULL);
|
||||
e_widget_min_size_set(cfdata->gui.class_list, 100, 100);
|
||||
e_widget_on_change_hook_set(cfdata->gui.class_list, _ilist_cb_change, cfdata);
|
||||
e_widget_on_change_hook_set(cfdata->gui.class_list, _ilist_font_cb_change, cfdata);
|
||||
|
||||
/* Fill In Ilist */
|
||||
for (i = 0; i < evas_list_count(cfdata->text_classes); i++)
|
||||
|
@ -319,7 +342,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
e_widget_frametable_object_append(of, cfdata->gui.enabled,
|
||||
1, 3, 2, 1,
|
||||
1, 1, 1, 1);
|
||||
e_widget_on_change_hook_set(cfdata->gui.enabled, _enabled_cb_change, cfdata);
|
||||
e_widget_on_change_hook_set(cfdata->gui.enabled, _enabled_font_cb_change, cfdata);
|
||||
|
||||
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||
|
||||
|
@ -343,12 +366,98 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
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 */
|
||||
option_enable = (e_font_fallback_list() != NULL);
|
||||
of = e_widget_frametable_add(evas, _("Font Fallbacks"), 1);
|
||||
|
||||
ob = e_widget_button_add(evas, _("Move Up"), "widget/up_arrow", _button_fallback_cb_up, cfdata, NULL);
|
||||
cfdata->gui.fallback_up = ob;
|
||||
e_widget_disabled_set(ob, 1);
|
||||
e_widget_frametable_object_append( of,
|
||||
ob,
|
||||
1, 0, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
|
||||
ob = e_widget_button_add(evas, _("Move Down"), "widget/down_arrow", _button_fallback_cb_down, cfdata, NULL);
|
||||
cfdata->gui.fallback_down = ob;
|
||||
e_widget_disabled_set(ob, 1);
|
||||
e_widget_frametable_object_append( of,
|
||||
ob,
|
||||
1, 3, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
|
||||
cfdata->gui.fallback_list = e_widget_ilist_add(evas, 16, 16, NULL);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_list, !option_enable);
|
||||
e_widget_min_size_set(cfdata->gui.fallback_list, 100, 100);
|
||||
e_widget_on_change_hook_set(cfdata->gui.fallback_list, _ilist_fallback_cb_change, cfdata);
|
||||
/* Fill In Ilist */
|
||||
for (i = 0; i < evas_list_count(e_font_fallback_list()); i++)
|
||||
{
|
||||
E_Font_Fallback *eff;
|
||||
|
||||
eff = evas_list_nth(e_font_fallback_list(), i);
|
||||
e_widget_ilist_append(cfdata->gui.fallback_list, NULL, eff->name, NULL, NULL, NULL);
|
||||
}
|
||||
e_widget_ilist_go(cfdata->gui.fallback_list);
|
||||
e_widget_frametable_object_append( of,
|
||||
cfdata->gui.fallback_list,
|
||||
2, /* Col Start*/
|
||||
0, /* Row Start */
|
||||
1, /* Col Span*/
|
||||
4, /* Row Span*/
|
||||
1, 1, 1, 1);
|
||||
|
||||
ob = e_widget_label_add(evas, _("Fallback Name"));
|
||||
e_widget_frametable_object_append( of,
|
||||
ob,
|
||||
0, 0, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
cfdata->gui.fallback = e_widget_entry_add(evas, &(cfdata->cur_fallback));
|
||||
e_widget_disabled_set(cfdata->gui.fallback, !option_enable);
|
||||
e_widget_min_size_set(cfdata->gui.fallback, 100, 25);
|
||||
e_widget_frametable_object_append(of, cfdata->gui.fallback,
|
||||
0, 1, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
cfdata->gui.fallback_add = e_widget_button_add(evas, _("Add"), NULL, _button_fallback_cb_add, cfdata, NULL);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_add, !option_enable);
|
||||
e_widget_frametable_object_append( of,
|
||||
cfdata->gui.fallback_add,
|
||||
1, 1, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
cfdata->gui.fallback_remove = e_widget_button_add(evas, _("Remove"), NULL, _button_fallback_cb_remove, cfdata, NULL);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_remove, !option_enable);
|
||||
e_widget_frametable_object_append( of,
|
||||
cfdata->gui.fallback_remove ,
|
||||
1, 2, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
|
||||
ob = e_widget_check_add(evas, _("Enable Fallbacks"), &(cfdata->cur_fallbacks_enabled));
|
||||
e_widget_frametable_object_append(of, ob,
|
||||
0, 3, 1, 1,
|
||||
1, 1, 1, 1);
|
||||
e_widget_check_checked_set(ob, option_enable);
|
||||
e_widget_on_change_hook_set(ob, _enabled_fallback_cb_change, cfdata);
|
||||
|
||||
if (e_widget_ilist_count(cfdata->gui.fallback_list) > 0)
|
||||
{
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, 0);
|
||||
}
|
||||
|
||||
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||
return o;
|
||||
}
|
||||
|
||||
/* Private Font Class Functions */
|
||||
|
||||
static void
|
||||
_ilist_cb_change(void *data, Evas_Object *obj)
|
||||
_ilist_font_cb_change(void *data, Evas_Object *obj)
|
||||
{
|
||||
int indx;
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
@ -383,7 +492,7 @@ _ilist_cb_change(void *data, Evas_Object *obj)
|
|||
}
|
||||
|
||||
static void
|
||||
_enabled_cb_change(void *data, Evas_Object *obj)
|
||||
_enabled_font_cb_change(void *data, Evas_Object *obj)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
cfdata = data;
|
||||
|
@ -400,3 +509,173 @@ _enabled_cb_change(void *data, Evas_Object *obj)
|
|||
e_widget_disabled_set(cfdata->gui.size, 1);
|
||||
}
|
||||
}
|
||||
|
||||
/* Private Font Fallback Functions */
|
||||
static void _ilist_fallback_cb_change(void *data, Evas_Object *obj)
|
||||
{
|
||||
int indx;
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
indx = e_widget_ilist_selected_get(cfdata->gui.fallback_list);
|
||||
_list_select_num(cfdata, indx);
|
||||
}
|
||||
static void _enabled_fallback_cb_change(void *data, Evas_Object *obj)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
if (cfdata->cur_fallbacks_enabled)
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_list, 0);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_add, 0);
|
||||
e_widget_disabled_set(cfdata->gui.fallback, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
_list_select_num(cfdata, -1);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_list, 1);
|
||||
e_widget_disabled_set(cfdata->gui.fallback, 1);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_add, 1);
|
||||
}
|
||||
}
|
||||
static void _button_fallback_cb_add(void *data, void *obj)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
if (cfdata->cur_fallback && strlen(cfdata->cur_fallback) > 0)
|
||||
{
|
||||
int count;
|
||||
int i;
|
||||
|
||||
/* If it already esists just select the existing one */
|
||||
for (i = 0; i < e_widget_ilist_count(cfdata->gui.fallback_list); i++)
|
||||
{
|
||||
const char *fallback;
|
||||
fallback = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, i);
|
||||
if ( fallback != NULL &&
|
||||
strlen(fallback) > 0 &&
|
||||
!strcmp(fallback, cfdata->cur_fallback) )
|
||||
{
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, i);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
e_widget_ilist_append(cfdata->gui.fallback_list, NULL, cfdata->cur_fallback, NULL, NULL, NULL);
|
||||
e_widget_ilist_go(cfdata->gui.fallback_list);
|
||||
count = e_widget_ilist_count(cfdata->gui.fallback_list);
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, count - 1);
|
||||
|
||||
e_widget_entry_text_set(cfdata->gui.fallback, "");
|
||||
}
|
||||
}
|
||||
|
||||
static void _button_fallback_cb_remove(void *data, void *obj)
|
||||
{
|
||||
int indx;
|
||||
int count;
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
indx = e_widget_ilist_selected_get(cfdata->gui.fallback_list);
|
||||
count = e_widget_ilist_count(cfdata->gui.fallback_list);
|
||||
|
||||
e_widget_ilist_remove_num(cfdata->gui.fallback_list, indx);
|
||||
|
||||
e_widget_ilist_go(cfdata->gui.fallback_list);
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, indx);
|
||||
if (count == 1)
|
||||
{
|
||||
_list_select_num(cfdata, -1);
|
||||
}
|
||||
}
|
||||
static void _button_fallback_cb_up(void *data, void *obj)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
int idx_sel;
|
||||
const char *label_sel;
|
||||
const char *label_rep;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
idx_sel = e_widget_ilist_selected_get(cfdata->gui.fallback_list);
|
||||
|
||||
label_sel = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel);
|
||||
label_rep = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel - 1);
|
||||
|
||||
e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel - 1, label_sel);
|
||||
e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel, label_rep);
|
||||
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, idx_sel - 1);
|
||||
}
|
||||
static void _button_fallback_cb_down(void *data, void *obj)
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
int idx_sel;
|
||||
const char *label_sel;
|
||||
const char *label_rep;
|
||||
|
||||
cfdata = data;
|
||||
if (!cfdata) return;
|
||||
|
||||
idx_sel = e_widget_ilist_selected_get(cfdata->gui.fallback_list);
|
||||
|
||||
label_sel = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel);
|
||||
label_rep = e_widget_ilist_nth_label_get(cfdata->gui.fallback_list, idx_sel + 1);
|
||||
|
||||
e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel + 1, label_sel);
|
||||
e_widget_ilist_nth_label_set(cfdata->gui.fallback_list, idx_sel, label_rep);
|
||||
|
||||
e_widget_ilist_selected_set(cfdata->gui.fallback_list, idx_sel + 1);
|
||||
}
|
||||
|
||||
static void _list_select_num(E_Config_Dialog_Data *cfdata, int indx)
|
||||
{
|
||||
int count;
|
||||
|
||||
/* Disable selecting the list while we are disabled */
|
||||
if (indx >= 0 && !cfdata->cur_fallbacks_enabled) return;
|
||||
|
||||
count = e_widget_ilist_count(cfdata->gui.fallback_list);
|
||||
|
||||
if (count == 0 || indx < 0)
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_remove, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_remove, 0);
|
||||
}
|
||||
|
||||
if (count == 1 || indx < 0)
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_up, 1);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_down, 1);
|
||||
}
|
||||
else if (indx == 0)
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_up, 1);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_down, 0);
|
||||
}
|
||||
else if (indx + 1 == count)
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_up, 0);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_down, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
e_widget_disabled_set(cfdata->gui.fallback_up, 0);
|
||||
e_widget_disabled_set(cfdata->gui.fallback_down, 0);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -166,6 +166,24 @@ e_widget_ilist_remove_label(Evas_Object *obj, const char *label)
|
|||
e_ilist_remove_label(wd->o_ilist, label);
|
||||
}
|
||||
|
||||
EAPI const char *
|
||||
e_widget_ilist_nth_label_get(Evas_Object *obj, int n)
|
||||
{
|
||||
E_Widget_Data *wd;
|
||||
|
||||
wd = e_widget_data_get(obj);
|
||||
return e_ilist_nth_label_get(wd->o_ilist, n);
|
||||
}
|
||||
|
||||
EAPI void
|
||||
e_widget_ilist_nth_label_set(Evas_Object *obj, int n, const char *label)
|
||||
{
|
||||
E_Widget_Data *wd;
|
||||
|
||||
wd = e_widget_data_get(obj);
|
||||
e_ilist_nth_label_set(wd->o_ilist, n, label);
|
||||
}
|
||||
|
||||
EAPI int
|
||||
e_widget_ilist_count(Evas_Object *obj)
|
||||
{
|
||||
|
@ -179,8 +197,9 @@ EAPI void
|
|||
e_widget_ilist_clear(Evas_Object *obj)
|
||||
{
|
||||
E_Widget_Data *wd;
|
||||
/*
|
||||
int mw, mh, vw, vh, w, h;
|
||||
|
||||
*/
|
||||
wd = e_widget_data_get(obj);
|
||||
e_ilist_clear(wd->o_ilist);
|
||||
|
||||
|
|
|
@ -16,6 +16,8 @@ EAPI int e_widget_ilist_selected_get(Evas_Object *obj);
|
|||
EAPI const char *e_widget_ilist_selected_label_get(Evas_Object *obj);
|
||||
EAPI void e_widget_ilist_remove_num(Evas_Object *obj, int n);
|
||||
EAPI void e_widget_ilist_remove_label(Evas_Object *obj, const char *label);
|
||||
EAPI const char *e_widget_ilist_nth_label_get(Evas_Object *obj, int n);
|
||||
EAPI void e_widget_ilist_nth_label_set(Evas_Object *obj, int n, const char *label);
|
||||
EAPI int e_widget_ilist_count(Evas_Object *obj);
|
||||
EAPI void e_widget_ilist_clear(Evas_Object *obj);
|
||||
|
||||
|
|
Loading…
Reference in New Issue