ou can choose shelf styles now - finally. added 2 more styles (gold and
invisible). themes can provide as many styles as u like. SVN revision: 22391
This commit is contained in:
parent
3295ab33b7
commit
0279810e42
|
@ -1,6 +1,8 @@
|
|||
images {
|
||||
image: "e17_shelf_bg_h.png" COMP;
|
||||
image: "e17_shelf_bg_v.png" COMP;
|
||||
image: "e17_shelf_bg2_h.png" COMP;
|
||||
image: "e17_shelf_bg2_v.png" COMP;
|
||||
image: "e17_ibar_bg_h.png" COMP;
|
||||
image: "e17_ibar_over_h.png" COMP;
|
||||
}
|
||||
|
@ -491,3 +493,616 @@ group {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
group {
|
||||
name: "shelf/gold/base";
|
||||
data {
|
||||
// this tells e the border is shaped
|
||||
item: "shaped" "1";
|
||||
}
|
||||
parts {
|
||||
part {
|
||||
name: "base";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_h.png";
|
||||
border: 19 19 9 9;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 -6;
|
||||
}
|
||||
size {
|
||||
offset: 0 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "top_left" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
fill {
|
||||
origin {
|
||||
offset: -16 -6;
|
||||
}
|
||||
size {
|
||||
offset: 16 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "top_right" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 -6;
|
||||
}
|
||||
size {
|
||||
offset: 16 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 0;
|
||||
}
|
||||
size {
|
||||
offset: 0 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom_left" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
fill {
|
||||
origin {
|
||||
offset: -16 0;
|
||||
}
|
||||
size {
|
||||
offset: 16 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom_right" 0.0;
|
||||
inherit: "default" 0.0;
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 0;
|
||||
}
|
||||
size {
|
||||
offset: 16 6;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: -6 0;
|
||||
}
|
||||
size {
|
||||
offset: 6 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left_top" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: -6 -16;
|
||||
}
|
||||
size {
|
||||
offset: 6 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left_bottom" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: -6 0;
|
||||
}
|
||||
size {
|
||||
offset: 6 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 0;
|
||||
}
|
||||
size {
|
||||
offset: 6 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right_top" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 -16;
|
||||
}
|
||||
size {
|
||||
offset: 6 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right_bottom" 0.0;
|
||||
image {
|
||||
normal: "e17_shelf_bg2_v.png";
|
||||
border: 9 9 19 19;
|
||||
}
|
||||
fill {
|
||||
origin {
|
||||
offset: 0 0;
|
||||
}
|
||||
size {
|
||||
offset: 6 16;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "items";
|
||||
mouse_events: 0;
|
||||
type: SWALLOW;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 18 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -19 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "top_left" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -19 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "top_right" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 18 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 18 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -19 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom_left" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -19 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "bottom_right" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 18 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 18;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -19;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left_top" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -19;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "left_bottom" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 18;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -3;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 18;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -19;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right_top" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -19;
|
||||
}
|
||||
}
|
||||
description {
|
||||
state: "right_bottom" 0.0;
|
||||
rel1 {
|
||||
relative: 0.0 0.0;
|
||||
offset: 2 18;
|
||||
}
|
||||
rel2 {
|
||||
relative: 1.0 1.0;
|
||||
offset: -3 -3;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
programs {
|
||||
program {
|
||||
name: "orient1";
|
||||
signal: "set_orientation";
|
||||
source: "top";
|
||||
action: STATE_SET "default" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient2";
|
||||
signal: "set_orientation";
|
||||
source: "top_left";
|
||||
action: STATE_SET "top_left" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient3";
|
||||
signal: "set_orientation";
|
||||
source: "top_right";
|
||||
action: STATE_SET "top_right" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient4";
|
||||
signal: "set_orientation";
|
||||
source: "bottom";
|
||||
action: STATE_SET "bottom" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient5";
|
||||
signal: "set_orientation";
|
||||
source: "bottom_left";
|
||||
action: STATE_SET "bottom_left" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient6";
|
||||
signal: "set_orientation";
|
||||
source: "bottom_right";
|
||||
action: STATE_SET "bottom_right" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient7";
|
||||
signal: "set_orientation";
|
||||
source: "left";
|
||||
action: STATE_SET "left" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient8";
|
||||
signal: "set_orientation";
|
||||
source: "left_top";
|
||||
action: STATE_SET "left_top" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient9";
|
||||
signal: "set_orientation";
|
||||
source: "left_bottom";
|
||||
action: STATE_SET "left_bottom" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient10";
|
||||
signal: "set_orientation";
|
||||
source: "right";
|
||||
action: STATE_SET "right" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient11";
|
||||
signal: "set_orientation";
|
||||
source: "right_top";
|
||||
action: STATE_SET "right_top" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
program {
|
||||
name: "orient12";
|
||||
signal: "set_orientation";
|
||||
source: "right_bottom";
|
||||
action: STATE_SET "right_bottom" 0.0;
|
||||
target: "base";
|
||||
target: "items";
|
||||
}
|
||||
}
|
||||
}
|
||||
group {
|
||||
name: "shelf/gold/inset";
|
||||
parts {
|
||||
part {
|
||||
name: "background";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
to: "overlay";
|
||||
}
|
||||
rel2 {
|
||||
to: "overlay";
|
||||
}
|
||||
image {
|
||||
normal: "e17_ibar_bg_h.png";
|
||||
border: 6 6 6 6;
|
||||
}
|
||||
fill {
|
||||
smooth: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "items_clip";
|
||||
type: RECT;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
to: "background";
|
||||
offset: 4 4;
|
||||
}
|
||||
rel2 {
|
||||
to: "background";
|
||||
offset: -5 -5;
|
||||
}
|
||||
color: 255 255 255 255;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "items";
|
||||
type: SWALLOW;
|
||||
mouse_events: 0;
|
||||
clip_to: "items_clip";
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
offset: 4 4;
|
||||
}
|
||||
rel2 {
|
||||
offset: -5 -5;
|
||||
}
|
||||
color: 0 0 0 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "overlay";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
image {
|
||||
normal: "e17_ibar_over_h.png";
|
||||
border: 13 13 13 13;
|
||||
middle: 0;
|
||||
}
|
||||
fill {
|
||||
smooth: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
group {
|
||||
name: "shelf/invisible/base";
|
||||
data {
|
||||
// this tells e the border is shaped
|
||||
item: "shaped" "1";
|
||||
}
|
||||
parts {
|
||||
part {
|
||||
name: "items";
|
||||
mouse_events: 0;
|
||||
type: SWALLOW;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
group {
|
||||
name: "shelf/invisible/inset";
|
||||
parts {
|
||||
part {
|
||||
name: "background";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
to: "overlay";
|
||||
}
|
||||
rel2 {
|
||||
to: "overlay";
|
||||
}
|
||||
image {
|
||||
normal: "e17_ibar_bg_h.png";
|
||||
border: 6 6 6 6;
|
||||
}
|
||||
fill {
|
||||
smooth: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "items_clip";
|
||||
type: RECT;
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
to: "background";
|
||||
offset: 4 4;
|
||||
}
|
||||
rel2 {
|
||||
to: "background";
|
||||
offset: -5 -5;
|
||||
}
|
||||
color: 255 255 255 255;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "items";
|
||||
type: SWALLOW;
|
||||
mouse_events: 0;
|
||||
clip_to: "items_clip";
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
rel1 {
|
||||
offset: 4 4;
|
||||
}
|
||||
rel2 {
|
||||
offset: -5 -5;
|
||||
}
|
||||
color: 0 0 0 0;
|
||||
}
|
||||
}
|
||||
part {
|
||||
name: "overlay";
|
||||
mouse_events: 0;
|
||||
description {
|
||||
state: "default" 0.0;
|
||||
image {
|
||||
normal: "e17_ibar_over_h.png";
|
||||
border: 13 13 13 13;
|
||||
middle: 0;
|
||||
}
|
||||
fill {
|
||||
smooth: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -421,4 +421,6 @@ e17_border3b.png \
|
|||
e17_border5b.png \
|
||||
e17_border7b.png \
|
||||
e17_shelf_bg_h.png \
|
||||
e17_shelf_bg_v.png
|
||||
e17_shelf_bg_v.png \
|
||||
e17_shelf_bg2_h.png \
|
||||
e17_shelf_bg2_v.png
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 7.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 7.9 KiB |
|
@ -484,9 +484,9 @@ e_gadcon_client_new(E_Gadcon *gc, char *name, char *id, char *style, Evas_Object
|
|||
{
|
||||
gcc->o_frame = gc->frame_request.func(gc->frame_request.data, gcc,
|
||||
style);
|
||||
gcc->style = evas_stringshare_add(style);
|
||||
if (gcc->o_frame)
|
||||
{
|
||||
gcc->inset = 1;
|
||||
edje_object_size_min_calc(gcc->o_frame,
|
||||
&(gcc->pad.w), &(gcc->pad.h));
|
||||
gcc->o_box = e_box_add(gcc->gadcon->evas);
|
||||
|
@ -811,15 +811,30 @@ e_gadcon_client_resizable_set(E_Gadcon_Client *gcc, int resizable)
|
|||
}
|
||||
|
||||
static void
|
||||
_e_gadcon_client_cb_menu_inset(void *data, E_Menu *m, E_Menu_Item *mi)
|
||||
_e_gadcon_client_cb_menu_style_plain(void *data, E_Menu *m, E_Menu_Item *mi)
|
||||
{
|
||||
E_Gadcon_Client *gcc;
|
||||
E_Gadcon *gc;
|
||||
|
||||
gcc = data;
|
||||
gc = gcc->gadcon;
|
||||
if (gcc->inset) gcc->inset = 0;
|
||||
else gcc->inset = 1;
|
||||
if (gcc->style) evas_stringshare_del(gcc->style);
|
||||
gcc->style = NULL;
|
||||
_e_gadcon_client_save(gcc);
|
||||
e_gadcon_unpopulate(gc);
|
||||
e_gadcon_populate(gc);
|
||||
}
|
||||
|
||||
static void
|
||||
_e_gadcon_client_cb_menu_style_inset(void *data, E_Menu *m, E_Menu_Item *mi)
|
||||
{
|
||||
E_Gadcon_Client *gcc;
|
||||
E_Gadcon *gc;
|
||||
|
||||
gcc = data;
|
||||
gc = gcc->gadcon;
|
||||
if (gcc->style) evas_stringshare_del(gcc->style);
|
||||
gcc->style = evas_stringshare_add("inset");
|
||||
_e_gadcon_client_save(gcc);
|
||||
e_gadcon_unpopulate(gc);
|
||||
e_gadcon_populate(gc);
|
||||
|
@ -870,17 +885,38 @@ _e_gadcon_client_cb_menu_edit(void *data, E_Menu *m, E_Menu_Item *mi)
|
|||
EAPI void
|
||||
e_gadcon_client_util_menu_items_append(E_Gadcon_Client *gcc, E_Menu *menu, int flags)
|
||||
{
|
||||
E_Menu *mn;
|
||||
E_Menu_Item *mi;
|
||||
|
||||
E_OBJECT_CHECK(gcc);
|
||||
E_OBJECT_TYPE_CHECK(gcc, E_GADCON_CLIENT_TYPE);
|
||||
|
||||
mn = e_menu_new();
|
||||
|
||||
mi = e_menu_item_new(mn);
|
||||
e_menu_item_label_set(mi, _("Plain"));
|
||||
e_util_menu_item_edje_icon_set(mi, "enlightenment/plain");
|
||||
e_menu_item_radio_group_set(mi, 1);
|
||||
e_menu_item_radio_set(mi, 1);
|
||||
if (!gcc->style) e_menu_item_toggle_set(mi, 1);
|
||||
e_menu_item_callback_set(mi, _e_gadcon_client_cb_menu_style_plain, gcc);
|
||||
|
||||
mi = e_menu_item_new(mn);
|
||||
e_menu_item_label_set(mi, _("Inset"));
|
||||
e_util_menu_item_edje_icon_set(mi, "enlightenment/plain");
|
||||
e_menu_item_radio_group_set(mi, 1);
|
||||
e_menu_item_radio_set(mi, 1);
|
||||
if ((gcc->style) && (!strcmp(gcc->style, "inset")))
|
||||
e_menu_item_toggle_set(mi, 1);
|
||||
e_menu_item_callback_set(mi, _e_gadcon_client_cb_menu_style_inset, gcc);
|
||||
|
||||
/***/
|
||||
|
||||
mi = e_menu_item_new(menu);
|
||||
e_menu_item_label_set(mi, _("Inset appearance"));
|
||||
e_util_menu_item_edje_icon_set(mi, "enlightenment/inset");
|
||||
e_menu_item_check_set(mi, 1);
|
||||
if (gcc->o_frame) e_menu_item_toggle_set(mi, 1);
|
||||
e_menu_item_callback_set(mi, _e_gadcon_client_cb_menu_inset, gcc);
|
||||
e_menu_item_label_set(mi, _("Appearance"));
|
||||
e_util_menu_item_edje_icon_set(mi, "enlightenment/appearance");
|
||||
e_menu_item_submenu_set(mi, mn);
|
||||
e_object_del(E_OBJECT(mn));
|
||||
|
||||
mi = e_menu_item_new(menu);
|
||||
e_menu_item_label_set(mi, _("Automatically scroll contents"));
|
||||
|
@ -989,6 +1025,7 @@ _e_gadcon_client_free(E_Gadcon_Client *gcc)
|
|||
evas_stringshare_del(gcc->id);
|
||||
if (gcc->scroll_timer) ecore_timer_del(gcc->scroll_timer);
|
||||
if (gcc->scroll_animator) ecore_animator_del(gcc->scroll_animator);
|
||||
if (gcc->style) evas_stringshare_del(gcc->style);
|
||||
free(gcc);
|
||||
}
|
||||
|
||||
|
@ -1136,8 +1173,8 @@ _e_gadcon_client_save(E_Gadcon_Client *gcc)
|
|||
cf_gcc->autoscroll = gcc->autoscroll;
|
||||
if (cf_gcc->style) evas_stringshare_del(cf_gcc->style);
|
||||
cf_gcc->style = NULL;
|
||||
if (gcc->inset)
|
||||
cf_gcc->style = evas_stringshare_add("inset");
|
||||
if (gcc->style)
|
||||
cf_gcc->style = evas_stringshare_add(gcc->style);
|
||||
cf_gcc->resizable = gcc->resizable;
|
||||
ok++;
|
||||
break;
|
||||
|
@ -1165,8 +1202,8 @@ _e_gadcon_client_save(E_Gadcon_Client *gcc)
|
|||
cf_gcc->autoscroll = gcc->autoscroll;
|
||||
if (cf_gcc->style) evas_stringshare_del(cf_gcc->style);
|
||||
cf_gcc->style = NULL;
|
||||
if (gcc->inset)
|
||||
cf_gcc->style = evas_stringshare_add("inset");
|
||||
if (gcc->style)
|
||||
cf_gcc->style = evas_stringshare_add(gcc->style);
|
||||
cf_gcc->resizable = gcc->resizable;
|
||||
cf_gc->clients = evas_list_append(cf_gc->clients, cf_gcc);
|
||||
ok++;
|
||||
|
|
|
@ -105,14 +105,14 @@ struct _E_Gadcon_Client
|
|||
struct {
|
||||
Evas_Coord w, h;
|
||||
} pad, min, aspect;
|
||||
unsigned char inset : 1;
|
||||
unsigned char autoscroll : 1;
|
||||
unsigned char resizable : 1;
|
||||
Ecore_Timer *scroll_timer;
|
||||
Ecore_Animator *scroll_animator;
|
||||
double scroll_pos;
|
||||
double scroll_wanted;
|
||||
E_Menu *menu;
|
||||
char *style;
|
||||
unsigned char autoscroll : 1;
|
||||
unsigned char resizable : 1;
|
||||
|
||||
unsigned char moving : 1;
|
||||
unsigned char resizing : 1;
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
#include "e.h"
|
||||
|
||||
/* PROTOTYPES - same all the time */
|
||||
//typedef struct _CFBorder CFBorder;
|
||||
typedef struct _CFStyle CFStyle;
|
||||
|
||||
static void *_create_data(E_Config_Dialog *cfd);
|
||||
static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||
|
@ -22,13 +22,14 @@ struct _E_Config_Dialog_Data
|
|||
int fit_size;
|
||||
int size;
|
||||
int layering;
|
||||
Evas_List *cfslist;
|
||||
};
|
||||
|
||||
//struct _CFBorder
|
||||
//{
|
||||
// E_Config_Dialog_Data *cfdata;
|
||||
// const char *bordername;
|
||||
//};
|
||||
struct _CFStyle
|
||||
{
|
||||
E_Config_Dialog_Data *cfdata;
|
||||
const char *style;
|
||||
};
|
||||
|
||||
/* a nice easy setup function that does the dirty work */
|
||||
EAPI void
|
||||
|
@ -101,6 +102,11 @@ _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
|||
/* Free the cfdata */
|
||||
cfdata->es->config_dialog = NULL;
|
||||
if (cfdata->style) free(cfdata->style);
|
||||
while (cfdata->cfslist)
|
||||
{
|
||||
E_FREE(cfdata->cfslist->data);
|
||||
cfdata->cfslist = evas_list_remove_list(cfdata->cfslist, cfdata->cfslist);
|
||||
}
|
||||
free(cfdata);
|
||||
}
|
||||
|
||||
|
@ -138,7 +144,7 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
|
|||
zone = cfdata->es->zone;
|
||||
id = cfdata->es->id;
|
||||
cfdata->es->config_dialog = NULL;
|
||||
e_object_del(cfdata->es);
|
||||
e_object_del(E_OBJECT(cfdata->es));
|
||||
cfdata->es = e_shelf_zone_new(zone, cfdata->escfg->name,
|
||||
cfdata->escfg->style,
|
||||
cfdata->escfg->popup,
|
||||
|
@ -160,12 +166,17 @@ static Evas_Object *
|
|||
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
|
||||
{
|
||||
/* generate the core widget layout for a basic dialog */
|
||||
Evas_Object *o, *of, *ob;
|
||||
Evas_Object *o, *o2, *of, *ob, *oi, *oj;
|
||||
E_Radio_Group *rg;
|
||||
Evas_Coord wmw, wmh;
|
||||
Evas_List *styles, *l;
|
||||
int sel, n;
|
||||
|
||||
CFStyle *cfs;
|
||||
|
||||
/* FIXME: this is just raw config now - it needs UI improvments */
|
||||
o = e_widget_list_add(evas, 0, 0);
|
||||
o = e_widget_list_add(evas, 1, 1);
|
||||
|
||||
o2 = e_widget_list_add(evas, 0, 0);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Stacking"), 0);
|
||||
rg = e_widget_radio_group_new(&(cfdata->layering));
|
||||
|
@ -175,7 +186,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_radio_add(evas, _("Above Everything"), 2, rg);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
of = e_widget_framelist_add(evas, _("Size"), 0);
|
||||
ob = e_widget_check_add(evas, _("Shrink length fit contents"), &(cfdata->fit_along));
|
||||
|
@ -186,7 +197,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
e_widget_framelist_object_append(of, ob);
|
||||
ob = e_widget_slider_add(evas, 1, 0, _("%3.0f pixels"), 4, 200, 4, 0, NULL, &(cfdata->size), 200);
|
||||
e_widget_framelist_object_append(of, ob);
|
||||
e_widget_list_object_append(o, of, 1, 1, 0.5);
|
||||
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));
|
||||
|
@ -214,7 +225,41 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
|
|||
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(o, of, 1, 1, 0.5);
|
||||
e_widget_list_object_append(o2, of, 1, 1, 0.5);
|
||||
|
||||
e_widget_list_object_append(o, o2, 1, 1, 0.5);
|
||||
|
||||
oi = e_widget_ilist_add(evas, 128, 20, &(cfdata->style));
|
||||
|
||||
sel = 0;
|
||||
styles = e_theme_shelf_list();
|
||||
|
||||
for (n = 0, l = styles; l; l = l->next, n++)
|
||||
{
|
||||
char buf[4096];
|
||||
|
||||
cfs = E_NEW(CFStyle, 1);
|
||||
cfs->cfdata = cfdata;
|
||||
cfs->style = "default";
|
||||
cfdata->cfslist = evas_list_append(cfdata->cfslist, cfs);
|
||||
ob = e_livethumb_add(evas);
|
||||
e_livethumb_vsize_set(ob, 256, 40);
|
||||
oj = edje_object_add(e_livethumb_evas_get(ob));
|
||||
snprintf(buf, sizeof(buf), "shelf/%s/base",
|
||||
(char *)l->data);
|
||||
e_theme_edje_object_set(oj, "base/theme/shelf", buf);
|
||||
e_livethumb_thumb_set(ob, oj);
|
||||
e_widget_ilist_append(oi, ob, (char *)l->data, NULL, NULL, l->data);
|
||||
if (!strcmp(cfdata->es->style, (char *)l->data))
|
||||
sel = n;
|
||||
}
|
||||
e_widget_min_size_get(oi, &wmw, &wmh);
|
||||
e_widget_min_size_set(oi, wmw, 250);
|
||||
|
||||
e_widget_ilist_go(oi);
|
||||
e_widget_ilist_selected_set(oi, sel);
|
||||
|
||||
e_widget_list_object_append(o, oi, 1, 1, 0.5);
|
||||
|
||||
return o;
|
||||
}
|
||||
|
|
|
@ -25,6 +25,7 @@ static Evas_Hash *group_cache = NULL;
|
|||
static Evas_List *categories = NULL;
|
||||
static Evas_List *transitions = NULL;
|
||||
static Evas_List *borders = NULL;
|
||||
static Evas_List *shelfs = NULL;
|
||||
|
||||
/* externally accessible functions */
|
||||
|
||||
|
@ -51,6 +52,7 @@ e_theme_init(void)
|
|||
/* Find transitions */
|
||||
transitions = _e_theme_collection_items_find("base/theme/transitions", "transitions");
|
||||
borders = _e_theme_collection_items_find("base/theme/borders", "widgets/border");
|
||||
shelfs = _e_theme_collection_items_find("base/theme/shelf", "shelf");
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
@ -118,6 +120,11 @@ e_theme_shutdown(void)
|
|||
evas_stringshare_del(borders->data);
|
||||
borders = evas_list_remove_list(borders, borders);
|
||||
}
|
||||
while (shelfs)
|
||||
{
|
||||
evas_stringshare_del(shelfs->data);
|
||||
shelfs = evas_list_remove_list(shelfs, shelfs);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -423,6 +430,25 @@ e_theme_border_list(void)
|
|||
return borders;
|
||||
}
|
||||
|
||||
EAPI int
|
||||
e_theme_shelf_find(const char *shelf)
|
||||
{
|
||||
Evas_List *l;
|
||||
|
||||
for (l = shelfs; l; l = l->next)
|
||||
{
|
||||
if (!strcmp(shelf, l->data))
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
EAPI Evas_List *
|
||||
e_theme_shelf_list(void)
|
||||
{
|
||||
return shelfs;
|
||||
}
|
||||
|
||||
/* local subsystem functions */
|
||||
|
||||
static Evas_Bool
|
||||
|
|
|
@ -24,6 +24,8 @@ EAPI int e_theme_transition_find(const char *transition);
|
|||
EAPI Evas_List *e_theme_transition_list(void);
|
||||
EAPI int e_theme_border_find(const char *border);
|
||||
EAPI Evas_List *e_theme_border_list(void);
|
||||
EAPI int e_theme_shelf_find(const char *shelf);
|
||||
EAPI Evas_List *e_theme_shelf_list(void);
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue