syscon module added - provides a system entry in main menu (build in one gone

now). syscon has a poup with buttons (configurale) that offer all the
logout/reboot etc. stuff. also able to extend with more items or inline them
into the theme too.

not complete. need config for being able to extend the syscon popup (and use
it) and no gui config for configuring what should appear and how it should
look. possibly theme should have custon elements for the ones curently using
button + icon look. also no keyboard control.



SVN revision: 37797
devs/princeamd/enlightenment-0.17-elive
Carsten Haitzler 15 years ago
parent b9d7bcd377
commit 5a29e1f6b5
  1. 7
      config/default/e.src
  2. 56
      config/illume/e.src
  3. 71
      config/minimalist/e.src
  4. 71
      config/netbook/e.src
  5. 71
      config/scaleable/e.src
  6. 71
      config/standard/e.src
  7. 2
      configure.ac
  8. 820
      data/themes/default.edc
  9. BIN
      data/themes/images/icon_desklock_menu.png
  10. BIN
      data/themes/images/icon_halt.png
  11. BIN
      data/themes/images/icon_hibernate.png
  12. BIN
      data/themes/images/icon_logout.png
  13. BIN
      data/themes/images/icon_reboot.png
  14. BIN
      data/themes/images/icon_reset.png
  15. BIN
      data/themes/images/icon_suspend.png
  16. 1
      src/bin/e_actions.c
  17. 47
      src/bin/e_config.c
  18. 43
      src/bin/e_config.h
  19. 20
      src/bin/e_flowlayout.c
  20. 184
      src/bin/e_int_menus.c
  21. 1
      src/bin/e_int_menus.h
  22. 2
      src/bin/e_sys.c
  23. 3
      src/modules/Makefile.am
  24. 6
      src/modules/illume/e_mod_win.c
  25. 7
      src/modules/syscon/.cvsignore
  26. 31
      src/modules/syscon/Makefile.am
  27. BIN
      src/modules/syscon/e-module-syscon.edj
  28. 138
      src/modules/syscon/e_mod_main.c
  29. 19
      src/modules/syscon/e_mod_main.h
  30. 406
      src/modules/syscon/e_syscon.c
  31. 17
      src/modules/syscon/e_syscon.h
  32. 6
      src/modules/syscon/module.desktop.in
  33. 4
      x-ui.sh

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 0;
value "init_default_theme" string: "default.edj";
value "desktop_default_name" string: "Desktop %i, %i";
@ -522,4 +522,9 @@ group "E_Config" struct {
value "idle_cursor" uchar: 1;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 0;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 0.0;
value "syscon.do_input" uchar: 0;
}

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 1;
value "init_default_theme" string: "default.edj";
value "desktop_default_name" string: "Desktop %i, %i";
@ -240,11 +240,12 @@ group "E_Config" struct {
value "priority" int: 0;
}
}
group "font_defaults" list {
group "E_Font_Default" struct {
value "text_class" string: "default";
value "font" string: "Vera";
value "size" int: 10;
group "modules" list {
group "E_Config_Module" struct {
value "name" string: "syscon";
value "enabled" uchar: 1;
value "delayed" uchar: 1;
value "priority" int: 0;
}
}
group "themes" list {
@ -253,23 +254,13 @@ group "E_Config" struct {
value "file" string: "illume.edj";
}
}
group "key_bindings" list {
group "E_Config_Binding_Key" struct {
value "context" int: 9;
value "modifiers" int: 0;
value "key" string: "Keycode-177";
value "action" string: "simple_lock";
value "params" string: "";
value "any_mod" uchar: 1;
}
}
group "key_bindings" list {
group "E_Config_Binding_Key" struct {
value "context" int: 9;
value "modifiers" int: 0;
value "key" string: "Execute";
value "action" string: "delayed_action";
value "params" string: "[0.0 exec dbus-send --system --dest=org.openmoko.Power / org.openmoko.Power.Core.RequestResourceState string:cpu string:illume-cmdline string:off] [2.0 halt_now]";
value "params" string: "[0.0 syscon] [2.0 halt_now]";
value "any_mod" uchar: 1;
}
}
@ -788,4 +779,35 @@ group "E_Config" struct {
value "idle_cursor" uchar: 0;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 1;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 5.0;
value "syscon.do_input" uchar: 0;
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "suspend";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/suspend";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "desk_lock";
value "button" string: "button";
value "icon" string: "enlightenment/desklock_menu";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "halt";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/halt";
value "is_main" int: 0;
}
}
}

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 1;
value "init_default_theme" string: "default.edj";
value "desktop_default_background" string: "Light_Gradient.edj";
@ -370,11 +370,12 @@ group "E_Config" struct {
value "priority" int: 0;
}
}
group "font_defaults" list {
group "E_Font_Default" struct {
value "text_class" string: "default";
value "font" string: "Vera";
value "size" int: 10;
group "modules" list {
group "E_Config_Module" struct {
value "name" string: "syscon";
value "enabled" uchar: 1;
value "delayed" uchar: 1;
value "priority" int: 0;
}
}
group "themes" list {
@ -1935,4 +1936,62 @@ group "E_Config" struct {
value "idle_cursor" uchar: 1;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 0;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 5.0;
value "syscon.do_input" uchar: 1;
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "halt";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/halt";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "suspend";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/suspend";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "desk_lock";
value "button" string: "button";
value "icon" string: "enlightenment/desklock_menu";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "reboot";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/reboot";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "hibernate";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/hibernate";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "logout";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/logout";
value "is_main" int: 0;
}
}
}

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 1;
value "init_default_theme" string: "default.edj";
value "desktop_default_background" string: "Dark_Gradient.edj";
@ -434,11 +434,12 @@ group "E_Config" struct {
value "priority" int: 0;
}
}
group "font_defaults" list {
group "E_Font_Default" struct {
value "text_class" string: "default";
value "font" string: "Vera";
value "size" int: 10;
group "modules" list {
group "E_Config_Module" struct {
value "name" string: "syscon";
value "enabled" uchar: 1;
value "delayed" uchar: 1;
value "priority" int: 0;
}
}
group "themes" list {
@ -1999,4 +2000,62 @@ group "E_Config" struct {
value "idle_cursor" uchar: 1;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 0;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 5.0;
value "syscon.do_input" uchar: 1;
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "halt";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/halt";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "suspend";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/suspend";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "desk_lock";
value "button" string: "button";
value "icon" string: "enlightenment/desklock_menu";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "reboot";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/reboot";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "hibernate";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/hibernate";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "logout";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/logout";
value "is_main" int: 0;
}
}
}

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 1;
value "init_default_theme" string: "default.edj";
value "desktop_default_name" string: "Desktop %i, %i";
@ -457,11 +457,12 @@ group "E_Config" struct {
value "priority" int: -100;
}
}
group "font_defaults" list {
group "E_Font_Default" struct {
value "text_class" string: "default";
value "font" string: "Vera";
value "size" int: 10;
group "modules" list {
group "E_Config_Module" struct {
value "name" string: "syscon";
value "enabled" uchar: 1;
value "delayed" uchar: 1;
value "priority" int: 0;
}
}
group "themes" list {
@ -2022,4 +2023,62 @@ group "E_Config" struct {
value "idle_cursor" uchar: 1;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 0;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 5.0;
value "syscon.do_input" uchar: 1;
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "halt";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/halt";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "suspend";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/suspend";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "desk_lock";
value "button" string: "button";
value "icon" string: "enlightenment/desklock_menu";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "reboot";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/reboot";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "hibernate";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/hibernate";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "logout";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/logout";
value "is_main" int: 0;
}
}
}

@ -1,5 +1,5 @@
group "E_Config" struct {
value "config_version" int: 65834;
value "config_version" int: 65835;
value "show_splash" int: 1;
value "init_default_theme" string: "default.edj";
value "desktop_default_name" string: "Desktop %i, %i";
@ -457,11 +457,12 @@ group "E_Config" struct {
value "priority" int: -100;
}
}
group "font_defaults" list {
group "E_Font_Default" struct {
value "text_class" string: "default";
value "font" string: "Vera";
value "size" int: 10;
group "modules" list {
group "E_Config_Module" struct {
value "name" string: "syscon";
value "enabled" uchar: 1;
value "delayed" uchar: 1;
value "priority" int: 0;
}
}
group "themes" list {
@ -2022,4 +2023,62 @@ group "E_Config" struct {
value "idle_cursor" uchar: 1;
value "default_system_menu" string: "";
value "cfgdlg_normal_wins" uchar: 0;
value "syscon.main.icon_size" int: 64;
value "syscon.secondary.icon_size" int: 48;
value "syscon.extra.icon_size" int: 48;
value "syscon.timeout" double: 5.0;
value "syscon.do_input" uchar: 1;
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "halt";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/halt";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "suspend";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/suspend";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "desk_lock";
value "button" string: "button";
value "icon" string: "enlightenment/desklock_menu";
value "is_main" int: 1;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "reboot";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/reboot";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "hibernate";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/hibernate";
value "is_main" int: 0;
}
}
group "syscon.actions" list {
group "E_Config_Syscon_Action" struct {
value "action" string: "logout";
value "params" string: "now";
value "button" string: "button";
value "icon" string: "enlightenment/logout";
value "is_main" int: 0;
}
}
}

@ -431,6 +431,8 @@ src/modules/illume/Makefile
src/modules/illume/module.desktop
src/modules/illume/keyboards/Makefile
src/modules/illume/dicts/Makefile
src/modules/syscon/Makefile
src/modules/syscon/module.desktop
src/preload/Makefile
data/Makefile
data/images/Makefile

@ -10035,6 +10035,12 @@ collections { /* begin the collection of edje groups that are in this file */
/*** MOD: EXEBUF ***/
group { name: "e/widgets/exebuf/main";
images {
image: "base_bg.png" COMP;
image: "inset_sunk.png" COMP;
image: "menu_sel_bg.png" COMP;
image: "menu_sel_fg.png" COMP;
}
parts {
part { name: "base";
mouse_events: 0;
@ -10238,165 +10244,765 @@ collections { /* begin the collection of edje groups that are in this file */
}
}
}
part { name: "fg";
part { name: "fg";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "bg";
rel2.to: "bg";
image {
normal: "menu_sel_fg.png";
border: 8 8 5 9;
}
}
}
}
programs {
program { name: "blink_off";
signal: "show";
source: "";
action: STATE_SET "faded" 0.0;
transition: SINUSOIDAL 0.5;
target: "cursor";
after: "blink_on";
}
program { name: "blink_on";
action: STATE_SET "default" 0.0;
transition: SINUSOIDAL 0.25;
target: "cursor";
after: "blink_off";
}
}
}
group { name: "e/widgets/exebuf/item";
parts {
part { name: "bg";
mouse_events: 0;
description { state: "default" 0.0;
visible: 0;
color: 255 255 255 0;
rel1.offset: -5 -3;
rel2.offset: 4 5;
image {
normal: "menu_sel_bg.png";
border: 8 8 5 9;
}
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
rel1.offset: -2 0;
rel2.offset: 1 2;
}
}
part { name: "e.text.title";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
scale: 1;
description {
state: "default" 0.0;
rel1 {
offset: 2 1;
relative: 1.0 0.0;
to_x: "e.swallow.icons";
}
rel2.offset: -3 -2;
color: 0 0 0 255;
color3: 0 0 0 0;
color_class: "menu_item";
text {
font: "Sans";
size: 10;
min: 1 1;
align: 0.0 0.5;
text_class: "menu_item";
}
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
color: 255 255 255 255;
color3: 0 0 0 64;
color_class: "menu_item";
}
}
part {
name: "e.swallow.icons";
type: SWALLOW;
description {
state: "default" 0.0;
max: 18 18;
aspect: 1.0 1.0;
align: 0.0 0.5;
aspect_preference: VERTICAL;
rel1 {
relative: 0.0 0.0;
offset: 3 1;
}
rel2 {
relative: 0.0 1.0;
offset: -3 -2;
}
}
}
part { name: "fg";
mouse_events: 0;
description { state: "default" 0.0;
visible: 0;
color: 255 255 255 0;
rel1.to: "bg";
rel2.to: "bg";
image {
normal: "menu_sel_fg.png";
border: 8 8 5 9;
}
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
}
}
part {
name: "e.event.exebuf.item";
type: RECT;
mouse_events: 1;
description {
state: "default" 0.0;
min: 14 14;
visible: 1;
color: 0 0 0 0;
rel1 {
relative: 1.0 0.0;
offset: 1 -1;
to_x: "e.swallow.icons";
}
rel2 {
relative: 1.0 1.0;
offset: -1 -1;
}
}
}
}
programs {
program { name: "sel";
signal: "e,state,selected";
source: "e";
action: STATE_SET "selected" 0.0;
transition: LINEAR 0.2;
target: "bg";
target: "fg";
target: "e.text.title";
}
program { name: "unsel";
signal: "e,state,unselected";
source: "e";
action: STATE_SET "default" 0.0;
transition: LINEAR 0.1;
target: "bg";
target: "fg";
target: "e.text.title";
}
}
}
/////////////////////////////////////////////////////////////////////////////
/*** MOD: SYSCON ***/
/*
group { name: "e/wizard/main";
images {
image: "vgrad_dark.png" COMP;
image: "grill_dark_tiny_pattern.png" COMP;
image: "bt_base1.png" COMP;
image: "bt_base2.png" COMP;
image: "bt_hilight.png" COMP;
image: "bt_shine.png" COMP;
image: "bt_glow.png" COMP;
image: "bt_dis_base.png" COMP;
image: "bt_dis_hilight.png" COMP;
}
parts {
part { name: "background_image";
description { state: "default" 0.0;
image.normal: "vgrad_dark.png";
fill {
smooth: 0;
size {
relative: 0 1.0;
offset: 36 0;
}
}
}
}
part { name: "grill";
description { state: "default" 0.0;
image.normal: "grill_dark_tiny_pattern.png";
fill {
size {
relative: 0 0;
offset: 144 144;
}
}
}
}
part { name: "e.text.title";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
scale: 1;
description {
state: "default" 0.0;
align: 0.5 0.0;
rel1 {
relative: 0.0 0.0;
offset: 0 8;
}
rel2 {
relative: 1.0 0.0;
offset: -1 8;
}
color: 255 255 255 255;
color3: 0 0 0 32;
text {
font: "Sans:style=Bold";
size: 20;
min: 1 1;
align: 0.5 0.5;
}
}
}
part { name: "e.swallow.content";
type: SWALLOW;
description { state: "default" 0.0;
rel1 {
to_y: "e.text.title";
relative: 0.5 1.0;
offset: 0 8;
}
rel2 {
to_y: "button_image";
relative: 0.5 0.0;
offset: 0 -9;
}
}
}
part { name: "button_image";
mouse_events: 1;
scale: 1;
description { state: "default" 0.0;
fixed: 1 1;
align: 0.5 1.0;
rel1.relative: 0.5 1.0;
rel1.offset: 0 -9;
rel2.relative: 0.5 1.0;
rel2.offset: 0 -9;
min: 64 32;
max: 64 32;
image {
normal: "bt_base2.png";
border: 7 7 7 7;
}
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
image.normal: "bt_base1.png";
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_base.png";
border: 4 4 4 4;
}
}
}
part { name: "e.text.label";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
scale: 1;
description { state: "default" 0.0;
rel1 {
to: "button_image";
relative: 0.0 0.0;
offset: 3 3;
}
rel2 {
relative: 1.0 1.0;
offset: -4 -4;
to: "button_image";
}
color: 224 224 224 255;
color3: 0 0 0 64;
color_class: "button_text";
text {
text: "Close";
font: "Sans";
size: 10;
min: 1 1;
align: 0.5 0.5;
text_class: "button";
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
color: 0 0 0 128;
color3: 0 0 0 0;
color_class: "button_text_disabled";
}
}
part { name: "over1";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
rel2.relative: 1.0 0.5;
image {
normal: "bt_hilight.png";
border: 7 7 7 0;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_hilight.png";
border: 4 4 4 0;
}
}
}
part { name: "over2";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
image {
normal: "bt_shine.png";
border: 7 7 7 7;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
visible: 0;
}
}
part { name: "over3";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
visible: 0;
color: 255 255 255 0;
image {
normal: "bt_glow.png";
border: 12 12 12 12;
}
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
}
}
part { name: "block";
mouse_events: 1;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
visible: 0;
color: 0 0 0 0;
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
visible: 1;
}
}
}
programs {
program { name: "button_click";
signal: "mouse,down,1";
source: "button_image";
action: STATE_SET "clicked" 0.0;
target: "button_image";
target: "over3";
}
program { name: "button_unclick";
signal: "mouse,up,1";
source: "button_image";
action: STATE_SET "default" 0.0;
target: "button_image";
target: "over3";
}
program { name: "button_unclick2";
signal: "mouse,clicked,1";
source: "button_image";
action: SIGNAL_EMIT "e,action,next" "";
}
program { name: "button_enable";
signal: "e,state,next,enable";
source: "e";
action: STATE_SET "default" 0.0;
target: "button_image";
target: "e.text.label";
target: "over1";
target: "over2";
target: "block";
}
program { name: "button_disable";
signal: "e,state,next,disable";
source: "e";
action: STATE_SET "disabled" 0.0;
target: "button_image";
target: "e.text.label";
target: "over1";
target: "over2";
target: "block";
}
}
}
*/
group { name: "e/widgets/syscon/main";
images {
image: "base_bg.png" COMP;
image: "bt_base1.png" COMP;
image: "bt_base2.png" COMP;
image: "bt_hilight.png" COMP;
image: "bt_shine.png" COMP;
image: "bt_glow.png" COMP;
}
parts {
part { name: "base";
mouse_events: 0;
description { state: "default" 0.0;
image {
normal: "base_bg.png";
border: 2 2 2 2;
}
fill.smooth: 0;
}
}
part { name: "e.swallow.main";
type: SWALLOW;
description { state: "default" 0.0;
align: 0.5 0.0;
rel1.offset: 12 12;
rel2.relative: 1.0 0.0;
rel2.offset: -13 12;
}
}
part { name: "e.swallow.secondary";
type: SWALLOW;
description { state: "default" 0.0;
min: 32 32;
rel1.to: "e.swallow.main";
rel1.relative: 0.0 1.0;
rel1.offset: 0 12;
rel2.to: "e.swallow.extra";
rel2.relative: 1.0 0.0;
rel2.offset: -1 -13;
}
}
part { name: "e.swallow.extra";
type: SWALLOW;
description { state: "default" 0.0;
align: 0.5 1.0;
rel1.relative: 0.0 1.0;
rel1.offset: 12 -13;
rel2.to_y: "button_image";
rel2.relative: 1.0 0.0;
rel2.offset: -13 -13;
}
}
part { name: "button_image";
mouse_events: 1;
scale: 1;
description { state: "default" 0.0;
fixed: 1 1;
align: 0.5 1.0;
rel1.relative: 0.5 1.0;
rel1.offset: 0 -13;
rel2.relative: 0.5 1.0;
rel2.offset: 0 -13;
min: 64 32;
max: 64 32;
image {
normal: "bt_base2.png";
border: 7 7 7 7;
}
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
image.normal: "bt_base1.png";
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_base.png";
border: 4 4 4 4;
}
}
}
part { name: "e.text.label";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
scale: 1;
description { state: "default" 0.0;
rel1 {
to: "button_image";
relative: 0.0 0.0;
offset: 3 3;
}
rel2 {
relative: 1.0 1.0;
offset: -4 -4;
to: "button_image";
}
color: 224 224 224 255;
color3: 0 0 0 64;
color_class: "button_text";
text {
text: "Cancel";
font: "Sans";
size: 10;
min: 1 1;
align: 0.5 0.5;
text_class: "button";
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
color: 0 0 0 128;
color3: 0 0 0 0;
color_class: "button_text_disabled";
}
}
part { name: "over1";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
rel2.relative: 1.0 0.5;
image {
normal: "bt_hilight.png";
border: 7 7 7 0;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_hilight.png";
border: 4 4 4 0;
}
}
}
part { name: "over2";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "button_image";
rel2.to: "button_image";
image {
normal: "bt_shine.png";
border: 7 7 7 7;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
visible: 0;
}
}
part { name: "over3";
mouse_events: 0;
description { state: "default" 0.0;
rel1.to: "bg";
rel2.to: "bg";
rel1.to: "button_image";
rel2.to: "button_image";
visible: 0;
color: 255 255 255 0;
image {
normal: "menu_sel_fg.png";
border: 8 8 5 9;
normal: "bt_glow.png";
border: 12 12 12 12;
}
}
description { state: "clicked" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
}
}
}
programs {
program { name: "blink_off";
signal: "show";
source: "";
action: STATE_SET "faded" 0.0;
transition: SINUSOIDAL 0.5;
target: "cursor";
after: "blink_on";
program { name: "button_click";
signal: "mouse,down,1";
source: "button_image";
action: STATE_SET "clicked" 0.0;
target: "button_image";
target: "over3";
}
program { name: "blink_on";
action: STATE_SET "default" 0.0;
transition: SINUSOIDAL 0.25;
target: "cursor";
after: "blink_off";
program { name: "button_unclick";
signal: "mouse,up,1";
source: "button_image";
action: STATE_SET "default" 0.0;
target: "button_image";
target: "over3";
}
program { name: "button_unclick2";
signal: "mouse,clicked,1";
source: "button_image";
action: SIGNAL_EMIT "e,action,close" "";
}
}
}
group { name: "e/widgets/exebuf/item";
group { name: "e/widgets/syscon/item/button";
images {
image: "bt_base1.png" COMP;
image: "bt_base2.png" COMP;
image: "bt_hilight.png" COMP;
image: "bt_shine.png" COMP;
image: "bt_glow.png" COMP;
image: "bt_dis_base.png" COMP;
image: "bt_dis_hilight.png" COMP;
}
parts {
part { name: "bg";
mouse_events: 0;
part { name: "button_image";
mouse_events: 1;
description { state: "default" 0.0;
visible: 0;
color: 255 255 255 0;
rel1.offset: -5 -3;
rel2.offset: 4 5;
min: 32 16;
image {
normal: "menu_sel_bg.png";
border: 8 8 5 9;
normal: "bt_base2.png";
border: 7 7 7 7;
}
}
description { state: "selected" 0.0;
description { state: "clicked" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
rel1.offset: -2 0;
rel2.offset: 1 2;
image.normal: "bt_base1.png";
}
}
part { name: "e.text.title";
type: TEXT;
effect: SOFT_SHADOW;
mouse_events: 0;
scale: 1;
description {
state: "default" 0.0;
rel1 {
offset: 2 1;
relative: 1.0 0.0;
to_x: "e.swallow.icons";
}
rel2.offset: -3 -2;
color: 0 0 0 255;
color3: 0 0 0 0;
color_class: "menu_item";
text {
font: "Sans";
size: 10;
min: 1 1;
align: 0.0 0.5;
text_class: "menu_item";
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_base.png";
border: 4 4 4 4;
}
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
color: 255 255 255 255;
color3: 0 0 0 64;
color_class: "menu_item";
}
}
part {
name: "e.swallow.icons";
name: "e.swallow.icon";
type: SWALLOW;
description {
state: "default" 0.0;
max: 18 18;
aspect: 1.0 1.0;
align: 0.0 0.5;
aspect_preference: VERTICAL;
aspect_preference: BOTH;
align: 0.5 0.5;
rel1 {
relative: 0.0 0.0;
offset: 3 1;
offset: 3 3;
to: "button_image";
}
rel2 {
relative: 0.0 1.0;
offset: -3 -2;
relative: 1.0 1.0;
offset: -4 -4;
to: "button_image";
}
}
}
part { name: "fg";
part { name: "over1";
mouse_events: 0;
description { state: "default" 0.0;
rel2.relative: 1.0 0.5;
image {
normal: "bt_hilight.png";
border: 7 7 7 0;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
image {
normal: "bt_dis_hilight.png";
border: 4 4 4 0;
}
}
}
part { name: "over2";
mouse_events: 0;
description { state: "default" 0.0;
image {
normal: "bt_shine.png";
border: 7 7 7 7;
}
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
visible: 0;
color: 255 255 255 0;
rel1.to: "bg";
rel2.to: "bg";
}
}
part { name: "over3";
mouse_events: 0;
description { state: "default" 0.0;
visible: 0;
color: 255 255 255 0;
image {
normal: "menu_sel_fg.png";
border: 8 8 5 9;
normal: "bt_glow.png";
border: 12 12 12 12;
}
}
description { state: "selected" 0.0;
inherit: "default" 0.0;
description { state: "clicked" 0.0;
inherit: "default" 0.0;
visible: 1;
color: 255 255 255 255;
color: 255 255 255 255;
}
}
part {
name: "e.event.exebuf.item";
type: RECT;
mouse_events: 1;
description {
state: "default" 0.0;
min: 14 14;
visible: 1;
part { name: "disabler";
type: RECT;
description { state: "default" 0.0;
color: 0 0 0 0;
rel1 {
relative: 1.0 0.0;
offset: 1 -1;
to_x: "e.swallow.icons";
}
rel2 {
relative: 1.0 1.0;
offset: -1 -1;
}
visible: 0;
}
description { state: "disabled" 0.0;
inherit: "default" 0.0;
visible: 1;
}
}
}
programs {
program { name: "sel";
signal: "e,state,selected";
program {
name: "button_click";
signal: "mouse,down,1";
source: "button_image";
action: STATE_SET "clicked" 0.0;
target: "button_image";
target: "over3";
}
program {
name: "button_unclick";
signal: "mouse,up,1";
source: "button_image";
action: STATE_SET "default" 0.0;
target: "button_image";
target: "over3";
}
program {
name: "button_unclick2";
signal: "mouse,clicked,1";
source: "button_image";
action: SIGNAL_EMIT "e,action,click" "";
}
program {
name: "disable";
signal: "e,state,disabled";
source: "e";
action: STATE_SET "selected" 0.0;
transition: LINEAR 0.2;
target: "bg";
target: "fg";
target: "e.text.title";
action: STATE_SET "disabled" 0.0;
target: "button_image";
target: "over1";
target: "disabler";
}
program { name: "unsel";
signal: "e,state,unselected";
program {
name: "enable";
signal: "e,state,enabled";
source: "e";
action: STATE_SET "default" 0.0;
transition: LINEAR 0.1;
target: "bg";
target: "fg";
target: "e.text.title";
target: "button_image";
target: "over1";
target: "disabler";
}
}
}
@ -21203,7 +21809,7 @@ group { name: "e/toolbar/default/base";
color3: 0 0 0 64;
color_class: "button_text";
text {
text: "Close";
text: "Next";
font: "Sans";
size: 10;
min: 1 1;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

@ -1409,7 +1409,6 @@ _e_actions_menu_find(const char *name)
else if (!strcmp(name, "clients")) return e_int_menus_clients_new();
else if (!strcmp(name, "lost_clients")) return e_int_menus_lost_clients_new();
else if (!strcmp(name, "configuration")) return e_int_menus_config_new();
else if (!strcmp(name, "system")) return e_int_menus_sys_new();
return NULL;
}
ACT_FN_GO(menu_show)

@ -41,6 +41,7 @@ static E_Config_DD *_e_config_gadcon_client_edd = NULL;
static E_Config_DD *_e_config_shelf_edd = NULL;
static E_Config_DD *_e_config_shelf_desk_edd = NULL;
static E_Config_DD *_e_config_mime_icon_edd = NULL;
static E_Config_DD *_e_config_syscon_action_edd = NULL;
EAPI int E_EVENT_CONFIG_ICON_THEME = 0;
@ -381,6 +382,18 @@ e_config_init(void)
E_CONFIG_VAL(D, T, mime, STR);
E_CONFIG_VAL(D, T, icon, STR);
_e_config_syscon_action_edd = E_CONFIG_DD_NEW("E_Config_Syscon_Action",
E_Config_Syscon_Action);
#undef T
#undef D
#define T E_Config_Syscon_Action
#define D _e_config_syscon_action_edd
E_CONFIG_VAL(D, T, action, STR);
E_CONFIG_VAL(D, T, params, STR);
E_CONFIG_VAL(D, T, button, STR);
E_CONFIG_VAL(D, T, icon, STR);
E_CONFIG_VAL(D, T, is_main, INT);
_e_config_edd = E_CONFIG_DD_NEW("E_Config", E_Config);
#undef T
#undef D
@ -635,12 +648,19 @@ e_config_init(void)
E_CONFIG_VAL(D, T, scale.use_dpi, UCHAR);
E_CONFIG_VAL(D, T, scale.use_custom, UCHAR);
E_CONFIG_VAL(D, T, show_cursor, UCHAR); /**/
E_CONFIG_VAL(D, T, idle_cursor, UCHAR); /**/
E_CONFIG_VAL(D, T, show_cursor, UCHAR);
E_CONFIG_VAL(D, T, idle_cursor, UCHAR);
E_CONFIG_VAL(D, T, default_system_menu, STR);
E_CONFIG_VAL(D, T, cfgdlg_normal_wins, UCHAR); /**/
E_CONFIG_VAL(D, T, cfgdlg_normal_wins, UCHAR);
E_CONFIG_VAL(D, T, syscon.main.icon_size, INT);
E_CONFIG_VAL(D, T, syscon.secondary.icon_size, INT);
E_CONFIG_VAL(D, T, syscon.extra.icon_size, INT);
E_CONFIG_VAL(D, T, syscon.timeout, DOUBLE);
E_CONFIG_VAL(D, T, syscon.do_input, UCHAR);
E_CONFIG_LIST(D, T, syscon.actions, _e_config_syscon_action_edd);
e_config_load();
@ -669,6 +689,8 @@ e_config_shutdown(void)
E_CONFIG_DD_FREE(_e_config_gadcon_client_edd);
E_CONFIG_DD_FREE(_e_config_shelf_edd);
E_CONFIG_DD_FREE(_e_config_shelf_desk_edd);
E_CONFIG_DD_FREE(_e_config_mime_icon_edd);
E_CONFIG_DD_FREE(_e_config_syscon_action_edd);
return 1;
}
@ -775,7 +797,8 @@ e_config_load(void)
#define IFCFG(v) if ((e_config->config_version & 0xffff) < (v)) {
#define IFCFGEND }
#define COPYVAL(x) do {e_config->x = tcfg->x;} while (0)
#define COPYSTR(x) do {e_config->x = tcfg->x; tcfg->x = NULL;} while (0)
#define COPYPTR(x) do {e_config->x = tcfg->x; tcfg->x = NULL;} while (0)
#define COPYSTR(x) COPYPTR(x)
if (tcfg)
{
/* some sort of upgrade is needed */
@ -824,6 +847,10 @@ e_config_load(void)
COPYVAL(cfgdlg_normal_wins);
IFCFGEND;
IFCFG(0x012c);
COPYPTR(syscon.actions);
IFCFGEND;
e_config->config_version = E_CONFIG_FILE_VERSION;
_e_config_free(tcfg);
}
@ -1573,6 +1600,18 @@ _e_config_free(E_Config *ecf)
if (ecf->wallpaper_import_last_path) eina_stringshare_del(ecf->wallpaper_import_last_path);
if (ecf->theme_default_border_style) eina_stringshare_del(ecf->theme_default_border_style);
if (ecf->desklock_custom_desklock_cmd) eina_stringshare_del(ecf->desklock_custom_desklock_cmd);
while (ecf->syscon.actions)
{
E_Config_Syscon_Action *sca;
sca = ecf->syscon.actions->data;
if (sca->action) eina_stringshare_del(sca->action);
if (sca->params) eina_stringshare_del(sca->params);
if (sca->button) eina_stringshare_del(sca->button);
if (sca->icon) eina_stringshare_del(sca->icon);