forked from enlightenment/enlightenment
parent
1c519bb9bb
commit
a8a85ed2d8
5
TODO
5
TODO
|
@ -8,8 +8,6 @@ Some of the things (in very short form) that need to be done to E17...
|
|||
BUGS / FIXES
|
||||
-------------------------------------------------------------------------------
|
||||
|
||||
* BUG: pager dnd is broken when shelf below (in desktop canvas) and @ of rows
|
||||
is > 1.
|
||||
* BUG: ghost windows happen if windows close when on another desktop or if
|
||||
windows are very short-lived
|
||||
* BUG: k3b has minimization issues when burning cds (it tries to unminimize
|
||||
|
@ -59,7 +57,8 @@ Some of the things (in very short form) that need to be done to E17...
|
|||
disabled)
|
||||
* shelf gui config is ugly and badly arranged
|
||||
* ibar should support creating and deleting bar dirs
|
||||
* need to port/rewrite ibox to gadcon
|
||||
* ibox labels need to be optional
|
||||
* ibar labels need to be selected (name, generic, etc.)
|
||||
]]]
|
||||
|
||||
[[[
|
||||
|
|
|
@ -191,3 +191,234 @@ group {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
group {
|
||||
name: "widgets/radio_icon";
|
||||
parts {
|
||||
part {
|
||||
name: "outline";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
min: 16 16;
|
||||
max: 16 16;
|
||||
align: 0.0 0.5;
|
||||
fixed: 1 1;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 0.0 1.0;
|
||||
offset: 2 -3;
|
||||
}
|
||||
image {
|
||||
normal: "e17_menu_radio1.png";
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "disabled" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
image {
|
||||
normal: "e17_menu_radio0.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "item1";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
visible: 0;
|
||||
rel1 {
|
||||
to: "outline";
|
||||
relative: 0.0 0.0;
|
||||
offset: 0 0;
|
||||
}
|
||||
rel2 {
|
||||
to: "outline";
|
||||
relative: 1.0 1.0;
|
||||
offset: -1 -1;
|
||||
}
|
||||
image {
|
||||
normal: "e17_menu_radio2.png";
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "active" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 1;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "icon_swallow";
|
||||
type: SWALLOW;
|
||||
mouse_events: 0;
|
||||
clip_to: "icon_clip";
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
min: 16 16;
|
||||
rel1 {
|
||||
to_x: "outline";
|
||||
relative: 1.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
to_y: "label";
|
||||
relative: 1.0 0.0;
|
||||
offset: -2 -2;
|
||||
}
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "icon_clip";
|
||||
type: RECT;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
min: 16 16;
|
||||
rel1 {
|
||||
to: "icon_swallow";
|
||||
}
|
||||
rel2 {
|
||||
to: "icon_swallow";
|
||||
}
|
||||
color: 255 255 255 255;
|
||||
}
|
||||
description {
|
||||
state: "disabled" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
color: 255 255 255 128;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "label";
|
||||
type: TEXT;
|
||||
effect: SHADOW;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
min: 16 16;
|
||||
rel1 {
|
||||
to_x: "outline";
|
||||
relative: 1.0 1.0;
|
||||
offset: 2 -2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -2 -2;
|
||||
}
|
||||
color: 0 0 0 255;
|
||||
color3: 255 255 255 128;
|
||||
text {
|
||||
text: "Radio Button";
|
||||
font: "Edje-Vera";
|
||||
size: 10;
|
||||
min: 1 1;
|
||||
align: 0.5 0.5;
|
||||
text_class: "radio_button";
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "disabled" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
color: 0 0 0 128;
|
||||
color3: 255 255 255 64;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "event";
|
||||
type: RECT;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
color: 0 0 0 0;
|
||||
}
|
||||
description {
|
||||
state: "disabled" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "focus";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
visible: 0;
|
||||
color: 255 255 255 0;
|
||||
image {
|
||||
normal: "focus.png";
|
||||
border: 7 7 7 7;
|
||||
middle: 0;
|
||||
}
|
||||
fill {
|
||||
smooth: 0;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "focused" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
visible: 1;
|
||||
color: 255 255 255 255;
|
||||
}
|
||||
}
|
||||
}
|
||||
programs {
|
||||
program {
|
||||
name: "turn_on1";
|
||||
signal: "toggle_on";
|
||||
source: "";
|
||||
action: STATE_SET "active" 0.0;
|
||||
target: "item1";
|
||||
}
|
||||
program {
|
||||
name: "turn_off1";
|
||||
signal: "toggle_off";
|
||||
source: "";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "item1";
|
||||
}
|
||||
program {
|
||||
name: "click";
|
||||
signal: "mouse,down,1";
|
||||
source: "event";
|
||||
action: SIGNAL_EMIT "toggled" "on";
|
||||
}
|
||||
program {
|
||||
name: "focus_in";
|
||||
signal: "focus_in";
|
||||
source: "";
|
||||
action: STATE_SET "focused" 0.0;
|
||||
transition: DECELERATE 0.2;
|
||||
target: "focus";
|
||||
}
|
||||
program {
|
||||
name: "focus_out";
|
||||
signal: "focus_out";
|
||||
source: "";
|
||||
action: STATE_SET "default" 0.0;
|
||||
transition: ACCELERATE 0.5;
|
||||
target: "focus";
|
||||
}
|
||||
program {
|
||||
name: "disable";
|
||||
signal: "disabled";
|
||||
source: "";
|
||||
action: STATE_SET "disabled" 0.0;
|
||||
target: "outline";
|
||||
target: "event";
|
||||
target: "label";
|
||||
target: "icon_clip";
|
||||
}
|
||||
program {
|
||||
name: "enable";
|
||||
signal: "enabled";
|
||||
source: "";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "outline";
|
||||
target: "event";
|
||||
target: "label";
|
||||
target: "icon_clip";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -572,7 +572,7 @@ e_config_init(void)
|
|||
e_config->winlist_pos_min_h = 0;
|
||||
e_config->winlist_pos_max_w = 320;
|
||||
e_config->winlist_pos_max_h = 320;
|
||||
e_config->maximize_policy = E_MAXIMIZE_FULLSCREEN;
|
||||
e_config->maximize_policy = E_MAXIMIZE_SMART;
|
||||
e_config->allow_manip = 0;
|
||||
e_config->kill_if_close_not_possible = 1;
|
||||
e_config->kill_process = 1;
|
||||
|
|
|
@ -181,6 +181,38 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
e_widget_framelist_object_append(of, ob);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
of = e_widget_frametable_add(evas, _("Layout"), 1);
|
||||
rg = e_widget_radio_group_new(&(cfdata->orient));
|
||||
ob = e_widget_radio_icon_add(evas, _("Left"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_LEFT, rg);
|
||||
e_widget_frametable_object_append(of, ob, 0, 2, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Right"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_RIGHT, rg);
|
||||
e_widget_frametable_object_append(of, ob, 4, 2, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Top"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_TOP, rg);
|
||||
e_widget_frametable_object_append(of, ob, 2, 0, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Bottom"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_BOTTOM, rg);
|
||||
e_widget_frametable_object_append(of, ob, 2, 4, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_TL, rg);
|
||||
e_widget_frametable_object_append(of, ob, 1, 0, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_TR, rg);
|
||||
e_widget_frametable_object_append(of, ob, 3, 0, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_BL, rg);
|
||||
e_widget_frametable_object_append(of, ob, 1, 4, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_BR, rg);
|
||||
e_widget_frametable_object_append(of, ob, 3, 4, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_LT, rg);
|
||||
e_widget_frametable_object_append(of, ob, 0, 1, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_RT, rg);
|
||||
e_widget_frametable_object_append(of, ob, 4, 1, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_LB, rg);
|
||||
e_widget_frametable_object_append(of, ob, 0, 3, 1, 1, 1, 1, 1, 1);
|
||||
ob = e_widget_radio_icon_add(evas, _("Corner"), "enlightenment/e", 32, 32, E_GADCON_ORIENT_CORNER_RB, rg);
|
||||
e_widget_frametable_object_append(of, ob, 4, 3, 1, 1, 1, 1, 1, 1);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
e_widget_list_object_append(o, o2, 1, 1, 0.5);
|
||||
|
||||
o2 = e_widget_list_add(evas, 0, 0);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Size"), 0);
|
||||
ob = e_widget_check_add(evas, _("Shrink to Content Size"), &(cfdata->fit_along));
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
|
@ -188,42 +220,10 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
// e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_label_add(evas, _("Shelf Size"));
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_slider_add(evas, 1, 0, _("%3.0f pixels"), 4, 120, 4, 0, NULL, &(cfdata->size), 200);
|
||||
ob = e_widget_slider_add(evas, 1, 0, _("%3.0f pixels"), 4, 120, 4, 0, NULL, &(cfdata->size), 100);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Layout"), 0);
|
||||
rg = e_widget_radio_group_new(&(cfdata->orient));
|
||||
ob = e_widget_radio_add(evas, _("Left"), E_GADCON_ORIENT_LEFT, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Right"), E_GADCON_ORIENT_RIGHT, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Top"), E_GADCON_ORIENT_TOP, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Bottom"), E_GADCON_ORIENT_BOTTOM, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Top Left"), E_GADCON_ORIENT_CORNER_TL, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Top Right"), E_GADCON_ORIENT_CORNER_TR, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Bottom Left"), E_GADCON_ORIENT_CORNER_BL, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Bottom Right"), E_GADCON_ORIENT_CORNER_BR, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Left Top"), E_GADCON_ORIENT_CORNER_LT, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Right Top"), E_GADCON_ORIENT_CORNER_RT, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Left Bottom"), E_GADCON_ORIENT_CORNER_LB, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Right Bottom"), E_GADCON_ORIENT_CORNER_RB, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
e_widget_list_object_append(o, o2, 1, 1, 0.5);
|
||||
|
||||
o2 = e_widget_list_add(evas, 0, 0);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Styles"), 0);
|
||||
|
||||
oi = e_widget_ilist_add(evas, 128, 20, &(cfdata->style));
|
||||
|
@ -246,7 +246,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
sel = n;
|
||||
}
|
||||
e_widget_min_size_get(oi, &wmw, &wmh);
|
||||
e_widget_min_size_set(oi, wmw, 250);
|
||||
e_widget_min_size_set(oi, wmw, 150);
|
||||
|
||||
e_widget_ilist_go(oi);
|
||||
e_widget_ilist_selected_set(oi, sel);
|
||||
|
|
|
@ -14,6 +14,7 @@ struct _E_Widget_Data
|
|||
{
|
||||
E_Radio_Group *group;
|
||||
Evas_Object *o_radio;
|
||||
Evas_Object *o_icon;
|
||||
int valnum;
|
||||
};
|
||||
|
||||
|
@ -79,6 +80,62 @@ e_widget_radio_add(Evas *evas, char *label, int valnum, E_Radio_Group *group)
|
|||
|
||||
return obj;
|
||||
}
|
||||
|
||||
EAPI Evas_Object *
|
||||
e_widget_radio_icon_add(Evas *evas, char *label, char *icon, int icon_w, int icon_h, int valnum, E_Radio_Group *group)
|
||||
{
|
||||
Evas_Object *obj, *o, *o2;
|
||||
E_Widget_Data *wd;
|
||||
Evas_Coord mw, mh;
|
||||
|
||||
obj = e_widget_add(evas);
|
||||
|
||||
e_widget_del_hook_set(obj, _e_wid_del_hook);
|
||||
e_widget_focus_hook_set(obj, _e_wid_focus_hook);
|
||||
e_widget_activate_hook_set(obj, _e_wid_activate_hook);
|
||||
e_widget_disable_hook_set(obj, _e_wid_disable_hook);
|
||||
wd = calloc(1, sizeof(E_Widget_Data));
|
||||
wd->group = group;
|
||||
wd->valnum = valnum;
|
||||
e_widget_data_set(obj, wd);
|
||||
|
||||
o = edje_object_add(evas);
|
||||
wd->o_radio = o;
|
||||
e_theme_edje_object_set(o, "base/theme/widgets",
|
||||
"widgets/radio_icon");
|
||||
edje_object_signal_callback_add(o, "toggled", "*", _e_wid_signal_cb1, obj);
|
||||
edje_object_part_text_set(o, "label", label);
|
||||
evas_object_show(o);
|
||||
|
||||
if (icon)
|
||||
{
|
||||
o2 = edje_object_add(evas);
|
||||
wd->o_icon = o2;
|
||||
e_util_edje_icon_set(o2, icon);
|
||||
edje_extern_object_min_size_set(o2, icon_w, icon_h);
|
||||
edje_object_part_swallow(wd->o_radio, "icon_swallow", o2);
|
||||
evas_object_show(o2);
|
||||
e_widget_sub_object_add(obj, o2);
|
||||
}
|
||||
|
||||
edje_object_size_min_calc(o, &mw, &mh);
|
||||
e_widget_min_size_set(obj, mw, mh);
|
||||
if ((wd->group) && (wd->group->valptr))
|
||||
{
|
||||
if (*(wd->group->valptr) == valnum) edje_object_signal_emit(o, "toggle_on", "");
|
||||
}
|
||||
if (wd->group)
|
||||
{
|
||||
wd->group->radios = evas_list_append(wd->group->radios, obj);
|
||||
}
|
||||
|
||||
e_widget_sub_object_add(obj, o);
|
||||
evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _e_wid_focus_steal, obj);
|
||||
e_widget_resize_object_set(obj, o);
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
EAPI void
|
||||
e_widget_radio_toggle_set(Evas_Object *obj, int toggle)
|
||||
{
|
||||
|
|
|
@ -10,6 +10,7 @@ typedef struct _E_Radio_Group E_Radio_Group;
|
|||
|
||||
EAPI E_Radio_Group *e_widget_radio_group_new(int *val);
|
||||
EAPI Evas_Object *e_widget_radio_add(Evas *evas, char *label, int valnum, E_Radio_Group *group);
|
||||
EAPI Evas_Object *e_widget_radio_icon_add(Evas *evas, char *label, char *icon, int icon_w, int icon_h, int valnum, E_Radio_Group *group);
|
||||
EAPI void e_widget_radio_toggle_set(Evas_Object *obj, int toggle);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue