From: Enlightenment S. <no-...@en...> - 2009-08-10 11:36:46
|
Log: 'everything' module: - restructured and rewrote most parts of core - new gui Author: jeffdameth Date: 2009-08-10 04:36:37 -0700 (Mon, 10 Aug 2009) New Revision: 41655 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/Makefile.am trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_config.c trunk/e/src/modules/everything/evry_plug_apps.c trunk/e/src/modules/everything/evry_plug_aspell.c trunk/e/src/modules/everything/evry_plug_border.c trunk/e/src/modules/everything/evry_plug_border_act.c trunk/e/src/modules/everything/evry_plug_calc.c trunk/e/src/modules/everything/evry_plug_config.c trunk/e/src/modules/everything/evry_plug_dir_browse.c trunk/e/src/modules/everything/evry_plug_tracker.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-10 11:33:36 UTC (rev 41654) +++ trunk/e/data/themes/default.edc 2009-08-10 11:36:37 UTC (rev 41655) @@ -26582,408 +26582,938 @@ ///////////////////////////////////////////////////////////////////////////// /*** MOD: EVERYTHING ***/ + ICON("everything-launch","icon_advanced.png",64) + group { name: "e/widgets/everything/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; - description { state: "default" 0.0; - image { - normal: "base_bg.png"; - border: 2 2 2 2; + min: 620 118; + images { + image: "base_bg.png" COMP; + image: "inset_sunk.png" COMP; + image: "menu_sel_bg.png" COMP; + image: "menu_sel_fg.png" COMP; + } + data.item: "shaped" "1"; + parts { + part { name: "bg"; + description { state: "default" 0; + min: 420 118; + rel1.relative: 0.5 0.0; + rel2.relative: 0.5 1.0; + image { + normal: "menu_sel_bg.png"; + border: 8 8 5 9; + } } + description { state: "wide" 0; + inherit: "default" 0.0; + min: 620 118; + } + } + + part { name: "selector_frame"; + type: RECT; + description { state: "default" 0; + color: 255 255 255 255; + rel1 { + offset: 5 5; + to: "bg"; + } + rel2 { + offset: -6 -6; + to: "bg"; + } + } + } + part { name: "e.swallow.subject_selector"; + type: SWALLOW; + clip_to: "selector_frame"; + description { state: "default" 0; + min: 200 100; + max: 200 100; + rel1 { + offset: 5 5; + to: "selector_frame"; + } + rel2 { + relative: 0 0; + offset: 205 100; + to: "selector_frame"; + } + } + } + part { name: "e.swallow.action_selector"; + type: SWALLOW; + clip_to: "selector_frame"; + description { state: "default" 0; + min: 200 100; + max: 200 100; + rel1 { + relative: 0 0; + offset: 205 5; + to: "selector_frame"; + } + rel2 { + relative: 0 0; + offset: 405 100; + to: "selector_frame"; + } + } + } + part { name: "e.swallow.object_selector"; + type: SWALLOW; + clip_to: "selector_frame"; + description { state: "default" 0; + max: 200 100; + visible: 0; + rel1 { + relative: 0 0; + offset: 405 5; + to: "selector_frame"; + } + rel2 { + relative: 0 0; + offset: 605 100; + to: "selector_frame"; + } + } + description { state: "wide" 0; + inherit: "default" 0.0; + visible: 1; + } + } + + 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 11 4; + } + } + } + } + programs { + program { name: "object_selector_hide"; + signal: "e,state,object_selector_hide"; + source: "e"; + action: STATE_SET "default" 0.00; + transition: SINUSOIDAL 0.20000; + target: "bg"; + target: "e.swallow.object_selector"; + } + program { name: "object_selector_show"; + signal: "e,state,object_selector_show"; + source: "e"; + action: STATE_SET "wide" 0.00; + transition: SINUSOIDAL 0.40000; + target: "bg"; + target: "e.swallow.object_selector"; + } + } + } - fill.smooth: 0; - color: 245 245 245 255; - } - } + group { name: "e/widgets/everything/selector_item"; + images { + image: "gadman_border.png" COMP; + } + parts { + part { name: "clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + } + } - part { name: "bg"; - mouse_events: 0; - description { state: "default" 0.0; - min: 0 42; - max: 99999 42; + part { name: "border"; + clip_to: "clip"; + mouse_events: 0; + description { state: "default" 0.0; + color: 255 255 255 32; + image { + normal: "gadman_border.png"; + border: 10 10 10 10; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + } - rel1 { - relative: 0.0 0.0; - offset: 4 8; + part { name: "inner_clip"; + type: RECT; + clip_to: "clip"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.offset: 10 10; + rel2.offset: -11 -11; } - rel2 { - relative: 1.0 0.0; - offset: -6 50; + } + + part { + name: "e.swallow.icons"; + type: SWALLOW; + clip_to: "inner_clip"; + description { + state: "default" 0.0; + max: 64 64; + aspect: 1.0 1.0; + align: 0.0 0.5; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 10 10; + } + rel2 { + relative: 0.0 1.0; + offset: -11 -11; + } } + } + part { name: "e.text.label"; + type: TEXT; + clip_to: "inner_clip"; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1 { + offset: 6 1; + relative: 1.0 0.5; + to_x: "e.swallow.icons"; + } + rel2.offset: -3 -2; + color: 240 240 240 255; + color3: 0 0 0 0; + color_class: "menu_item"; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 1; + align: 0.0 0.5; + /* text_class: "menu_item"; */ + } + } + } + part { name: "e.text.plugin"; + type: TEXT; + clip_to: "inner_clip"; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1 { + offset: 6 12; + relative: 1.0 0.0; + to_x: "e.swallow.icons"; + } + rel2.offset: -13 -2; + color: 210 210 210 255; + color3: 0 0 0 0; + color_class: "menu_item"; + text { + font: "Sans"; + size: 10; + min: 0 1; + align: 1.0 0.0; + /* text_class: "menu_item"; */ + } + } + } + } + programs { + program { name: "sel"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + transition: SINUSOIDAL 0.2; + target: "border"; + } + program { name: "unsel"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.3; + target: "border"; + } + } + } + + group { name: "e/widgets/everything/list"; + images { + image: "base_bg.png" COMP; + image: "inset_sunk.png" COMP; + image: "menu_sel_bg.png" COMP; + image: "menu_sel_fg.png" COMP; + } + data.item: "shaped" "1"; + parts { + part { name: "base"; + mouse_events: 0; + type: RECT; + description { state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + to_y: "input_base"; + } + rel2 { + relative: 1.0 1.0; + to_y: "input_base"; + } + } + description { state: "visible" 0.0; + rel1 { + relative: 0.0 1.0; + to_y: "input_base"; + } + rel2 { + relative: 1.0 1.0; + } + } + } + + part { name: "bg"; + description { state: "default" 0.0; + rel2 { + to: "base"; + } + image { + normal: "base_bg.png"; + border: 2 2 2 2; + } + fill.smooth: 0; + color: 235 235 235 255; + } + } - image { - normal: "menu_sel_bg.png"; - border: 8 8 5 9; + part { name: "list_bg"; + type: RECT; + clip_to: "base"; + description { state: "default" 0.0; + rel1 { + to: "list_clip"; + offset: 0 0; + } + rel2 { + to: "list_clip"; + offset: 0 0; + } + color: 255 255 255 255; } - } - } - - part { name: "list_bg"; - type: RECT; - description { state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - to: "selector_base"; - offset: 3 6; + } + + part { name: "input_base"; + mouse_events: 1; + type: RECT; + description { state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 4; + } } - rel2 { - to: "e.swallow.list"; - offset: 0 0; + description { state: "visible" 0.0; + rel1 { + relative: 0.0 0.0; + } + rel2 { + relative: 1.0 0.0; + offset: -1 30; + } } - color: 255 255 255 255; - } - } + } - part { name: "selector_base"; - mouse_events: 1; - description { state: "default" 0.0; - min: 32 32; - max: 9999 32; + part { name: "input_bg"; + mouse_events: 1; + clip_to: "input_base"; + description { state: "default" 0.0; + min: 32 28; + max: 9999 28; + visible: 0; + rel1 { + relative: 0.0 0.0; + offset: 1 2; + to: "input_base"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to: "input_base"; + } + image { + normal: "bt_dis_base.png"; + border: 4 4 4 4; + } + color: 235 235 235 255; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "e.text.label"; + type: TEXT; + effect: SHADOW; + scale: 1; + clip_to: "input_base"; + description { state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + rel1 { + relative: 0.0 0.0; + offset: 10 7; + to: "input_bg"; + } + rel2 { + relative: 0.0 1.0; + offset: 10 -5; + to: "input_bg"; + } + color: 10 10 10 255; + color3: 255 255 255 128; + text { + font: "Sans:style=Bold"; + size: 14; + align: 0.0 0.5; + min: 1 1; + /* text_class: "exebuf_command"; */ + } + } + } - rel1 { - relative: 0.0 1.0; - offset: 8 6; - to_y: "bg"; + /* part { name: "cursor"; + * type: RECT; + * mouse_events: 0; + * description { state: "default" 0.0; + * min: 1 18; + * max: 1 18; + * align: 0.0 0.5; + * fixed: 1 1; + * rel1 { + * relative: 1.0 0.0; + * offset: 1 0; + * to: "e.text.label"; + * } + * rel2 { + * relative: 1.0 1.0; + * offset: 1 -1; + * to: "e.text.label"; + * } + * color: 10 10 10 220; + * } + * description { state: "faded" 0.0; + * inherit: "default" 0.0; + * color: 10 10 10 0; + * } + * } */ + + part { name: "input_over2"; + mouse_events: 0; + clip_to: "input_base"; + description { state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel2.to: "input_bg"; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } } - rel2 { - relative: 1.0 1.0; - offset: -9 38; - to_y: "bg"; - } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + + } + part { name: "input_over1"; + mouse_events: 0; + clip_to: "input_base"; + description { state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel2.to: "input_bg"; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 128; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + + part { name: "selector_base"; + mouse_events: 1; + clip_to: "base"; + description { state: "default" 0.0; + min: 32 28; + max: 9999 28; + + rel1 { + relative: 0.0 1.0; + offset: 1 -30; + to: "base"; + } + rel2 { + relative: 1.0 1.0; + offset: -2 -1; + to: "base"; + } - image { - normal: "bt_dis_base.png"; - border: 4 4 4 4; + image { + normal: "bt_dis_base.png"; + border: 4 4 4 4; + + } + color: 235 234 234 255; } - } - } - part { name: "clipper"; - type: RECT; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "selector_base"; - offset: 2 2; + } + part { name: "bar_clip"; + type: RECT; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "e.swallow.bar"; + offset: 2 0; + } + rel2 { + to: "e.swallow.bar"; + offset: -5 -1; + } } - rel2 { - to: "selector_base"; - offset: -3 -3; + } + part { name: "e.swallow.bar"; + clip_to: "bar_clip"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1 { + to: "selector_base"; + offset: 0 2; + } + rel2 { + to: "selector_base"; + offset: -2 -3; + } } - } - } - part { name: "e.swallow.bar"; - clip_to: "clipper"; - type: SWALLOW; - description { - state: "default" 0.0; - rel1.to: "clipper"; - rel2.to: "clipper"; - } - } - part { name: "over2"; - mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "selector_base"; - rel2.to: "selector_base"; - image { - normal: "bt_dis_shine.png"; - border: 4 4 4 4; + } + part { name: "over2"; + mouse_events: 0; + clip_to: "base"; + description { state: "default" 0.0; + rel1.to: "selector_base"; + rel2.to: "selector_base"; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } } - } - } - part { name: "over1"; - mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "selector_base"; - rel2.to: "selector_base"; - rel2.relative: 1.0 0.5; - image { - normal: "bt_dis_hilight.png"; - border: 4 4 4 0; + } + part { name: "over1"; + mouse_events: 0; + clip_to: "base"; + description { state: "default" 0.0; + rel1.to: "selector_base"; + rel2.to: "selector_base"; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 128; } - color: 255 255 255 128; - } - } + } - part { name: "e.swallow.list"; - type: SWALLOW; - clip_to: "list_clip"; - description { state: "default" 0.0; - min: 32 64; - align: 0.5 0.0; - rel1 { - relative: 0.0 1.0; - offset: 12 7; - to_y: "selector_base"; + part { name: "e.swallow.list"; + type: SWALLOW; + clip_to: "list_clip"; + description { state: "default" 0.0; + min: 32 150; + rel1 { + relative: 0.0 0.0; + offset: 4 5; + to: "list_clip"; + } + rel2 { + relative: 1.0 1.0; + offset: -4 -4; + to: "list_clip"; + } } - rel2.offset: -13 -13; - } - } - part { name: "list_clip"; - type: RECT; - description { state: "default" 0.0; - color: 255 255 255 255; - rel1.to_y: "e.swallow.list"; - rel2.to_y: "e.swallow.list"; - } - } - part { name: "list_over"; - mouse_events: 0; - description { state: "default" 0.0; - rel1 { - offset: -1 -1; - to: "list_bg"; + } + part { name: "list_clip"; + type: RECT; + clip_to: "base"; + description { state: "default" 0.0; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: 3 0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + offset: -4 -4; + to_y: "selector_base"; + to_x: "base"; + } } - rel2 { - offset: 0 0; - to: "list_bg"; + } + part { name: "list_over"; + mouse_events: 0; + clip_to: "base"; + description { state: "default" 0.0; + rel1 { + offset: -1 -1; + to: "list_bg"; + } + rel2 { + offset: 0 0; + to: "list_bg"; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; } - image { - normal: "inset_sunk.png"; - border: 7 7 7 7; - middle: 0; + } + } + programs { + program { name: "show_list"; + signal: "e,state,list_show"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: ACCELERATE 0.2; + target: "base"; + /* after: "show_list_end"; */ + } + program { name: "hide_list"; + signal: "e,state,list_hide"; + source: "e"; + action: STATE_SET "default" 0.0; + /* transition: SINUSOIDAL 0.1; */ + target: "base"; + } + program { name: "show_entry"; + signal: "e,state,entry_show"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: SINUSOIDAL 0.08; + target: "input_over1"; + target: "input_over2"; + target: "input_base"; + target: "input_bg"; + } + program { name: "hide_entry"; + signal: "e,state,entry_hide"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.08; + target: "input_over1"; + target: "input_over2"; + target: "input_base"; + target: "input_bg"; + } + /* 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"; + * } */ + + /* program { name: "show_list_end"; + * action: SIGNAL_EMIT "e,state,list_shown" "e"; + * } */ + } + } + + group { name: "e/widgets/everything/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; + } } - fill.smooth : 0; - } - } + 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: 5 3; + relative: 1.0 0.0; + to_x: "e.swallow.icons"; + } + rel2.offset: -3 -2; + color: 60 60 60 255; + color3: 255 255 255 64; + color_class: "menu_item"; + text { + font: "Sans:style=Bold"; + size: 10; + min: 0 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: 20 20; + 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"; + } + } + } - part { name: "e.text.label"; + group { name: "e/widgets/everything/tab_item"; + images { + image: "toolbar_sel.png" COMP; + } + parts { + part { name: "label2"; type: TEXT; - effect: SHADOW; + mouse_events: 0; scale: 1; description { state: "default" 0.0; + align: 0.5 1.0; fixed: 0 1; - align: 0.0 0.5; - rel1 { - relative: 1.0 0.0; - offset: 4 8; - to_x: "e.swallow.icons"; - } - rel2 { - relative: 1.0 0.0; - offset: -10 50; - to_x: "e.swallow.icons"; - } - color: 255 255 255 255; - color3: 0 0 0 64; + rel1.to: "e.text.label"; + rel2.to: "e.text.label"; + color: 0 0 0 255; text { - font: "Sans:style=Bold"; - size: 14; - align: 0.0 0.5; + font: "Sans"; + text_source: "e.text.label"; + size: 10; min: 1 1; - text_class: "exebuf_command"; + align: 0.5 0.5; + text_class: "fileman_icon"; } } - } - part { name: "cursor"; - type: RECT; - mouse_events: 0; - description { state: "default" 0.0; - min: 1 18; - max: 1 18; - align: 0.0 0.5; - fixed: 1 1; - rel1 { - relative: 1.0 0.0; - offset: 1 0; - to: "e.text.label"; - } - rel2 { - relative: 1.0 1.0; - offset: 1 -1; - to: "e.text.label"; - } - color: 255 255 255 220; + description { state: "selected" 0.0; + inherit: "default" 0.0; + visible: 0; } - description { state: "faded" 0.0; - inherit: "default" 0.0; - color: 255 255 255 0; - } } - part { name: "e.swallow.icons"; - type: SWALLOW; - description { state: "default" 0.0; - min: 32 32; - max: 32 32; - align: 0.0 0.0; - rel1 { - offset: 6 4; - to: "bg"; - } - rel2 { - offset: -7 -5; - to: "bg"; - } - } - } - 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/everything/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; + normal: "toolbar_sel.png"; + border: 3 3 0 0; } + fill.smooth: 0; } 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: 0 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"; + part { name: "e.swallow.icon"; type: SWALLOW; - description { - state: "default" 0.0; - max: 18 18; + description { state: "default" 0.0; + align: 0.5 0.5; aspect: 1.0 1.0; - align: 0.0 0.5; aspect_preference: VERTICAL; rel1 { relative: 0.0 0.0; - offset: 3 1; + offset: 2 2; } rel2 { - relative: 0.0 1.0; - offset: -3 -2; + to_y: "e.text.label"; + relative: 1.0 0.0; + offset: -3 -1; } + color: 0 0 0 0; } } - part { name: "fg"; - mouse_events: 0; + part { name: "e.text.label"; + type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; description { state: "default" 0.0; + align: 0.5 1.0; + fixed: 0 1; + rel1 { + relative: 0.0 1.0; + offset: 4 -1; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } visible: 0; - color: 255 255 255 0; - rel1.to: "bg"; - rel2.to: "bg"; - image { - normal: "menu_sel_fg.png"; - border: 8 8 5 9; + color: 224 224 224 255; + color3: 0 0 0 32; + text { + font: "Sans:style=Bold"; + size: 10; + min: 1 1; + align: 0.5 0.5; + text_class: "fileman_icon"; } } 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; + part { name: "event"; + type: RECT; + mouse_events: 1; + ignore_flags: ON_HOLD; + 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; - } } } } programs { - program { name: "sel"; - signal: "e,state,selected"; - source: "e"; - action: STATE_SET "selected" 0.0; + program { name: "go_active"; + signal: "e,state,selected"; + source: "e"; + action: STATE_SET "selected" 0.0; + target: "bg"; + target: "e.text.label"; + target: "label2"; 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; + program { name: "go_passive"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "e.text.label"; + target: "label2"; transition: LINEAR 0.1; - target: "bg"; - target: "fg"; - target: "e.text.title"; } + /* program { name: "go"; + * signal: "mouse,up,1"; + * source: "event"; + * action: SIGNAL_EMIT "e,action,click" "e"; + * } */ } } -} + + + Modified: trunk/e/src/modules/everything/Makefile.am =================================================================== --- trunk/e/src/modules/everything/Makefile.am 2009-08-10 11:33:36 UTC (rev 41654) +++ trunk/e/src/modules/everything/Makefile.am 2009-08-10 11:36:37 UTC (rev 41655) @@ -85,7 +85,14 @@ evry_plug_aspell_la_LDFLAGS = -no-undefined -module -avoid-version evry_plug_aspell_la_LIBTOOLFLAGS = --tag=disable-static +evry_plug_clipboarddir = $(pkgdir) +evry_plug_clipboard_LTLIBRARIES = evry_plug_clipboard.la +evry_plug_clipboard_la_SOURCES = evry_plug_clipboard.c +evry_plug_clipboard_la_LIBADD = @e_libs@ +evry_plug_clipboard_la_LDFLAGS = -no-undefined -module -avoid-version +evry_plug_clipboard_la_LIBTOOLFLAGS = --tag=disable-static + uninstall: rm -rf $(DESTDIR)$(libdir)/enlightenment/modules/$(MODULE) Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2009-08-10 11:33:36 UTC (rev 41654) +++ trunk/e/src/modules/everything/e_mod_main.c 2009-08-10 11:36:37 UTC (rev 41655) @@ -85,7 +85,10 @@ } /* evry_conf->history = eina_hash_string_superfast_new(NULL); */ - + + evry_conf->width = 380; + evry_conf->height = 235; + evry_conf->scroll_animate = 0; /* conf_module = m; */ evry_init(); @@ -107,8 +110,8 @@ maug = e_int_menus_menu_augmentation_add("main/1", _e_mod_menu_add, NULL, NULL, NULL); - e_configure_registry_category_add("advanced", 80, _("Advanced"), NULL, "preferences-advanced"); - e_configure_registry_item_add("advanced/run_everything", 40, _("Run Everything"), NULL, "system-run", evry_config_dialog); + e_configure_registry_category_add("extensions", 80, _("Extensions"), NULL, "preferences-extensions"); + e_configure_registry_item_add("extensions/run_everything", 40, _("Run Everything"), NULL, "system-run", evry_config_dialog); e_module_delayed_set(m, 1); @@ -136,6 +139,8 @@ evry_shutdown(); /* conf_module = NULL; */ + eina_list_free(evry_conf->plugins); + eina_list_free(evry_conf->actions); eina_module_list_unload(plugins); eina_module_list_flush(plugins); @@ -144,8 +149,8 @@ eina_module_shutdown(); while ((cfd = e_config_dialog_get("E", "_config_everything_dialog"))) e_object_del(E_OBJECT(cfd)); - e_configure_registry_item_del("advanced/run_everything"); - e_configure_registry_category_del("advanced"); + e_configure_registry_item_del("extensions/run_everything"); + e_configure_registry_category_del("extensions"); /* Clean EET */ E_CONFIG_DD_FREE(conf_item_edd); @@ -212,3 +217,73 @@ e_util_menu_item_theme_icon_set(mi, "system-run"); e_menu_item_callback_set(mi, _e_mod_run_cb, NULL); } + + +static int +_evry_cb_plugin_sort(const void *data1, const void *data2) +{ + const Evry_Plugin *p1 = data1; + const Evry_Plugin *p2 = data2; + return p1->config->priority - p2->config->priority; +} + +EAPI void +evry_plugin_register(Evry_Plugin *plugin) +{ + Eina_List *l; + Plugin_Config *pc; + Eina_Bool found = 0; + + evry_conf->plugins = eina_list_append(evry_conf->plugins, plugin); + + EINA_LIST_FOREACH(evry_conf->plugins_conf, l, pc) + { + if (pc->name && plugin->name && !strcmp(pc->name, plugin->name)) + { + found = 1; + break; + } + } + + if (!found) + { + pc = E_NEW(Plugin_Config, 1); + pc->name = eina_stringshare_add(plugin->name); + pc->enabled = 1; + pc->priority = eina_list_count(evry_conf->plugins); + + evry_conf->plugins_conf = eina_list_append(evry_conf->plugins_conf, pc); + } + + /* if (plugin->trigger && !pc->trigger) + * pc->trigger = eina_stringshare_add(plugin->trigger); */ + + plugin->config = pc; + + evry_conf->plugins = eina_list_sort(evry_conf->plugins, + eina_list_count(evry_conf->plugins), + _evry_cb_plugin_sort); + + /* TODO sorting, initialization, etc */ +} + +EAPI void +evry_plugin_unregister(Evry_Plugin *plugin) +{ + evry_conf->plugins = eina_list_remove(evry_conf->plugins, plugin); + /* cleanup */ +} + +EAPI void +evry_action_register(Evry_Action *action) +{ + evry_conf->actions = eina_list_append(evry_conf->actions, action); + /* TODO sorting, initialization, etc */ +} + +EAPI void +evry_action_unregister(Evry_Action *action) +{ + evry_conf->actions = eina_list_remove(evry_conf->actions, action); + /* cleanup */ +} Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2009-08-10 11:33:36 UTC (rev 41654) +++ trunk/e/src/modules/everything/e_mod_main.h 2009-08-10 11:36:37 UTC (rev 41655) @@ -45,6 +45,7 @@ /**/ Eina_List *plugins; + Eina_List *actions; Eina_Hash *history; }; @@ -67,10 +68,14 @@ struct _Evry_Item { + Evry_Plugin *plugin; + const char *label; const char *uri; const char *mime; + + Eina_Bool browseable; /* these are only for internally use by plugins */ /* used e.g. as pointer for item data (Efreet_Desktop) or */ @@ -80,13 +85,16 @@ /* not to be set by plugin! */ Evas_Object *o_icon; - Evas_Object *o_bg; + Evas_Object *o_bg; }; struct _Evry_Plugin { const char *name; + const char *icon; + enum {type_subject, type_action, type_object } type; + const char *type_in; const char *type_out; @@ -99,6 +107,8 @@ * e.g. borders, app history */ Eina_Bool need_query; + Eina_Bool browseable; + /* run when plugin is activated. */ int (*begin) (Evry_Plugin *p, Evry_Item *item); @@ -108,14 +118,14 @@ /* run before new query and when hiding 'everything' */ void (*cleanup) (Evry_Plugin *p); - /* TODO return icon */ - void (*icon_get) (Evry_Plugin *p, Evry_Item *it, Evas *e); + Evas_Object *(*icon_get) (Evry_Plugin *p, Evry_Item *it, Evas *e); /* provide more information for a candidate */ /* int (*candidate_info) (Evas *evas, Evry_Item *item); */ /* optional: default action for this plugins items */ int (*action) (Evry_Plugin *p, Evry_Item *item, const char *input); - + Evry_Action *act; + /* optional: create list of items when shown (e.g. for sorting) */ void (*realize_items) (Evry_Plugin *p, Evas *e); @@ -124,6 +134,9 @@ Evas_Object *(*config_page) (void); void (*config_apply) (void); + /* only for internal use by plugin */ + void *private; + /* not to be set by plugin! */ Evas_Object *tab; Plugin_Config *config; @@ -136,17 +149,20 @@ const char *type_in1; const char *type_in2; const char *type_out; - - Evry_Item *thing1; - Evry_Item *thing2; - int (*action) (Evry_Action *act); + int (*action) (Evry_Action *act, Evry_Item *it1, Evry_Item *it2, const char *input); int (*check_item) (Evry_Action *act, Evry_Item *it); - void (*icon_get) (Evry_Action *act, Evry_Item *it, Evas *e); + Evas_Object *(*icon_get) (Evry_Action *act, Evas *e); + + /* use icon name from theme */ + const char *icon; - void *priv; + Eina_Bool is_default; + + /* only for internal use by plugin */ + void *private; /* not to be set by plugin! */ Evas_Object *o_icon; @@ -175,7 +191,11 @@ EAPI void evry_action_unregister(Evry_Action *act); EAPI void evry_plugin_async_update(Evry_Plugin *plugin, int state); EAPI void evry_clear_input(void); +EAPI Evry_Item *evry_item_new(Evry_Plugin *p, const char *label); +EAPI void evry_item_free(Evry_Item *it); +EAPI int evry_icon_theme_set(Evas_Object *obj, const char *icon); + extern Config *evry_conf; #endif Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-10 11:33:36 UTC (rev 41654) +++ trunk/e/src/modules/everything/evry.c 2009-08-10 11:36:37 UTC (rev 41655) @@ -1,820 +1,1075 @@ #include "e.h" #include "e_mod_main.h" +/* TODO */ +/* - animations + * - mouse handlers + * - show item descriptions + * - keybinding configuration + * - shortcuts for plugins + */ #define INPUTLEN 40 #define MATCH_LAG 0.33 typedef struct _Evry_State Evry_State; +typedef struct _Evry_Window Evry_Window; +typedef struct _Evry_List_Window Evry_List_Window; +typedef struct _Evry_Selector Evry_Selector; struct _Evry_State { - Eina_List *cur_items; - Eina_List *cur_plugins; - Eina_List *plugins; - Evry_Plugin *cur_plugin; - Evry_Item *sel_item; + char *input; + /* all available plugins for current state */ + Eina_List *plugins; - Eina_List *cur_actions; - Evry_Action *cur_action; + /* currently active plugins, i.e. those that provide items */ + Eina_List *cur_plugins; - /* Eina_List *sel_items; */ - char *input; - const char *request_type; + /* active plugin */ + Evry_Plugin *plugin; - Eina_Bool initial; + /* selected item */ + Evry_Item *sel_item; + /* Eina_List *sel_items; */ + /* this is for the case when the current plugin was not selected manually and a higher priority (async) plugin retrieves candidates, the higher priority plugin is made current */ Eina_Bool plugin_auto_selected; + Eina_Bool item_auto_selected; +}; +/* */ +struct _Evry_Selector +{ + Evas_Object *o_main; + Evas_Object *o_icon; + + /* current state */ + Evry_State *state; + + /* stack of states (for browseable plugins) */ + Eina_List *states; + + /* provides collection of items from other plugins */ + Evry_Plugin *aggregator; + + /* */ + Eina_List *actions; + + /* all plugins that belong to this selector*/ + Eina_List *plugins; }; +struct _Evry_Window +{ + E_Popup *popup; + Evas_Object *o_main; + + /* E_Popup *input_win; */ +}; + +struct _Evry_List_Window +{ + E_Popup *popup; + Evas_Object *o_main; + Evas_Object *o_list; + Evas_Object *o_tabs; + Eina_List *items; + + int ev_last_is_mouse; + Evry_Item *item_mouseover; + Ecore_Animator *scroll_animator; + Ecore_Timer *scroll_timer; + double scroll_align_to; + double scroll_align; + Ecore_Idler *item_idler; + + Eina_Bool visible; +}; + +/* struct _Evry_List_Item + * { + * Evry_Item *item; + * + * Evas_Object *o_icon; + * Evas_Object *o_bg; + * + * const char *label; + * }; */ + + static int _evry_cb_key_down(void *data, int type, void *event); -static int _evry_cb_key_down(void *data, int type, void *event); -static int _evry_cb_mouse_down(void *data, int type, void *event); -static int _evry_cb_mouse_up(void *data, int type, void *event); -static int _evry_cb_mouse_move(void *data, int type, void *event); -static int _evry_cb_mouse_wheel(void *data, int type, void *event); -static void _evry_cb_item_mouse_in(void *data, Evas *evas, Evas_Object *obj, void *event_info); -static void _evry_cb_item_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info); -static void _evry_backspace(void); -static void _evry_update(void); -static void _evry_list_clear(void); -static void _evry_show_items(Evry_Plugin *plugin); +/* static int _evry_cb_mouse_down(void *data, int type, void *event); + * static int _evry_cb_mouse_up(void *data, int type, void *event); + * static int _evry_cb_mouse_move(void *data, int type, void *event); + * static int _evry_cb_mouse_wheel(void *data, int type, void *event); + * static void _evry_cb_item_mouse_in(void *data, Evas *evas, Evas_Object *obj, void *event_info); + * static void _evry_cb_item_mouse_out(void *data, Evas *evas, Evas_Object *obj, void *event_info); */ + +static void _evry_matches_update(Evry_Selector *sel, Evry_Plugin *plugin); +static void _evry_plugin_action(Evry_Selector *sel, int finished); +static void _evry_backspace(Evry_State *s); +static void _evry_update(Evry_State *s); +static void _evry_clear(Evry_State *s); static int _evry_update_timer(void *data); -static void _evry_matches_update(Evry_Plugin *cur_plugin); -static void _evry_clear(void); -static void _evry_item_next(void); -static void _evry_item_prev(void); -static void _evry_plugin_next(void); -static void _evry_plugin_prev(void); -static void _evry_scroll_to(int i); -static void _evry_tab_scroll_to(Evry_Plugin *p); -static void _evry_item_desel(Evry_Item *it); -static void _evry_item_sel(Evry_Item *it); -static void _evry_plugin_action(int finished); -static int _evry_animator(void *data); -static int _evry_scroll_timer(void *data); -static int _evry_push_state(void); -static int _evry_pop_state(void); -static void _evry_plugin_selector_show(Evry_Plugin *p); -static int _evry_cb_plugin_sort(const void *data1, const void *data2); +static Evry_State *_evry_state_new(Evry_Selector *sel, Eina_List *plugins); +static void _evry_state_pop(Evry_Selector *sel); +static void _evry_select_plugin(Evry_State *s, Evry_Plugin *p); +static void _evry_update_text_label(Evry_State *s); +static void _evry_browse_item(Evry_Selector *sel); +static void _evry_browse_back(Evry_Selector *sel); +static void _evry_selectors_switch(void); + +static Evry_Window *_evry_window_new(E_Zone *zone); +static void _evry_window_free(Evry_Window *win); +static Evry_Selector *_evry_selector_new(int type); +static void _evry_selector_free(Evry_Selector *sel); +static void _evry_selector_activate(Evry_Selector *sel); +static void _evry_selector_update(Evry_Selector *sel); +static void _evry_selector_icon_set(Evry_Selector *sel); +static int _evry_selector_subjects_get(void); +static int _evry_selector_actions_get(Evry_Item *it); +static int _evry_selector_objects_get(const char *type); + +static Evry_List_Window *_evry_list_win_new(E_Zone *zone); +static void _evry_list_win_free(Evry_List_Window *win); +static void _evry_list_win_show(void); +static void _evry_list_win_hide(void); +static void _evry_list_clear_list(Evry_State *s); +static void _evry_list_update(Evry_State *s); +static void _evry_list_show_items(Evry_State *s, Evry_Plugin *plugin); +static void _evry_list_item_next(Evry_State *s); +static void _evry_list_item_prev(Evry_State *s); +static void _evry_list_plugin_next(Evry_State *s); +static void _evry_list_plugin_prev(Evry_State *s); +static void _evry_list_scroll_to(Evry_State *s, Evry_Item *it); +static void _evry_list_item_desel(Evry_State *s, Evry_Item *it); +static void _evry_list_item_sel(Evry_State *s, Evry_Item *it); +static void _evry_list_tab_scroll_to(Evry_State *s, Evry_Plugin *p); +static void _evry_list_tab_show(Evry_State *s, Evry_Plugin *p); +static void _evry_list_tabs_update(Evry_State *s); +static int _evry_list_animator(void *data); +static int _evry_list_scroll_timer(void *data); +static int _evry_list_item_idler(void *data); + +static int _evry_plug_actions_init(void); +static int _evry_plug_actions_begin(Evry_Plugin *p, Evry_Item *it); +static int _evry_plug_actions_fetch(Evry_Plugin *p, const char *input); +static void _evry_plug_actions_cleanup(Evry_Plugin *p); +static Evas_Object *_evry_plug_actions_item_icon_get(Evry_Plugin *p, Evry_Item *it, Evas *e); + +static Evry_Plugin *_evry_plug_aggregator_new(void); +static void _evry_plug_aggregator_free(Evry_Plugin *p); +static int _evry_plug_aggregator_begin(Evry_Plugin *p, Evry_Item *it); +static int _evry_plug_aggregator_fetch(Evry_Plugin *p, const char *input); +static int _evry_plug_aggregator_action(Evry_Plugin *p, Evry_Item *item, const char *input); +static void _evry_plug_aggregator_cleanup(Evry_Plugin *p); +static Evas_Object *_evry_plug_aggregator_item_icon_get(Evry_Plugin *p, Evry_Item *it, Evas *e); /* static int _evry_cb_plugin_sort_by_trigger(const void *data1, const void *data2); */ -static int _evry_plug_act_select_init(void); -static int _evry_plug_act_select_begin(Evry_Plugin *p, Evry_Item *it); -static int _evry_plug_act_select_fetch(Evry_Plugin *p, const char *input); -static int _evry_plug_act_select_action(Evry_Plugin *p, Evry_Item *item, const char *input); -static void _evry_plug_act_select_cleanup(Evry_Plugin *p); -static void _evry_plug_act_select_item_icon_get(Evry_Plugin *p, Evry_Item *it, Evas *e); +/* local subsystem globals */ -/* local subsystem globals */ -static E_Popup *popup = NULL; +static Evry_Window *win = NULL; +static Evry_List_Window *list = NULL; static Ecore_X_Window input_window = 0; static Eina_List *handlers = NULL; static Ecore_Timer *update_timer = NULL; -static Evas_Object *o_list = NULL; -static Evas_Object *o_main = NULL; -static Evas_Object *o_selector = NULL; -static int ev_last_is_mouse; -static Evry_Item *item_mouseover = NULL; -static Ecore_Animator *scroll_animator = NULL; -static Ecore_Timer *scroll_timer = NULL; -static double scroll_align_to; -static double scroll_align; -/* static Eina_List *plugins = NULL; */ -static Eina_List *actions = NULL; -static Evry_State *cur_state = NULL; -static Eina_List *stack = NULL; +static Evry_Selector *selectors[3]; +static Evry_Selector *selector = NULL; + static Evry_Plugin *action_selector = NULL; /* externally accessible functions */ EAPI int evry_init(void) { - _evry_plug_act_select_init(); - + _evry_plug_actions_init(); + return 1; } EAPI int evry_shutdown(void) { + // TODO free action_selector evry_hide(); return 1; } -EAPI void -evry_plugin_register(Evry_Plugin *plugin) +EAPI int +evry_show(E_Zone *zone) { - Eina_List *l; - Plugin_Config *pc; - Eina_Bool found = 0; + if (win) return 0; - evry_conf->plugins = eina_list_append(evry_conf->plugins, plugin); + E_OBJECT_CHECK_RETURN(zone, 0); + E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0); + + input_window = ecore_x_window_input_new(zone->container->win, zone->x, + zone->y, zone->w, zone->h); + ecore_x_window_show(input_window); + if (!e_grabinput_get(input_window, 1, input_window)) + goto error; - EINA_LIST_FOREACH(evry_conf->plugins_conf, l, pc) + win = _evry_window_new(zone); + if (!win) goto error; + + list = _evry_list_win_new(zone); + if (!list) goto error; + + list->visible = EINA_FALSE; + + /* TODO check NULL */ + selectors[0] = _evry_selector_new(type_subject); + selectors[1] = _evry_selector_new(type_action); + selectors[2] = _evry_selector_new(type_object); + + _evry_selector_subjects_get(); + _evry_selector_activate(selectors[0]); + _evry_selector_update(selector); + + e_popup_layer_set(list->popup, 255); + e_popup_layer_set(win->popup, 255); + e_popup_show(win->popup); + e_popup_show(list->popup); + + if (list->visible) { - if (pc->name && plugin->name && !strcmp(pc->name, plugin->name)) - { - found = 1; - break; - } + e_popup_show(list->popup); + _evry_list_update(selector->state); } + e_box_align_set(list->o_tabs, 0.0, 0.5); + + handlers = eina_list_append + (handlers, ecore_event_handler_add + (ECORE_EVENT_KEY_DOWN, _evry_cb_key_down, NULL)); + /* handlers = eina_list_append + * (handlers, ecore_event_handler_add + * (ECORE_EVENT_MOUSE_BUTTON_DOWN, _evry_cb_mouse_down, NULL)); + * handlers = eina_list_append + * (handlers, ecore_event_handler_add + * (ECORE_EVENT_MOUSE_BUTTON_UP, _evry_cb_mouse_up, NULL)); + * handlers = eina_list_append + * (handlers, ecore_event_handler_add + * (ECORE_EVENT_MOUSE_MOVE, _evry_cb_mouse_move, NULL)); + * handlers = eina_list_append + * (handlers, ecore_event_handler_add + * (ECORE_EVENT_MOUSE_WHEEL, _evry_cb_mouse_wheel, NULL)); */ - if (!found) - { - pc = E_NEW(Plugin_Config, 1); - pc->name = eina_stringshare_add(plugin->name); - pc->enabled = 1; - pc->priority = eina_list_count(evry_conf->plugins); + return 1; - evry_conf->plugins_conf = eina_list_append(evry_conf->plugins_conf, pc); - } + error: + if (win && selectors[0]) + _evry_selector_free(selectors[0]); + if (win && selectors[1]) + _evry_selector_free(selectors[1]); + if (win && selectors[2]) + _evry_selector_free(selectors[2]); - /* if (plugin->trigger && !pc->trigger) - * pc->trigger = eina_stringshare_add(plugin->trigger); */ + if (win) + _evry_window_free(win); + if (list) + _evry_list_win_free(list); + win = NULL; + list = NULL; + ecore_x_window_free(input_window); + input_window = 0; + + return 0; +} + +EAPI void +evry_hide(void) +{ + Ecore_Event *ev; - plugin->config = pc; + if (!win) return; - evry_conf->plugins = eina_list_sort(evry_conf->plugins, - eina_list_count(evry_conf->plugins), - _evry_cb_plugin_sort); + _evry_list_clear_list(selector->state); + + if (update_timer) + ecore_timer_del(update_timer); + update_timer = NULL; + + _evry_selector_free(selectors[0]); + _evry_selector_free(selectors[1]); + _evry_selector_free(selectors[2]); + selectors[0] = NULL; + selectors[1] = NULL; + selectors[2] = NULL; + selector = NULL; - /* TODO sorting, initialization, etc */ + _evry_list_win_free(list); + list = NULL; + + _evry_window_free(win); + win = NULL; + + EINA_LIST_FREE(handlers, ev) + ecore_event_handler_del(ev); + handlers = NULL; + + ecore_x_window_free(input_window); + e_grabinput_release(input_window, input_window); + input_window = 0; } + EAPI void -evry_plugin_unregister(Evry_Plugin *plugin) +evry_clear_input(void) { - evry_conf->plugins = eina_list_remove(evry_conf->plugins, plugin); - /* cleanup */ + Evry_State *s = selector->state; + + if (s->input[0] != 0) + { + s->input[0] = 0; + } } -EAPI void -evry_action_register(Evry_Action *action) +EAPI Evry_Item * +evry_item_new(Evry_Plugin *p, const char *label) { - actions = eina_list_append(actions, action); - /* TODO sorting, initialization, etc */ + Evry_Item *it; + + it = E_NEW(Evry_Item, 1); + if (!it) return NULL; + + it->plugin = p; + if (label) it->label = eina_stringshare_add(label); + + return it; } EAPI void -evry_action_unregister(Evry_Action *action) +evry_item_free(Evry_Item *it) { - actions = eina_list_remove(actions, action); - /* cleanup */ + if (it->label) eina_stringshare_del(it->label); + E_FREE(it); } -EAPI int -evry_show(E_Zone *zone) +/* static void + * _evry_list_cb_list_shown(void *data, Evas_Object *obj, const char *emission, const char *source) + * { + * _evry_list_scroll_to(selector->state, selector->state->sel_item); + * } */ + +static Evry_List_Window * +_evry_list_win_new(E_Zone *zone) { + int x, y; + Evry_List_Window *list_win; + E_Popup *popup; Evas_Object *o; - int x, y; + + x = (zone->w / 2) - (win->popup->w / 3); + y = (zone->h / 2); + + popup = e_popup_new(zone, x + 50, y - 4, /*XXX get from theme ?*/ + win->popup->w * 2/3 - 100, + evry_conf->height); + if (!popup) return NULL; - E_OBJECT_CHECK_RETURN(zone, 0); - E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0); - - if (popup) return 0; - - input_window = ecore_x_window_input_new(zone->container->win, zone->x, - zone->y, zone->w, zone->h); - ecore_x_window_show(input_window); - if (!e_grabinput_get(input_window, 1, input_window)) + list_win = E_NEW(Evry_List_Window, 1); + if (!list_win) { - ecore_x_window_free(input_window); - input_window = 0; - return 0; + e_object_del(E_OBJECT(popup)); + return NULL; } - x = (zone->w / 2) - (evry_conf->width / 2); - y = (zone->h / 2) - (evry_conf->height / 2); + list_win->popup = popup; - popup = e_popup_new(zone, x, y, evry_conf->width, evry_conf->height); - if (!popup) return 0; - - ecore_x_netwm_window_type_set(popup->evas_win, ECORE_X_WINDOW_TYPE_UTILITY); - - e_popup_layer_set(popup, 255); evas_event_freeze(popup->evas); evas_event_feed_mouse_in(popup->evas, ecore_x_current_time_get(), NULL); evas_event_feed_mouse_move(popup->evas, -1000000, -1000000, ecore_x_current_time_get(), NULL); o = edje_object_add(popup->evas); - o_main = o; + list_win->o_main = o; e_theme_edje_object_set(o, "base/theme/everything", - "e/widgets/everything/main"); + "e/widgets/everything/list"); o = e_box_add(popup->evas); - o_list = o; + list_win->o_list = o; e_box_orientation_set(o, 0); e_box_homogenous_set(o, 1); - edje_object_part_swallow(o_main, "e.swallow.list", o); + edje_object_part_swallow(list_win->o_main, "e.swallow.list", o); evas_object_show(o); - o = o_main; + o = list_win->o_main; evas_object_move(o, 0, 0); - evas_object_resize(o, evry_conf->width, evry_conf->height); + evas_object_resize(o, list_win->popup->w, list_win->popup->h); evas_object_show(o); e_popup_edje_bg_object_set(popup, o); o = e_box_add(popup->evas); e_box_orientation_set(o, 1); - e_box_homogenous_set(o, 1); - edje_object_part_swallow(o_main, "e.swallow.bar", o); + /* e_box_homogenous_set(o, 1); */ + edje_object_part_swallow(list_win->o_main, "e.swallow.bar", o); evas_object_show(o); - o_selector = o; + list_win->o_tabs = o; + /* edje_object_signal_callback_add(list_win->o_main, "e,state,list_shown", "e", + * _evry_list_cb_list_shown, NULL); */ + evas_event_thaw(popup->evas); - handlers = eina_list_append - (handlers, ecore_event_handler_add - (ECORE_EVENT_KEY_DOWN, _evry_cb_key_down, NULL)); - handlers = eina_list_append - (handlers, ecore_event_handler_add - (ECORE_EVENT_MOUSE_BUTTON_DOWN, _evry_cb_mouse_down, NULL)); - handlers = eina_list_append - (handlers, ecore_event_handler_add - (ECORE_EVENT_MOUSE_BUTTON_UP, _evry_cb_mouse_up, NULL)); - handlers = eina_list_append - (handlers, ecore_event_handler_add - (ECORE_EVENT_MOUSE_MOVE, _evry_cb_mouse_move, NULL)); - handlers = eina_list_append - (handlers, ecore_event_handler_add - (ECORE_EVENT_MOUSE_WHEEL, _evry_cb_mouse_wheel, NULL)); + return list_win; +} - _evry_push_state(); +static void +_evry_list_win_free(Evry_List_Window *list_win) +{ + if (list_win->scroll_timer) + ecore_timer_del(list_win->scroll_timer); + if (list_win->scroll_animator) + ecore_animator_del(list_win->scroll_animator); + if (list_win->item_idler) + ecore_idler_del(list_win->item_idler); - e_popup_show(popup); + e_popup_hide(list_win->popup); + evas_event_freeze(list_win->popup->evas); + evas_object_del(list_win->o_list); + evas_object_del(list_win->o_tabs); + evas_object_del(list_win->o_main); + /* evas_event_thaw(list_win->popup->evas); */ + e_object_del(E_OBJECT(list_win->popup)); - e_box_align_set(o_selector, 0.0, 0.5); - return 1; + E_FREE(list_win); } -EAPI void -evry_hide(void) +static void +_evry_list_win_show(void) { - Ecore_Event *ev; - Evry_State *s; + if (list->visible) return; - if (!popup) return; + list->visible = EINA_TRUE; + + _evry_list_update(selector->state); - evas_event_freeze(popup->evas); + edje_object_signal_emit(list->o_main, "e,state,list_show", "e"); +} - _evry_list_clear(); +static void +_evry_list_win_hide(void) +{ + Eina_List *l; + Evry_Plugin *p; + + if (!list->visible) return; - EINA_LIST_FREE(stack, s) + list->visible = EINA_FALSE; + + EINA_LIST_FOREACH(selector->plugins, l, p) { - Evry_Plugin *p; + e_box_unpack(p->tab); + evas_object_del(p->tab); + p->tab = NULL; + } + _evry_list_clear_list(selector->state); - free(s->input); + edje_object_signal_emit(list->o_main, "e,state,list_hide", "e"); + /* e_popup_hide(list->popup); */ +} - EINA_LIST_FREE(s->plugins, p) - { - p->cleanup(p); - if (p->tab) - { - evas_object_del(p->tab); - p->tab = NULL; - } - } +static Evry_Window * +_evry_window_new(E_Zone *zone) +{ + int x, y, mw, mh; + Evry_Window *win; + E_Popup *popup; + Evas_Object *o; + + popup = e_popup_new(zone, 100, 100, 1, 1); + if (!popup) return NULL; + + win = E_NEW(Evry_Window, 1); + if (!win) + { + e_object_del(E_OBJECT(popup)); + return NULL; } - stack = NULL; - cur_state = NULL; + + win->popup = popup; - if (update_timer) - ecore_timer_del(update_timer); - update_timer = NULL; + o = edje_object_add(popup->evas); + win->o_main = o; + e_theme_edje_object_set(o, "base/theme/everything", + "e/widgets/everything/main"); - if (scroll_timer) - ecore_timer_del(scroll_timer); - scroll_timer = NULL; + edje_object_size_min_get(o, &mw, &mh); - if (scroll_animator) - ecore_animator_del(scroll_animator); - scroll_animator = NULL; + x = (zone->w / 2) - (mw / 2); + y = (zone->h / 2) - mh; - e_popup_hide(popup); + e_popup_move_resize(popup, x, y, mw, mh); + + o = win->o_main; + e_popup_edje_bg_object_set(win->popup, o); + evas_object_move(o, 0, 0); + evas_object_resize(o, mw, mh); + evas_object_show(o); - evas_object_del(o_list); - o_list = NULL; + ecore_x_netwm_window_type_set(popup->evas_win, ECORE_X_WINDOW_TYPE_UTILITY); + + return win; +} - evas_object_del(o_selector); - o_selector = NULL; +static void +_evry_window_free(Evry_Window *win) +{ + e_popup_hide(win->popup); + evas_event_freeze(win->popup->evas); + evas_object_del(win->o_main); + /* evas_event_thaw(win->popup->evas); */ + e_object_del(E_OBJECT(win->popup)); + E_FREE(win); +} +static Evry_Selector * +_evry_selector_new(int type) +{ + Evry_Plugin *p; + Eina_List *l; + Evry_Selector *sel = E_NEW(Evry_Selector, 1); + Evas_Object *o = edje_object_add(win->popup->evas); + sel->o_main = o; + e_theme_edje_object_set(o, "base/theme/everything", + "e/widgets/everything/selector_item"); + evas_object_show(o); - evas_object_del(o_main); - o_main = NULL; + if (type == type_subject) + edje_object_part_swallow(win->o_main, "e.swallow.subject_selector", o); + else if (type == type_action) + edje_object_part_swallow(win->o_main, "e.swallow.action_selector", o); + else if (type == type_object) + edje_object_part_swallow(win->o_main, "e.swallow.object_selector", o); - evas_event_thaw(popup->evas); - e_object_del(E_OBJECT(popup)); - popup = NULL; + p = _evry_plug_aggregator_new(); + p->private = sel; + sel->plugins = eina_list_append(sel-... [truncated message content] |
From: Enlightenment S. <no-...@en...> - 2009-08-10 22:38:35
|
Log: 'everything' module: show arrows on items to indicate whether they are browseable Author: jeffdameth Date: 2009-08-10 15:38:21 -0700 (Mon, 10 Aug 2009) New Revision: 41675 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-10 18:43:16 UTC (rev 41674) +++ trunk/e/data/themes/default.edc 2009-08-10 22:38:21 UTC (rev 41675) @@ -26699,7 +26699,7 @@ signal: "e,state,object_selector_hide"; source: "e"; action: STATE_SET "default" 0.00; - transition: SINUSOIDAL 0.20000; + transition: SINUSOIDAL 0.15; target: "bg"; target: "e.swallow.object_selector"; } @@ -26707,7 +26707,7 @@ signal: "e,state,object_selector_show"; source: "e"; action: STATE_SET "wide" 0.00; - transition: SINUSOIDAL 0.40000; + transition: SINUSOIDAL 0.2; target: "bg"; target: "e.swallow.object_selector"; } @@ -27141,7 +27141,7 @@ type: SWALLOW; clip_to: "list_clip"; description { state: "default" 0.0; - min: 32 150; + min: 32 170; rel1 { relative: 0.0 0.0; offset: 4 5; @@ -27149,10 +27149,15 @@ } rel2 { relative: 1.0 1.0; - offset: -4 -4; + offset: -5 -4; to: "list_clip"; } } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 32 150; + } + } part { name: "list_clip"; type: RECT; @@ -27198,7 +27203,7 @@ signal: "e,state,list_show"; source: "e"; action: STATE_SET "visible" 0.0; - transition: ACCELERATE 0.2; + transition: ACCELERATE 0.1; target: "base"; /* after: "show_list_end"; */ } @@ -27218,7 +27223,8 @@ target: "input_over2"; target: "input_base"; target: "input_bg"; - } + target: "e.swallow.list"; + } program { name: "hide_entry"; signal: "e,state,entry_hide"; source: "e"; @@ -27228,6 +27234,7 @@ target: "input_over2"; target: "input_base"; target: "input_bg"; + target: "e.swallow.list"; } /* program { name: "blink_off"; * signal: "show"; @@ -27251,7 +27258,10 @@ } group { name: "e/widgets/everything/item"; - parts { + images { + image: "icon_right_arrow.png" COMP; + } + parts { part { name: "bg"; mouse_events: 0; description { state: "default" 0.0; @@ -27284,7 +27294,10 @@ relative: 1.0 0.0; to_x: "e.swallow.icons"; } - rel2.offset: -3 -2; + rel2 { + offset: -3 -2; + to_x: "arrow"; + } color: 60 60 60 255; color3: 255 255 255 64; color_class: "menu_item"; @@ -27322,6 +27335,32 @@ } } } + part { + name: "arrow"; + description { + state: "default" 0.0; + max: 20 20; + align: 0.0 0.5; + aspect_preference: VERTICAL; + rel1 { + relative: 1.0 0.0; + offset: -21 1; + } + rel2 { + relative: 1.0 1.0; + offset: -3 -2; + } + image { + normal: "icon_right_arrow.png"; + } + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } part { name: "fg"; mouse_events: 0; description { state: "default" 0.0; @@ -27379,7 +27418,14 @@ target: "bg"; target: "fg"; target: "e.text.title"; + target: "arrow"; } + program { name: "arrow"; + signal: "e,state,arrow_show"; + source: "e"; + action: STATE_SET "visible" 0.0; + target: "arrow"; + } } } Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-10 18:43:16 UTC (rev 41674) +++ trunk/e/src/modules/everything/evry.c 2009-08-10 22:38:21 UTC (rev 41675) @@ -1290,12 +1290,13 @@ edje_object_signal_emit(it->o_bg, "e,state,selected", "e"); if (it->o_icon) edje_object_signal_emit(it->o_icon, "e,state,selected", "e"); + if (it->browseable) + edje_object_signal_emit(it->o_bg, "e,state,arrow_show", "e"); } } e_box_thaw(list->o_list); - if (edje_object_part_exists(o, "e.swallow.icons")) - list->item_idler = ecore_idler_add(_evry_list_item_idler, p); + list->item_idler = ecore_idler_add(_evry_list_item_idler, p); e_box_min_size_get(list->o_list, NULL, &mh); evas_object_geometry_get(list->o_list, NULL, NULL, NULL, &h); @@ -1555,6 +1556,9 @@ if (it->o_icon) edje_object_signal_emit(it->o_icon, "e,state,selected", "e"); + if (it->browseable) + edje_object_signal_emit(it->o_bg, "e,state,arrow_show", "e"); + _evry_list_scroll_to(s, it); } |
From: Enlightenment S. <no-...@en...> - 2009-08-16 17:12:30
|
Log: 'everything' module: - get all popup sizes from theme - slightly less shine on the main popup Author: jeffdameth Date: 2009-08-16 10:12:18 -0700 (Sun, 16 Aug 2009) New Revision: 41823 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-16 16:26:49 UTC (rev 41822) +++ trunk/e/data/themes/default.edc 2009-08-16 17:12:18 UTC (rev 41823) @@ -26601,7 +26601,7 @@ rel2.relative: 0.5 1.0; image { normal: "bt_base2.png"; - border: 7 7 7 7; + border: 7 7 5 5; } } @@ -26693,7 +26693,7 @@ normal: "bt_hilight.png"; border: 7 7 7 0; } - color: 255 255 255 200; + color: 255 255 255 120; } } part { name: "over2"; @@ -26701,8 +26701,7 @@ description { state: "default" 0.0; rel1.to: "bg"; rel2.to: "bg"; - /* rel2.relative: 1.0 0.5; */ - rel2.offset: -1 30; + rel2.offset: -1 40; image { normal: "bt_shine.png"; @@ -26825,7 +26824,6 @@ size: 10; min: 0 1; align: 0.0 0.5; - /* text_class: "menu_item"; */ } } } @@ -26851,7 +26849,6 @@ size: 10; min: 0 1; align: 1.0 0.0; - /* text_class: "menu_item"; */ } } } @@ -26895,6 +26892,11 @@ image: "menu_sel_fg.png" COMP; } data.item: "shaped" "1"; + /* offset to main popup */ + data.item: "offset_y" "-4"; + + min: 350 235; + parts { part { name: "base"; mouse_events: 0; @@ -27492,7 +27494,6 @@ size: 10; min: 1 1; align: 0.5 0.5; - text_class: "fileman_icon"; } } description { state: "selected" 0.0; @@ -27559,7 +27560,6 @@ size: 10; min: 1 1; align: 0.5 0.5; - text_class: "fileman_icon"; } } description { state: "selected" 0.0; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-16 16:26:49 UTC (rev 41822) +++ trunk/e/src/modules/everything/evry.c 2009-08-16 17:12:18 UTC (rev 41823) @@ -598,18 +598,15 @@ static Evry_List_Window * _evry_list_win_new(E_Zone *zone) { - int x, y; + int x, y, mw, mh; Evry_List_Window *list_win; E_Popup *popup; Evas_Object *o; + const char *offset_y; - x = (zone->w / 2) - (win->popup->w / 3); - y = (zone->h / 2); + /* TODO get offsets from theme */ + popup = e_popup_new(zone, 0, 0, 1, 1); - /* TODO get offsets from theme */ - popup = e_popup_new(zone, x + 30, y - 4, - win->popup->w * 2/3 - 60, - evry_conf->height); if (!popup) return NULL; list_win = E_NEW(Evry_List_Window, 1); @@ -627,7 +624,16 @@ list_win->o_main = o; e_theme_edje_object_set(o, "base/theme/everything", "e/widgets/everything/list"); + offset_y = edje_object_data_get(o, "offset_y"); + edje_object_size_min_get(o, &mw, &mh); + if (mh == 0) mh = 200; + if (mw == 0) mw = win->popup->w / 2; + x = (win->popup->x + win->popup->w / 2) - (mw / 2); + y = (win->popup->y + win->popup->h) + (offset_y ? atoi(offset_y) : 0); + + e_popup_move_resize(popup, x, y, mw, mh); + o = e_box_add(popup->evas); list_win->o_list = o; e_box_orientation_set(o, 0); @@ -717,7 +723,7 @@ E_Popup *popup; Evas_Object *o; - popup = e_popup_new(zone, 100, 100, 1, 1); + popup = e_popup_new(zone, 0, 0, 1, 1); if (!popup) return NULL; win = E_NEW(Evry_Window, 1); |
From: Enlightenment S. <no-...@en...> - 2009-08-17 02:11:44
|
Log: 'everything' module: added image preview plugin Author: jeffdameth Date: 2009-08-16 19:11:33 -0700 (Sun, 16 Aug 2009) New Revision: 41828 Added: trunk/e/src/modules/everything/evry_plug_preview.c Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/Makefile.am Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-17 02:06:41 UTC (rev 41827) +++ trunk/e/data/themes/default.edc 2009-08-17 02:11:33 UTC (rev 41828) @@ -27603,5 +27603,220 @@ } } + group { name: "e/widgets/everything/preview"; + parts { + part { name: "bg"; + type: RECT; + mouse_events: 0; + description { state: "default" 0.0; + color: 64 64 63 255; + rel1 { + relative: 0.0 0.0; + offset: -4 -4; + to: "frame"; + } + rel2 { + relative: 1.0 1.0; + offset: 4 4; + to: "frame"; + } + } + } + part { name: "clip"; + type: RECT; + mouse_events: 0; + description { state: "default" 0.0; + } + } + part { name: "frame"; + type: RECT; + mouse_events: 0; + description { state: "default" 0.0; + visible: 0; + align: 0 0; + rel1 { + relative: 0.0 0.0; + } + rel2 { + relative: 1.0 1.0; + } + } + } + part { name: "clip1"; + type: RECT; + clip_to: "clip"; + description { state: "default" 0.0; + rel1.to: "e.swallow.icon1"; + rel2.to: "e.swallow.icon1"; + color: 200 200 200 0; + } + description { state: "right" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "e.swallow.icon1"; + type: SWALLOW; + clip_to: "clip1"; + description { state: "default" 0.0; + rel1 { + relative: 0.0 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 0.3333 1.0; + to: "frame"; + offset: -3 -3; + } + } + description { state: "right" 0.0; + rel1 { + relative: 0.3333 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 0.6666 1.0; + to: "frame"; + offset: -3 -3; + } + } + } + part { name: "clip2"; + type: RECT; + clip_to: "clip"; + description { state: "default" 0.0; + rel1.to: "e.swallow.icon2"; + rel2.to: "e.swallow.icon2"; + color: 255 255 255 255; + } + description { state: "left" 0.0; + inherit: "default" 0.0; + color: 200 200 200 0; + } + description { state: "right" 0.0; + inherit: "left" 0.0; + } + } + part { name: "e.swallow.icon2"; + type: SWALLOW; + clip_to: "clip2"; + description { state: "default" 0.0; + rel1 { + relative: 0.3333 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 0.6666 1.0; + to: "frame"; + offset: -3 -3; + } + } + description { state: "left" 0.0; + rel1 { + relative: 0.00 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 0.3333 1.0; + to: "frame"; + offset: -3 -3; + } + } + description { state: "right" 0.0; + rel1 { + relative: 0.6666 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + to: "frame"; + offset: -3 -3; + } + } + } + part { name: "clip3"; + type: RECT; + clip_to: "clip"; + description { state: "default" 0.0; + rel1.to: "e.swallow.icon3"; + rel2.to: "e.swallow.icon3"; + color: 200 200 200 0; + } + description { state: "left" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "e.swallow.icon3"; + type: SWALLOW; + clip_to: "clip3"; + description { state: "default" 0.0; + rel1 { + relative: 0.6666 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 1.0 1.0; + to: "frame"; + offset: -3 -3; + } + } + description { state: "left" 0.0; + rel1 { + relative: 0.3333 0.0; + to: "frame"; + offset: 2 2; + } + rel2 { + relative: 0.6666 1.0; + to: "frame"; + offset: -3 -3; + } + } + } + } + programs { + program { name: "slide_left"; + signal: "e,signal,slide_left"; + source: "e"; + action: STATE_SET "right" 0.0; + target: "e.swallow.icon1"; + target: "e.swallow.icon2"; + target: "clip1"; + target: "clip2"; + after: "slide_middle"; + } + program { name: "slide_right"; + signal: "e,signal,slide_right"; + source: "e"; + action: STATE_SET "left" 0.0; + target: "e.swallow.icon2"; + target: "e.swallow.icon3"; + target: "clip2"; + target: "clip3"; + after: "slide_middle"; + } + program { name: "slide_middle"; + action: STATE_SET "default" 0.0; + target: "e.swallow.icon1"; + target: "e.swallow.icon2"; + target: "e.swallow.icon3"; + target: "clip1"; + target: "clip2"; + target: "clip3"; + transition: SINUSOIDAL 0.2; + } + } + } + + + + Modified: trunk/e/src/modules/everything/Makefile.am =================================================================== --- trunk/e/src/modules/everything/Makefile.am 2009-08-17 02:06:41 UTC (rev 41827) +++ trunk/e/src/modules/everything/Makefile.am 2009-08-17 02:11:33 UTC (rev 41828) @@ -105,6 +105,12 @@ evry_plug_clipboard_la_LDFLAGS = -no-undefined -module -avoid-version evry_plug_clipboard_la_LIBTOOLFLAGS = --tag=disable-static +evry_plug_previewdir = $(plugindir) +evry_plug_preview_LTLIBRARIES = evry_plug_preview.la +evry_plug_preview_la_SOURCES = evry_plug_preview.c +evry_plug_preview_la_LIBADD = @e_libs@ +evry_plug_preview_la_LDFLAGS = -no-undefined -module -avoid-version +evry_plug_preview_la_LIBTOOLFLAGS = --tag=disable-static uninstall: rm -rf $(DESTDIR)$(libdir)/enlightenment/modules/$(MODULE) Added: trunk/e/src/modules/everything/evry_plug_preview.c |
From: Enlightenment S. <no-...@en...> - 2009-08-17 04:25:56
|
Log: 'everything' module preview theme tweak Author: jeffdameth Date: 2009-08-16 21:25:46 -0700 (Sun, 16 Aug 2009) New Revision: 41832 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry_plug_preview.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-17 03:51:03 UTC (rev 41831) +++ trunk/e/data/themes/default.edc 2009-08-17 04:25:46 UTC (rev 41832) @@ -27735,7 +27735,7 @@ offset: 2 2; } rel2 { - relative: 1.0 1.0; + relative: 0.9999 1.0; to: "frame"; offset: -3 -3; } @@ -27764,7 +27764,7 @@ offset: 2 2; } rel2 { - relative: 1.0 1.0; + relative: 0.9999 1.0; to: "frame"; offset: -3 -3; } @@ -27812,7 +27812,7 @@ target: "clip1"; target: "clip2"; target: "clip3"; - transition: SINUSOIDAL 0.2; + transition: LINEAR 0.2; } } } Modified: trunk/e/src/modules/everything/evry_plug_preview.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_preview.c 2009-08-17 03:51:03 UTC (rev 41831) +++ trunk/e/src/modules/everything/evry_plug_preview.c 2009-08-17 04:25:46 UTC (rev 41832) @@ -31,7 +31,7 @@ e_icon_size_get(o_thumb[1], &w, &h); edje_extern_object_min_size_set(o_thumb[1], w, h); edje_object_part_swallow(o_main, "e.swallow.icon2", o_thumb[1]); - evas_object_size_hint_aspect_set(o_thumb[1], EVAS_ASPECT_CONTROL_HORIZONTAL, w, h); + /* evas_object_size_hint_aspect_set(o_thumb[1], EVAS_ASPECT_CONTROL_HORIZONTAL, w, h); */ evas_object_show(o_thumb[1]); } |
From: Enlightenment S. <no-...@en...> - 2009-08-26 00:37:12
|
Log: 'everything' module: - fix select_plugin, it was possible that s->plugin kept an orphaned pointer - theme: align popup in the middle Author: jeffdameth Date: 2009-08-25 17:36:59 -0700 (Tue, 25 Aug 2009) New Revision: 41999 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-26 00:30:55 UTC (rev 41998) +++ trunk/e/data/themes/default.edc 2009-08-26 00:36:59 UTC (rev 41999) @@ -26587,9 +26587,9 @@ group { name: "e/modules/everything/main"; #ifdef DROP_SHADOW - min: 520 218; + min: 516 222; #else - min: 420 118; + min: 416 122; #endif images { image: "base_bg.png" COMP; @@ -26619,7 +26619,7 @@ } part { name: "bg"; description { state: "default" 0; - min: 420 118; + min: 416 118; rel1.relative: 0.5 0.0; rel1.offset: 0 50; rel2.relative: 0.5 1.0; @@ -26634,7 +26634,7 @@ #else part { name: "bg"; description { state: "default" 0; - min: 420 118; + min: 416 118; rel1.relative: 0.5 0.0; rel1.offset: 0 0; rel2.relative: 0.5 1.0; @@ -26665,21 +26665,20 @@ type: RECT; clip_to: "frame"; description { state: "default" 0; - min: 600 100; + min: 600 110; align: 0.0 0.0; color: 255 255 255 255; rel1 { - offset: 10 3; + offset: 8 5; to: "bg"; } rel2 { - offset: -11 -3; + offset: -9 -6; to: "bg"; } } description { state: "wide" 0; inherit: "default" 0.0; - /* min: 622 118; */ align: 1.0 0.0; } } @@ -26687,16 +26686,13 @@ type: SWALLOW; clip_to: "selector_frame"; description { state: "default" 0; - min: 200 100; - max: 200 999; - align: 0.0 0.0; rel1 { offset: 0 2; to: "selector_frame"; } rel2 { relative: 0 1; - offset: 200 -2; + offset: 199 -2; to: "selector_frame"; } } @@ -26709,9 +26705,6 @@ type: SWALLOW; clip_to: "selector_frame"; description { state: "default" 0; - min: 200 100; - max: 200 999; - align: 0.0 0.0; rel1 { relative: 1 0; offset: 0 2; @@ -26719,7 +26712,7 @@ to_x: "e.swallow.subject_selector"; } rel2 { - offset: 200 -2; + offset: 199 -2; to_y: "selector_frame"; to_x: "e.swallow.subject_selector"; } @@ -26729,9 +26722,6 @@ type: SWALLOW; clip_to: "selector_frame"; description { state: "default" 0; - max: 200 999; - visible: 0; - align: 0.0 0.0; rel1 { relative: 1 0; offset: 0 2; @@ -26739,7 +26729,7 @@ to_x: "e.swallow.action_selector"; } rel2 { - offset: 200 -2; + offset: 199 -2; to_y: "selector_frame"; to_x: "e.swallow.action_selector"; } @@ -26919,11 +26909,10 @@ rel1 { offset: 20 6; relative: 0.0 0.6; - /* to_x: "e.swallow.icons"; */ } rel2.offset: -11 -2; - color: 255 255 255 255; - color3: 40 40 40 128; + color: 205 205 205 255; + color3: 40 40 40 64; text { font: "Sans:style=Bold"; size: 10; @@ -26931,6 +26920,12 @@ align: 0.5 0.5; } } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } part { name: "e.text.plugin"; type: TEXT; @@ -26965,6 +26960,7 @@ transition: SINUSOIDAL 0.2; target: "border"; target: "border_bg"; + target: "e.text.label"; } program { name: "unsel"; signal: "e,state,unselected"; @@ -26973,6 +26969,7 @@ transition: SINUSOIDAL 0.3; target: "border"; target: "border_bg"; + target: "e.text.label"; } program { name: "update"; signal: "e,signal,update"; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-26 00:30:55 UTC (rev 41998) +++ trunk/e/src/modules/everything/evry.c 2009-08-26 00:36:59 UTC (rev 41999) @@ -152,11 +152,6 @@ _evry_selector_update(selector); - e_popup_layer_set(list->popup, 255); - e_popup_layer_set(win->popup, 255); - e_popup_show(win->popup); - e_popup_show(list->popup); - if (evry_conf->views && selector->state) { Evry_View *view =evry_conf->views->data; @@ -178,7 +173,14 @@ (ECORE_X_EVENT_SELECTION_NOTIFY, _evry_cb_selection_notify, win)); + e_popup_move(win->popup, win->popup->x, win->popup->y - list->popup->h/2); + e_popup_move(list->popup, list->popup->x, list->popup->y - list->popup->h/2); + e_popup_layer_set(list->popup, 255); + e_popup_layer_set(win->popup, 255); + e_popup_show(win->popup); + e_popup_show(list->popup); + return 1; error: @@ -248,7 +250,7 @@ } -static int item_cnt = 0; +/* static int item_cnt = 0; */ EAPI Evry_Item * evry_item_new(Evry_Item *base, Evry_Plugin *p, const char *label, void (*cb_free) (Evry_Item *item)) @@ -287,7 +289,7 @@ /* printf("%d, %d\t free: %s\n", * it->ref, item_cnt - 1, * it->label); */ - item_cnt--; + /* item_cnt--; */ if (it->label) eina_stringshare_del(it->label); if (it->o_bg) evas_object_del(it->o_bg); @@ -670,6 +672,7 @@ _evry_list_win_update(selector->state); edje_object_signal_emit(list->o_main, "e,state,list_show", "e"); + edje_object_signal_emit(list->o_main, "e,state,entry_show", "e"); } static void @@ -684,6 +687,10 @@ { list->visible = EINA_FALSE; edje_object_signal_emit(list->o_main, "e,state,list_hide", "e"); + if (evry_conf->hide_input && + (!selector->state || !selector->state->input || + strlen(selector->state->input) == 0)) + edje_object_signal_emit(list->o_main, "e,state,entry_hide", "e"); } } @@ -716,7 +723,7 @@ edje_object_size_min_get(o, &mw, &mh); x = (zone->w / 2) - (mw / 2); - y = (zone->h / 2) - mh; + y = (zone->h / 2) - (mh / 2); e_popup_move_resize(popup, x, y, mw, mh); @@ -737,7 +744,7 @@ e_popup_hide(win->popup); evas_event_freeze(win->popup->evas); evas_object_del(win->o_main); - /* evas_event_thaw(win->popup->evas); */ + /* evas_event_thaw(win->popup->evas); */ e_object_del(E_OBJECT(win->popup)); E_FREE(win); } @@ -1041,7 +1048,7 @@ Evry_Plugin *p, *plugin; Evry_Selector *sel = selectors[1]; const char *type_out; - + while (sel->state) _evry_state_pop(sel); @@ -1441,7 +1448,7 @@ static void _evry_update_text_label(Evry_State *s) { - if (evry_conf->hide_input) + if (!list->visible && evry_conf->hide_input) { if (strlen(s->input) > 0) edje_object_signal_emit(list->o_main, "e,state,entry_show", "e"); @@ -1494,7 +1501,7 @@ { s->input[0] = 0; _evry_update(s, 1); - if (evry_conf->hide_input) + if (!list->visible && evry_conf->hide_input) edje_object_signal_emit(list->o_main, "e,state,entry_hide", "e"); return 1; } @@ -1541,11 +1548,12 @@ act->action(act); } - else + else if (s_action->plugin->action) { Evry_Item *it = s_action->sel_item; s_action->plugin->action(s_action->plugin, it); } + else return; /* let subject and object plugin know that an action was performed */ if (s_subject->plugin->action) @@ -1792,7 +1800,10 @@ { _evry_item_desel(s, NULL); s->plugin = p; + return; } + + s->plugin = NULL; } void |
From: Enlightenment S. <no-...@en...> - 2009-08-29 06:29:37
|
Log: 'everything' - draw dropshadow when e_config->use_composite is enabled Author: jeffdameth Date: 2009-08-28 23:29:24 -0700 (Fri, 28 Aug 2009) New Revision: 42085 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-29 05:29:05 UTC (rev 42084) +++ trunk/e/data/themes/default.edc 2009-08-29 06:29:24 UTC (rev 42085) @@ -26581,16 +26581,10 @@ ///////////////////////////////////////////////////////////////////////////// /*** MOD: EVERYTHING ***/ - /* #define DROP_SHADOW 1 */ ICON("everything-launch","icon_advanced.png",64) group { name: "e/modules/everything/main"; - /* #ifdef DROP_SHADOW - * min: 516 222; - * #else - * min: 416 122; - * #endif */ images { image: "base_bg.png" COMP; image: "inset_sunk.png" COMP; @@ -26600,42 +26594,62 @@ } data.item: "shaped" "1"; parts { + part { name: "win"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + min: 416 118; + } + description { state: "composite" 0.0; + visible: 0; + min: 516 218; + } + } + part { name: "frame"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + } + description { state: "composite" 0.0; + visible: 0; + rel1.offset: 50 50; + rel2.offset: -50 -51; + } + } part { name: "shadow"; description { state: "default" 0.0; visible: 0; - rel1.to: "bg"; - rel1.offset: -46 -46; - rel2.to: "bg"; - rel2.offset: 45 45; image { normal: "everything_drop.png"; border: 50 50 50 50; } + rel1.offset: 4 4; + rel2.offset: -5 -5; fill.smooth: 0; color: 255 255 255 220; } - description { state: "default" 0.0; + description { state: "composite" 0.0; + inherit: "default" 0.0; visible: 1; } } part { name: "bg"; description { state: "default" 0; min: 416 118; - rel1.relative: 0.5 0.0; - rel1.offset: 0 0; - rel2.relative: 0.5 1.0; - rel2.offset: 0 -1; + max: 416 118; + rel1 { + to: "frame"; + relative: 0.5 0.0; + } + rel2 { + to: "frame"; + relative: 0.5 1.0; + } image { normal: "bt_base2.png"; border: 7 7 5 5; } } - description { state: "composite" 0; - inherit: "default" 0.0; - min: 516 118; - rel1.offset: 0 50; - rel2.offset: 0 -51; - } } part { name: "border_bg"; mouse_events: 0; @@ -26651,7 +26665,7 @@ } } } - part { name: "frame"; + part { name: "clip"; type: RECT; description { state: "default" 0; color: 255 255 255 255; @@ -26667,7 +26681,7 @@ } part { name: "selector_frame"; type: RECT; - clip_to: "frame"; + clip_to: "clip"; description { state: "default" 0; min: 600 110; align: 0.0 0.0; @@ -26790,6 +26804,14 @@ target: "e.swallow.object_selector"; target: "e.swallow.subject_selector"; } + program { name: "composite_mode"; + signal: "e,state,composited"; + source: "e"; + action: STATE_SET "composite" 0.0; + target: "win"; + target: "frame"; + target: "shadow"; + } } } @@ -27018,12 +27040,47 @@ image: "everything_drop.png" COMP; } /* offset to main popup */ + data.item: "offset_y" "-2"; data.item: "offset_composite_y" "-52"; - data.item: "offset_y" "-2"; data.item: "shaped" "1"; parts { + part { name: "win"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + min: 380 255; + } + description { state: "composite" 0.0; + visible: 0; + min: 480 305; + } + } + part { name: "frame"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + } + description { state: "composite" 0.0; + visible: 0; + rel1.offset: 50 0; + rel2.offset: -51 -51; + } + } + part { name: "shadow_clip"; + type: RECT; + description { state: "default" 0.0; + rel1.to: "shadow"; + rel2.to: "shadow"; + color: 255 255 255 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } part { name: "shadow"; + clip_to: "shadow_clip"; description { state: "default" 0.0; visible: 0; rel1.offset: 0 -50; @@ -27037,56 +27094,40 @@ border: 50 50 50 50; } fill.smooth: 0; - color: 255 255 255 140; } - description { state: "visible" 0.0; + description { state: "composite" 0.0; + inherit: "default" 0.0; visible: 1; - inherit: "default" 0.0; rel1.offset: 0 -50; rel2 { relative: 1.0 1.0; to_y: "base"; offset: -1 49; } - color: 255 255 255 255; } } - part { name: "frame"; - type: RECT; - description { state: "default" 0.0; - min: 380 265; - visible: 0; - } - description { state: "composite" 0.0; - min: 480 315; - rel1.offset: 50 0; - rel2.offset: -50 -51; - } - - } part { name: "base"; type: RECT; description { state: "default" 0.0; rel1 { relative: 0.0 1.0; + to_x: "frame"; to_y: "input_base"; - to_x: "frame"; - offset: 0 0; } rel2 { + to_x: "frame"; to_y: "input_base"; - offset: -1 0; } } description { state: "visible" 0.0; rel1 { relative: 0.0 1.0; + to_x: "frame"; to_y: "input_base"; - to_x: "frame"; - offset: 0 0; } rel2 { - offset: -1 -11; + to: "frame"; + offset: -1 -1; } } } @@ -27317,7 +27358,6 @@ } } part { name: "list_bg"; - /* type: RECT; */ clip_to: "base"; description { state: "default" 0.0; image.normal: "vgrad_dark.png"; @@ -27330,7 +27370,6 @@ offset: 0 0; } fill.smooth: 0; - /* color: 234 234 234 255; */ } } part { name: "e.swallow.list"; @@ -27419,9 +27458,7 @@ action: STATE_SET "visible" 0.0; transition: DECELERATE 0.1; target: "base"; - /* #ifdef DROP_SHADOW - * target: "shadow"; - * #endif */ + target: "shadow_clip"; } program { name: "hide_list"; signal: "e,state,list_hide"; @@ -27429,9 +27466,7 @@ action: STATE_SET "default" 0.0; transition: ACCELERATE 0.08; target: "base"; - /* #ifdef DROP_SHADOW - * target: "shadow"; - * #endif */ + target: "shadow_clip"; } program { name: "show_entry"; signal: "e,state,entry_show"; @@ -27466,6 +27501,14 @@ transition: SINUSOIDAL 0.15; target: "bar_clip"; } + program { name: "composite_mode"; + signal: "e,state,composited"; + source: "e"; + action: STATE_SET "composite" 0.0; + target: "win"; + target: "shadow"; + target: "frame"; + } } } Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-29 05:29:05 UTC (rev 42084) +++ trunk/e/src/modules/everything/evry.c 2009-08-29 06:29:24 UTC (rev 42085) @@ -448,16 +448,31 @@ } list_win->popup = popup; - evas_event_freeze(popup->evas); - evas_event_feed_mouse_in(popup->evas, ecore_x_current_time_get(), NULL); - evas_event_feed_mouse_move(popup->evas, -1000000, -1000000, - ecore_x_current_time_get(), NULL); + /* evas_event_freeze(popup->evas); + * evas_event_feed_mouse_in(popup->evas, ecore_x_current_time_get(), NULL); + * evas_event_feed_mouse_move(popup->evas, -1000000, -1000000, + * ecore_x_current_time_get(), NULL); */ + o = edje_object_add(popup->evas); list_win->o_main = o; e_theme_edje_object_set(o, "base/theme/everything", "e/modules/everything/list"); - offset_y = edje_object_data_get(o, "offset_y"); + + if (e_config->use_composite) + { + edje_object_signal_emit(o, "e,state,composited", "e"); + edje_object_message_signal_process(o); + edje_object_calc_force(o); + offset_y = edje_object_data_get(o, "offset_composite_y"); + } + else + offset_y = edje_object_data_get(o, "offset_y"); + edje_object_size_min_calc(o, &mw, &mh); + + printf("list min size %d %d - %d\n", mw, mh, atoi(offset_y)); + + if (mh == 0) mh = 200; if (mw == 0) mw = win->popup->w / 2; @@ -472,7 +487,7 @@ evas_object_show(o); e_popup_edje_bg_object_set(popup, o); - evas_event_thaw(popup->evas); + /* evas_event_thaw(popup->evas); */ return list_win; } @@ -545,6 +560,13 @@ e_theme_edje_object_set(o, "base/theme/everything", "e/modules/everything/main"); + if (e_config->use_composite) + { + edje_object_signal_emit(o, "e,state,composited", "e"); + edje_object_message_signal_process(o); + edje_object_calc_force(o); + } + edje_object_size_min_calc(o, &mw, &mh); x = (zone->w / 2) - (mw / 2); |
From: Enlightenment S. <no-...@en...> - 2009-08-30 18:34:47
|
Log: Now you can enlarge everything! Author: jeffdameth Date: 2009-08-30 11:34:39 -0700 (Sun, 30 Aug 2009) New Revision: 42113 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_config.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-30 17:02:35 UTC (rev 42112) +++ trunk/e/data/themes/default.edc 2009-08-30 18:34:39 UTC (rev 42113) @@ -26598,11 +26598,11 @@ type: RECT; description { state: "default" 0.0; visible: 0; - min: 416 118; + min: 436 118; } description { state: "composite" 0.0; visible: 0; - min: 516 218; + min: 536 218; } } part { name: "frame"; @@ -26635,21 +26635,16 @@ } part { name: "bg"; description { state: "default" 0; - min: 416 118; - max: 416 118; - rel1 { - to: "frame"; - relative: 0.5 0.0; - } - rel2 { - to: "frame"; - relative: 0.5 1.0; - } image { normal: "bt_base2.png"; border: 7 7 5 5; } } + description { state: "composite" 0; + inherit: "default" 0.0; + rel1.offset: 50 50; + rel2.offset: -50 -51; + } } part { name: "border_bg"; mouse_events: 0; @@ -26683,8 +26678,6 @@ type: RECT; clip_to: "clip"; description { state: "default" 0; - min: 600 110; - align: 0.0 0.0; color: 255 255 255 255; rel1 { offset: 8 5; @@ -26695,28 +26688,35 @@ to: "bg"; } } - description { state: "wide" 0; - inherit: "default" 0.0; - align: 1.0 0.0; - } } part { name: "e.swallow.subject_selector"; type: SWALLOW; clip_to: "selector_frame"; description { state: "default" 0; rel1 { + relative: 0.0 0.0; offset: 0 2; to: "selector_frame"; } rel2 { - relative: 0 1; - offset: 199 -2; - to: "selector_frame"; + relative: 0.5 1.0; + offset: -1 -2; + to_y: "selector_frame"; } } description { state: "wide" 0; inherit: "default" 0.0; visible: 0; + rel1 { + relative: -0.5 0.0; + offset: 0 2; + to: "selector_frame"; + } + rel2 { + relative: -0.5 1.0; + offset: 0 -2; + to: "selector_frame"; + } } } part { name: "e.swallow.action_selector"; @@ -26724,37 +26724,59 @@ clip_to: "selector_frame"; description { state: "default" 0; rel1 { - relative: 1 0; + relative: 0.5 0; offset: 0 2; - to_y: "selector_frame"; - to_x: "e.swallow.subject_selector"; + to: "selector_frame"; } rel2 { - offset: 199 -2; - to_y: "selector_frame"; - to_x: "e.swallow.subject_selector"; + relative: 1.0 1.0; + offset: -1 -2; + to: "selector_frame"; } } + description { state: "wide" 0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.0; + offset: 0 2; + to: "selector_frame"; + } + rel2 { + relative: 0.5 1.0; + offset: -1 -2; + to: "selector_frame"; + } + } } part { name: "e.swallow.object_selector"; type: SWALLOW; clip_to: "selector_frame"; description { state: "default" 0; + visible: 0; rel1 { - relative: 1 0; + relative: 1.5 0.0; offset: 0 2; - to_y: "selector_frame"; - to_x: "e.swallow.action_selector"; + to: "selector_frame"; } rel2 { - offset: 199 -2; - to_y: "selector_frame"; - to_x: "e.swallow.action_selector"; + relative: 1.5 1.0; + offset: -1 -2; + to: "selector_frame"; } } description { state: "wide" 0; inherit: "default" 0.0; visible: 1; + rel1 { + relative: 0.5 0.0; + offset: 0 2; + to: "selector_frame"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -2; + to: "selector_frame"; + } } } part { name: "over1"; @@ -26793,6 +26815,7 @@ target: "selector_frame"; target: "e.swallow.object_selector"; target: "e.swallow.subject_selector"; + target: "e.swallow.action_selector"; } program { name: "object_selector_show"; signal: "e,state,object_selector_show"; @@ -26803,6 +26826,7 @@ target: "selector_frame"; target: "e.swallow.object_selector"; target: "e.swallow.subject_selector"; + target: "e.swallow.action_selector"; } program { name: "composite_mode"; signal: "e,state,composited"; @@ -26811,6 +26835,7 @@ target: "win"; target: "frame"; target: "shadow"; + target: "bg"; } } } @@ -27041,7 +27066,9 @@ } /* offset to main popup */ data.item: "offset_y" "-2"; + data.item: "offset_x" "20"; data.item: "offset_composite_y" "-52"; + data.item: "offset_composite_x" "20"; data.item: "shaped" "1"; parts { @@ -27049,11 +27076,11 @@ type: RECT; description { state: "default" 0.0; visible: 0; - min: 380 255; + min: 400 255; } description { state: "composite" 0.0; visible: 0; - min: 480 305; + min: 500 305; } } part { name: "frame"; Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2009-08-30 17:02:35 UTC (rev 42112) +++ trunk/e/src/modules/everything/e_mod_main.c 2009-08-30 18:34:39 UTC (rev 42113) @@ -207,8 +207,8 @@ evry_conf->version = CONFIG_VERSION; evry_conf->rel_x = 50.0; evry_conf->rel_y = 50.0; - evry_conf->width = 400; - evry_conf->height = 350; + evry_conf->width = 0; + evry_conf->height = 0; evry_conf->scroll_animate = 0; evry_conf->scroll_speed = 0.08; evry_conf->hide_input = 0; Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2009-08-30 17:02:35 UTC (rev 42112) +++ trunk/e/src/modules/everything/e_mod_main.h 2009-08-30 18:34:39 UTC (rev 42113) @@ -32,12 +32,15 @@ int hide_list; int quick_nav; - + + const char *cmd_terminal; + + /* not saved data */ Eina_List *plugins; Eina_List *actions; Eina_List *views; - const char *cmd_terminal; + int min_w, min_h; }; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2009-08-30 17:02:35 UTC (rev 42112) +++ trunk/e/src/modules/everything/evry.c 2009-08-30 18:34:39 UTC (rev 42113) @@ -147,7 +147,6 @@ if (params) win->plugin_dedicated = EINA_TRUE; - _evry_selector_subjects_get(params); _evry_selector_activate(selectors[0]); @@ -441,11 +440,12 @@ static Evry_List_Window * _evry_list_win_new(E_Zone *zone) { - int x, y, mw, mh; + int x, y, w, mw, mh; Evry_List_Window *list_win; E_Popup *popup; Evas_Object *o; const char *offset_y; + const char *offset_x; if (!evry_conf->views) return NULL; @@ -470,21 +470,31 @@ edje_object_signal_emit(o, "e,state,composited", "e"); edje_object_message_signal_process(o); edje_object_calc_force(o); + offset_x = edje_object_data_get(o, "offset_composite_x"); offset_y = edje_object_data_get(o, "offset_composite_y"); } else - offset_y = edje_object_data_get(o, "offset_y"); - + { + offset_x = edje_object_data_get(o, "offset_x"); + offset_y = edje_object_data_get(o, "offset_y"); + } + edje_object_size_min_calc(o, &mw, &mh); - + if (mh == 0) mh = 200; if (mw == 0) mw = win->popup->w / 2; - x = (win->popup->x + win->popup->w / 2) - (mw / 2); + evry_conf->min_h = mh; + if (evry_conf->height > mh) + mh = evry_conf->height; + + /* x = (win->popup->x + win->popup->w / 2) - (mw / 2); */ + x = win->popup->x + (offset_x ? atoi(offset_x) : 0); y = (win->popup->y + win->popup->h) + (offset_y ? atoi(offset_y) : 0); + + w = win->popup->w - (offset_x ? atoi(offset_x) : 0)*2; + e_popup_move_resize(popup, x, y, w, mh); - e_popup_move_resize(popup, x, y, mw, mh); - o = list_win->o_main; evas_object_move(o, 0, 0); evas_object_resize(o, list_win->popup->w, list_win->popup->h); @@ -571,9 +581,14 @@ edje_object_size_min_calc(o, &mw, &mh); + evry_conf->min_w = mw; + + if (evry_conf->width > mw) + mw = evry_conf->width; + x = (zone->w / 2) - (mw / 2); y = (zone->h / 2) - (mh / 2); - + e_popup_move_resize(popup, x, y, mw, mh); o = win->o_main; @@ -1264,9 +1279,15 @@ if ((len == 1) && (isspace(s->input[0])) && (_evry_view_toggle(s, s->input + 1))) - _evry_update(s, 0); + { + /* space at the beginning is trigger */ + _evry_update(s, 0); + } else if (isspace(*ev->compose)) - _evry_update(s, 0); + { + /* do not update matches on space */ + _evry_update(s, 0); + } else _evry_update(s, 1); } Modified: trunk/e/src/modules/everything/evry_config.c =================================================================== --- trunk/e/src/modules/everything/evry_config.c 2009-08-30 17:02:35 UTC (rev 42112) +++ trunk/e/src/modules/everything/evry_config.c 2009-08-30 18:34:39 UTC (rev 42113) @@ -61,9 +61,9 @@ Eina_List *l; Evry_Plugin *p; - /* cfdata->scroll_animate = evry_conf->scroll_animate; - * cfdata->height = evry_conf->height; - * cfdata->width = evry_conf->width; */ + /* cfdata->scroll_animate = evry_conf->scroll_animate; */ + cfdata->height = evry_conf->height; + cfdata->width = evry_conf->width; cfdata->hide_list = evry_conf->hide_list; cfdata->hide_input = evry_conf->hide_input; cfdata->quick_nav = evry_conf->quick_nav; @@ -111,9 +111,9 @@ static int _basic_apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata) { - /* evry_conf->width = cfdata->width; - * evry_conf->height = cfdata->height; - * evry_conf->scroll_animate = cfdata->scroll_animate; */ + /* evry_conf->scroll_animate = cfdata->scroll_animate; */ + evry_conf->width = cfdata->width; + evry_conf->height = cfdata->height; evry_conf->hide_input = cfdata->hide_input; evry_conf->hide_list = cfdata->hide_list; evry_conf->quick_nav = cfdata->quick_nav; @@ -227,20 +227,21 @@ e_widget_list_object_append(o, of, 1, 1, 0.5); - /* ob = e_widget_label_add(evas, _("Popup Width")); - * e_widget_framelist_object_append(of, ob); - * ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), - * 300, 800, 5, 0, NULL, - * &(cfdata->width), 200); - * e_widget_framelist_object_append(of, ob); - * - * ob = e_widget_label_add(evas, _("Popup Height")); - * e_widget_framelist_object_append(of, ob); - * ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), - * 200, 800, 5, 0, NULL, - * &(cfdata->height), 200); - * e_widget_framelist_object_append(of, ob); - * e_widget_list_object_append(o, of, 1, 1, 0.5); */ + of = e_widget_framelist_add(evas, _("Size"), 0); + ob = e_widget_label_add(evas, _("Popup Width")); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), + evry_conf->min_w, 800, 5, 0, NULL, + &(cfdata->width), 200); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_label_add(evas, _("Popup Height")); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), + evry_conf->min_h, 800, 5, 0, NULL, + &(cfdata->height), 200); + e_widget_framelist_object_append(of, ob); + e_widget_list_object_append(o, of, 1, 1, 0.5); /* of = e_widget_framelist_add(evas, _("Scroll Settings"), 0); * ob = e_widget_check_add(evas, _("Scroll Animate"), |
From: Enlightenment S. <no-...@en...> - 2009-08-31 02:13:32
|
Log: 'everything' theme fix: enlarge proportionally Author: jeffdameth Date: 2009-08-30 19:13:19 -0700 (Sun, 30 Aug 2009) New Revision: 42118 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry_plug_aggregator.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2009-08-30 23:03:22 UTC (rev 42117) +++ trunk/e/data/themes/default.edc 2009-08-31 02:13:19 UTC (rev 42118) @@ -26634,13 +26634,14 @@ } } part { name: "bg"; - description { state: "default" 0; + description { state: "default" 0.0; + max: 999 118; image { normal: "bt_base2.png"; border: 7 7 5 5; } } - description { state: "composite" 0; + description { state: "composite" 0.0; inherit: "default" 0.0; rel1.offset: 50 50; rel2.offset: -50 -51; @@ -26660,24 +26661,24 @@ } } } - part { name: "clip"; - type: RECT; - description { state: "default" 0; - color: 255 255 255 255; - rel1 { - offset: 8 1; - to: "bg"; - } - rel2 { - offset: -9 -2; - to: "bg"; - } - } - } + /* part { name: "clip"; + * type: RECT; + * description { state: "default" 0.0; + * color: 255 255 255 255; + * rel1 { + * offset: 8 1; + * to: "bg"; + * } + * rel2 { + * offset: -9 -2; + * to: "bg"; + * } + * } + * } */ part { name: "selector_frame"; type: RECT; - clip_to: "clip"; - description { state: "default" 0; + /* clip_to: "clip"; */ + description { state: "default" 0.0; color: 255 255 255 255; rel1 { offset: 8 5; @@ -26692,7 +26693,7 @@ part { name: "e.swallow.subject_selector"; type: SWALLOW; clip_to: "selector_frame"; - description { state: "default" 0; + description { state: "default" 0.0; rel1 { relative: 0.0 0.0; offset: 0 2; @@ -26710,21 +26711,19 @@ rel1 { relative: -0.5 0.0; offset: 0 2; - to: "selector_frame"; } rel2 { - relative: -0.5 1.0; + relative: 0.0 1.0; offset: 0 -2; - to: "selector_frame"; } } } part { name: "e.swallow.action_selector"; type: SWALLOW; clip_to: "selector_frame"; - description { state: "default" 0; + description { state: "default" 0.0; rel1 { - relative: 0.5 0; + relative: 0.5 0.0; offset: 0 2; to: "selector_frame"; } @@ -26739,22 +26738,20 @@ rel1 { relative: 0.0 0.0; offset: 0 2; - to: "selector_frame"; } rel2 { relative: 0.5 1.0; offset: -1 -2; - to: "selector_frame"; } } } part { name: "e.swallow.object_selector"; type: SWALLOW; clip_to: "selector_frame"; - description { state: "default" 0; + description { state: "default" 0.0; visible: 0; rel1 { - relative: 1.5 0.0; + relative: 1.0 0.0; offset: 0 2; to: "selector_frame"; } @@ -26770,12 +26767,10 @@ rel1 { relative: 0.5 0.0; offset: 0 2; - to: "selector_frame"; } rel2 { relative: 1.0 1.0; offset: -1 -2; - to: "selector_frame"; } } } @@ -26811,8 +26806,6 @@ source: "e"; action: STATE_SET "default" 0.00; transition: SINUSOIDAL 0.15; - target: "bg"; - target: "selector_frame"; target: "e.swallow.object_selector"; target: "e.swallow.subject_selector"; target: "e.swallow.action_selector"; @@ -26822,8 +26815,6 @@ source: "e"; action: STATE_SET "wide" 0.00; transition: SINUSOIDAL 0.2; - target: "bg"; - target: "selector_frame"; target: "e.swallow.object_selector"; target: "e.swallow.subject_selector"; target: "e.swallow.action_selector"; Modified: trunk/e/src/modules/everything/evry_plug_aggregator.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_aggregator.c 2009-08-30 23:03:22 UTC (rev 42117) +++ trunk/e/src/modules/everything/evry_plug_aggregator.c 2009-08-31 02:13:19 UTC (rev 42118) @@ -153,14 +153,10 @@ { EINA_LIST_FOREACH(pp->items, ll, it) { - /* if (it->usage == 0) - * continue; */ - if (evry_history_item_usage_set(p->selector->history, it, input) && (!eina_list_data_find_list(items, it))) { evry_item_ref(it); - it->fuzzy_match = 0; items = eina_list_append(items, it); EVRY_PLUGIN_ITEM_APPEND(p, it); continue; |
From: Enlightenment S. <no-...@en...> - 2010-04-16 17:24:42
|
Log: 'everything' - fix popup geometry, same for composited and non-composited now - remove experimental preview plugin Author: jeffdameth Date: 2010-04-16 10:24:35 -0700 (Fri, 16 Apr 2010) New Revision: 48057 Removed: trunk/e/src/modules/everything/evry_plug_preview.c Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/Makefile.am trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-04-16 15:27:50 UTC (rev 48056) +++ trunk/e/data/themes/default.edc 2010-04-16 17:24:35 UTC (rev 48057) @@ -32784,6 +32784,7 @@ image: "everything_drop.png" COMP; } data.item: "shaped" "1"; + data.item: "shadow_offset" "50"; parts { part { name: "win"; @@ -32793,11 +32794,6 @@ visible: 0; min: 386 118; } - description { - state: "composite" 0.0; - visible: 0; - min: 486 218; - } } part { name: "frame"; @@ -33032,7 +33028,6 @@ signal: "e,state,composited"; source: "e"; action: STATE_SET "composite" 0.0; - target: "win"; target: "frame"; target: "shadow"; target: "bg"; @@ -33285,9 +33280,10 @@ } /* offset to main popup */ data.item: "offset_y" "-2"; - data.item: "offset_x" "16"; - data.item: "offset_composite_y" "-52"; - data.item: "offset_composite_x" "16"; + data.item: "offset_x" "12"; + /* data.item: "offset_composite_y" "-52"; + * data.item: "offset_composite_x" "16"; */ + data.item: "shadow_offset" "50"; data.item: "shaped" "1"; parts { part { @@ -33298,11 +33294,6 @@ visible: 0; min: 400 255; } - description { - state: "composite" 0.0; - visible: 0; - min: 500 305; - } } part { name: "frame"; @@ -33814,7 +33805,6 @@ signal: "e,state,composited"; source: "e"; action: STATE_SET "composite" 0.0; - target: "win"; target: "shadow"; target: "frame"; } Modified: trunk/e/src/modules/everything/Makefile.am =================================================================== --- trunk/e/src/modules/everything/Makefile.am 2010-04-16 15:27:50 UTC (rev 48056) +++ trunk/e/src/modules/everything/Makefile.am 2010-04-16 17:24:35 UTC (rev 48057) @@ -34,7 +34,6 @@ evry_plug_actions.c \ evry_view_plugin_tabs.c \ evry_plug_view_thumb.c \ - evry_plug_preview.c \ evry_plug_view_help.c \ evry_plug_clipboard.c Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2010-04-16 15:27:50 UTC (rev 48056) +++ trunk/e/src/modules/everything/e_mod_main.c 2010-04-16 17:24:35 UTC (rev 48057) @@ -12,7 +12,7 @@ /* #undef DBG * #define DBG(...) ERR(__VA_ARGS__) */ -#define CONFIG_VERSION 8 +#define CONFIG_VERSION 9 /* actual module specifics */ static void _e_mod_action_cb(E_Object *obj, const char *params); @@ -70,7 +70,6 @@ evry_history_init(); view_thumb_init(); - view_preview_init(); view_help_init(); evry_plug_clipboard_init(); @@ -137,7 +136,6 @@ } view_thumb_shutdown(); - view_preview_shutdown(); view_help_shutdown(); evry_plug_clipboard_shutdown(); @@ -220,6 +218,14 @@ if (evry_conf && evry_conf->version == 7) { evry_conf->scroll_speed = 10.0; + evry_conf->version = 8; + } + + if (evry_conf && evry_conf->version == 8) + { + evry_conf->width = 460; + evry_conf->height = 310; + evry_conf->rel_y = 0.25; evry_conf->version = CONFIG_VERSION; } @@ -234,9 +240,9 @@ evry_conf = E_NEW(Evry_Config, 1); evry_conf->version = CONFIG_VERSION; evry_conf->rel_x = 0.5; - evry_conf->rel_y = 0.33; - evry_conf->width = 0; - evry_conf->height = 0; + evry_conf->rel_y = 0.25; + evry_conf->width = 460; + evry_conf->height = 310; evry_conf->scroll_animate = 0; evry_conf->scroll_speed = 10.0; evry_conf->hide_input = 0; @@ -253,15 +259,6 @@ evry_conf->cycle_mode = 0; evry_conf->history_sort_mode = 0; } - - /* TODO: remove - fix old configs */ - if ((evry_conf->rel_x > 1.0) || - (evry_conf->rel_x < 0.0)) - evry_conf->rel_x = 0.5; - - if ((evry_conf->rel_y > 1.0) || - (evry_conf->rel_y < 0.0)) - evry_conf->rel_y = 0.3; } Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-04-16 15:27:50 UTC (rev 48056) +++ trunk/e/src/modules/everything/evry.c 2010-04-16 17:24:35 UTC (rev 48057) @@ -512,8 +512,8 @@ Evry_List_Window *list_win; E_Popup *popup; Evas_Object *o; - const char *offset_y; - const char *offset_x; + const char *tmp; + int offset_x, offset_y, offset_s; if (!evry_conf->views) return NULL; @@ -533,19 +533,21 @@ e_theme_edje_object_set(o, "base/theme/everything", "e/modules/everything/list"); + tmp = edje_object_data_get(o, "offset_x"); + offset_x = tmp ? atoi(tmp) : 0; + tmp = edje_object_data_get(o, "offset_y"); + offset_y = tmp ? atoi(tmp) : 0; + if (e_config->use_composite) { edje_object_signal_emit(o, "e,state,composited", "e"); edje_object_message_signal_process(o); edje_object_calc_force(o); - offset_x = edje_object_data_get(o, "offset_composite_x"); - offset_y = edje_object_data_get(o, "offset_composite_y"); + + tmp = edje_object_data_get(o, "shadow_offset"); + offset_s = tmp ? atoi(tmp) : 0; + offset_y -= offset_s; } - else - { - offset_x = edje_object_data_get(o, "offset_x"); - offset_y = edje_object_data_get(o, "offset_y"); - } edje_object_size_min_calc(o, &mw, &mh); @@ -556,10 +558,11 @@ if (evry_conf->height > mh) mh = evry_conf->height; - x = win->popup->x + (offset_x ? atoi(offset_x) : 0); - y = (win->popup->y + win->popup->h) + (offset_y ? atoi(offset_y) : 0); + x = win->popup->x + offset_x; + y = (win->popup->y + win->popup->h) + offset_y; - w = win->popup->w - (offset_x ? atoi(offset_x) : 0)*2; + w = win->popup->w - offset_x*2; + mh += offset_s; e_popup_move_resize(popup, x, y, w, mh); o = list_win->o_main; @@ -621,7 +624,9 @@ Evry_Window *win; E_Popup *popup; Evas_Object *o; - + const char *tmp; + int offset_s = 0; + popup = e_popup_new(zone, 0, 0, 1, 1); if (!popup) return NULL; @@ -644,15 +649,18 @@ edje_object_signal_emit(o, "e,state,composited", "e"); edje_object_message_signal_process(o); edje_object_calc_force(o); + + tmp = edje_object_data_get(o, "shadow_offset"); + offset_s = tmp ? atoi(tmp) : 0; } edje_object_size_min_calc(o, &mw, &mh); - evry_conf->min_w = mw; - if (evry_conf->width > mw) mw = evry_conf->width; + mw += offset_s*2; + mh += offset_s*2; x = (zone->w * evry_conf->rel_x) - (mw / 2); y = (zone->h * evry_conf->rel_y) - (mh / 2); |
From: Enlightenment S. <no-...@en...> - 2010-04-20 18:49:49
|
Log: 'everything' first start help page Author: jeffdameth Date: 2010-04-20 11:49:42 -0700 (Tue, 20 Apr 2010) New Revision: 48170 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/Evry.h trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_plug_view_help.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-04-20 18:48:42 UTC (rev 48169) +++ trunk/e/data/themes/default.edc 2010-04-20 18:49:42 UTC (rev 48170) @@ -33412,8 +33412,8 @@ normal: "base_bg.png"; border: 2 2 2 2; } - fill.smooth: 0; - color: 205 205 205 255; + fill.smooth: 1; + color: 245 245 245 255; } } part { @@ -34333,12 +34333,12 @@ normal: "everything_item_bg.png"; border: 5 5 5 5; } - color: 255 255 255 32; + color: 255 255 255 16; } description { state: "selected" 0.0; inherit: "default" 0.0; - color: 255 255 255 128; + color: 255 255 255 108; } } part { @@ -34557,7 +34557,7 @@ source: "e"; action: STATE_SET "selected" 0.0; target: "bg"; - transition: ACCELERATE 0.05; + transition: ACCELERATE 0.15; /* target: "clip"; */ } program { @@ -34565,7 +34565,7 @@ signal: "e,state,unselected"; source: "e"; action: STATE_SET "default" 0.0; - /* transition: LINEAR 0.1; */ + transition: LINEAR 0.2; target: "bg"; /* target: "clip"; */ } @@ -34944,6 +34944,36 @@ } } + group { + name: "e/modules/everything/textblock"; + styles { + style { + name: "everything_textblock_style"; + base: "font=Sans font_size=11 align=left color=#000"; + tag: "hilight" "+ font=Sans:style=Bold color=#0c0c0c"; + tag: "b" "+ font=Sans:style=Bold"; + tag: "br" "\n"; + tag: "/title" "- \n \n"; + } + } + parts { + part { + name: "e.textblock.text"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1.offset: 4 4; + rel2.offset: -5 -5; + text { + style: "everything_textblock_style"; + min: 1 1; + } + } + } + } + } ///////////////////////////////////////////////////////////////////////////// /*** MOD: CONF_COLORS ***/ Modified: trunk/e/src/modules/everything/Evry.h =================================================================== --- trunk/e/src/modules/everything/Evry.h 2010-04-20 18:48:42 UTC (rev 48169) +++ trunk/e/src/modules/everything/Evry.h 2010-04-20 18:49:42 UTC (rev 48170) @@ -344,6 +344,8 @@ Eina_List *views; int min_w, min_h; + + unsigned char first_run; }; struct _Plugin_Config Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2010-04-20 18:48:42 UTC (rev 48169) +++ trunk/e/src/modules/everything/e_mod_main.c 2010-04-20 18:49:42 UTC (rev 48170) @@ -12,7 +12,7 @@ /* #undef DBG * #define DBG(...) ERR(__VA_ARGS__) */ -#define CONFIG_VERSION 9 +#define CONFIG_VERSION 10 /* actual module specifics */ static void _e_mod_action_cb(E_Object *obj, const char *params); @@ -214,6 +214,7 @@ E_CONFIG_LIST(D, T, conf_actions, plugin_conf_edd); E_CONFIG_LIST(D, T, conf_objects, plugin_conf_edd); E_CONFIG_LIST(D, T, conf_views, plugin_conf_edd); + E_CONFIG_VAL(D, T, first_run, UCHAR); #undef T #undef D evry_conf = e_config_domain_load("module.everything", conf_edd); @@ -226,13 +227,19 @@ if (evry_conf && evry_conf->version == 8) { - evry_conf->width = 460; + evry_conf->width = 445; evry_conf->height = 310; evry_conf->rel_y = 0.25; evry_conf->scroll_animate = 1; + evry_conf->version = 9; + } + + if (evry_conf && evry_conf->version == 9) + { + evry_conf->first_run = EINA_TRUE; evry_conf->version = CONFIG_VERSION; } - + if (evry_conf && evry_conf->version != CONFIG_VERSION) { _config_free(); @@ -245,7 +252,7 @@ evry_conf->version = CONFIG_VERSION; evry_conf->rel_x = 0.5; evry_conf->rel_y = 0.25; - evry_conf->width = 460; + evry_conf->width = 445; evry_conf->height = 310; evry_conf->scroll_animate = 1; evry_conf->scroll_speed = 10.0; @@ -258,6 +265,7 @@ evry_conf->view_zoom = 0; evry_conf->cycle_mode = 0; evry_conf->history_sort_mode = 0; + evry_conf->first_run = EINA_TRUE; } } Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-04-20 18:48:42 UTC (rev 48169) +++ trunk/e/src/modules/everything/evry.c 2010-04-20 18:49:42 UTC (rev 48170) @@ -143,9 +143,17 @@ Evry_View *view =evry_conf->views->data; Evry_State *s = selector->state; - s->view = view->create(view, s, list->o_main); - - _evry_view_show(s->view); + if (evry_conf->first_run) + { + _evry_view_toggle(s, "?"); + evry_conf->first_run = EINA_FALSE; + } + else + { + s->view = view->create(view, s, list->o_main); + + _evry_view_show(s->view); + } } else return 0; @@ -1520,17 +1528,12 @@ if (len < (INPUTLEN - strlen(ev->compose))) { strcat(s->input, ev->compose); - /* if ((len == 0) && isspace(s->input[0])) - * _evry_show_triggers(); */ - if ((len == 1) && - (isspace(s->input[0])) && - (_evry_view_toggle(s, s->input + 1))) + + if (len == 0 && (_evry_view_toggle(s, s->input))) + goto end; + + if (isspace(*ev->compose)) { - /* space at the beginning is trigger */ - _evry_update(selector, 0); - } - else if (isspace(*ev->compose)) - { /* do not update matches on space */ _evry_update(selector, 0); } @@ -1797,14 +1800,18 @@ { Evry_View *view, *v = NULL; Eina_List *l, *ll; - + Eina_Bool triggered = FALSE; + if (trigger) { EINA_LIST_FOREACH(evry_conf->views, ll, view) { if (view->trigger && !strncmp(trigger, view->trigger, 1) && (v = view->create(view, s, list->o_main))) - goto found; + { + triggered = EINA_TRUE; + goto found; + } } } else @@ -1855,7 +1862,7 @@ _evry_view_show(s->view); view->update(s->view, 0); - return 1; + return triggered; } static void Modified: trunk/e/src/modules/everything/evry_plug_view_help.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_help.c 2010-04-20 18:48:42 UTC (rev 48169) +++ trunk/e/src/modules/everything/evry_plug_view_help.c 2010-04-20 18:49:42 UTC (rev 48170) @@ -62,19 +62,23 @@ int mw, mh; char *text = - _("<title><b>Welcome!</b></title>" - "Ok, here comes the explanation of <hilight>everything</hilight>...<br>" - "Just type a few letters of the thing you are looking for. <br>" - "Use cursor <hilight><up/down></hilight> to choose from the list of things.<br>" - "Press <hilight><tab></hilight> to select " - "an action, then press <hilight><return></hilight>.<br>" - /* "You might want to know <br>some mo keybinding to ease your experience though.<br>" */ - "<hilight><space><?></hilight> show this page<br>" - "<hilight><ctrl+letter></hilight> jump to plugin beginning with 'letter'<br>" - "<hilight><ctrl+left/right></hilight>" - "cycle through plugins<br>" - "<hilight><ctrl+1></hilight> " - "choose a different view (e.g. for images)<br>"); + _(" Ok, here comes the explanation of <hilight>everything</hilight>...<br>" + " Just type a few letters of the thing you are looking for. <br>" + " Use cursor <hilight><up/down></hilight> to choose from the list of things.<br>" + " Press <hilight><tab></hilight> to select" + " an action, then press <hilight><return></hilight>.<br>" + /* "You might want to know <br>some mo keybinding to ease your experience though.<br>" */ + " <hilight><?></hilight> show this page<br>" + " <hilight><return></hilight> run action<br>" + " <hilight><ctrl+return></hilight> run action and continue<br>" + " <hilight><tab></hilight> toggle between selectors<br>" + " <hilight><ctrl+tab></hilight> complete input (depends on plugin)<br>" + " <hilight><ctrl+'x'></hilight> jump to plugin beginning with 'x'<br>" + " <hilight><ctrl+left/right></hilight> cycle through plugins<br>" + " <hilight><ctrl+1></hilight> toggle view modes (exit this page ;)<br>" + " <hilight><ctrl+2></hilight> toggle list view modes<br>" + " <hilight><ctrl+3></hilight> toggle thumb view modes" + ); if (v->active) return v; @@ -85,7 +89,7 @@ e_box_freeze(v->o_list); o = edje_object_add(evas_object_evas_get(swallow)); e_theme_edje_object_set(o, "base/theme/widgets", - "e/widgets/textblock"); + "e/modules/everything/textblock"); edje_object_part_text_set(o, "e.textblock.text", text); e_box_pack_start(v->o_list, o); |
From: Enlightenment S. <no-...@en...> - 2010-05-13 04:13:45
|
Log: make multiple selection work in thumb mode. trying thumb mode as default for aggregator Author: jeffdameth Date: 2010-05-12 21:13:38 -0700 (Wed, 12 May 2010) New Revision: 48799 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/evry_plug_aggregator.c trunk/e/src/modules/everything/evry_plug_view_thumb.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-13 03:49:23 UTC (rev 48798) +++ trunk/e/data/themes/default.edc 2010-05-13 04:13:38 UTC (rev 48799) @@ -33939,16 +33939,7 @@ name: "e/modules/everything/thumbview/main/window"; images { image: "vgrad_dark.png" COMP; - image: "dia_topshad.png" COMP; image: "dia_botshad.png" COMP; - image: "dia_botshad.png" COMP; - image: "topsh.png" COMP; - image: "wp-bot1.png" COMP; - image: "wp-bot2.png" COMP; - image: "wp-tb1.png" COMP; - image: "wp-tb2.png" COMP; - image: "wp-tb3.png" COMP; - image: "wp-tbs.png" COMP; image: "big_arrow_up.png" COMP; image: "busy-1.png" COMP; image: "busy-2.png" COMP; @@ -34153,6 +34144,33 @@ } } part { + name: "bg_mark"; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + to: "base"; + offset: -1 -3; + } + rel2 { + to: "base"; + offset: -2 2; + } + fill.smooth: 0; + image { + normal: "everything_item_bg.png"; + border: 5 5 5 5; + } + } + description { + state: "marked" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 48; + } + } + part { name: "base"; mouse_events: 0; type: RECT; @@ -34260,9 +34278,7 @@ signal: "e,state,selected"; source: "e"; action: STATE_SET "selected" 0.0; - /* transition: DECELERATE 0.; */ target: "bg"; - /* target: "clip"; */ } program { name: "unsel"; @@ -34271,9 +34287,24 @@ action: STATE_SET "default" 0.0; transition: SINUSOIDAL 0.1; target: "bg"; - /* target: "clip"; */ } program { + name: "mark"; + signal: "e,state,marked"; + source: "e"; + action: STATE_SET "marked" 0.0; + target: "bg_mark"; + transition: ACCELERATE 0.15; + } + program { + name: "unmark"; + signal: "e,state,unmarked"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.2; + target: "bg_mark"; + } + program { name: "thumb_gen"; signal: "e,action,thumb,gen"; source: "e"; @@ -34373,7 +34404,7 @@ state: "marked" 0.0; inherit: "default" 0.0; visible: 1; - color: 255 255 255 48; + color: 255 255 255 148; } } part { @@ -34480,9 +34511,6 @@ state: "visible" 0.0; inherit: "default" 0.0; visible: 1; - /* min: 12 12; - * max: 12 12; */ - rel1 { to: "base"; relative: 1.0 0.0; @@ -34593,7 +34621,6 @@ action: STATE_SET "selected" 0.0; target: "bg"; transition: ACCELERATE 0.15; - /* target: "clip"; */ } program { name: "unsel"; @@ -34602,7 +34629,6 @@ action: STATE_SET "default" 0.0; transition: LINEAR 0.2; target: "bg"; - /* target: "clip"; */ } program { name: "mark"; @@ -34611,7 +34637,6 @@ action: STATE_SET "marked" 0.0; target: "bg_mark"; transition: ACCELERATE 0.15; - /* target: "clip"; */ } program { name: "unmark"; @@ -34620,14 +34645,12 @@ action: STATE_SET "default" 0.0; transition: LINEAR 0.2; target: "bg_mark"; - /* target: "clip"; */ } program { name: "arrow_show"; signal: "e,state,browseable"; source: "e"; action: STATE_SET "visible" 0.0; - /* transition: SINUSOIDAL 0.1; */ target: "arrow"; } program { @@ -34644,7 +34667,6 @@ signal: "e,action,thumb,ungen"; source: "e"; action: STATE_SET "visible" 0.0; - /* transition: SINUSOIDAL 0.15; */ target: "base"; } program { @@ -34658,7 +34680,6 @@ program { name: "thumb_show_delayed2"; action: STATE_SET "visible" 0.0; - /* transition: SINUSOIDAL 0.3; */ target: "base"; } program { @@ -34666,7 +34687,6 @@ signal: "e,action,thumb,show"; source: "e"; action: STATE_SET "visible" 0.0; - /* transition: SINUSOIDAL 0.1; */ target: "base"; } program { Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2010-05-13 03:49:23 UTC (rev 48798) +++ trunk/e/src/modules/everything/e_mod_main.c 2010-05-13 04:13:38 UTC (rev 48799) @@ -368,7 +368,7 @@ evry_conf->quick_nav = 1; evry_conf->view_mode = VIEW_MODE_DETAIL; evry_conf->view_zoom = 0; - evry_conf->cycle_mode = 0; + evry_conf->cycle_mode = 1; evry_conf->history_sort_mode = 0; evry_conf->first_run = EINA_TRUE; IFMODCFGEND; Modified: trunk/e/src/modules/everything/evry_plug_aggregator.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_aggregator.c 2010-05-13 03:49:23 UTC (rev 48798) +++ trunk/e/src/modules/everything/evry_plug_aggregator.c 2010-05-13 04:13:38 UTC (rev 48799) @@ -254,7 +254,10 @@ p = EVRY_PLUGIN_NEW(Plugin, N_("All"), NULL, 0, NULL, _finish, _fetch, _free); p->history = EINA_FALSE; - evry_plugin_register(p, type, -1); + if (evry_plugin_register(p, type, -1)) + { + p->config->view_mode = VIEW_MODE_THUMB; + } GET_PLUGIN(pa, p); pa->selector = sel; Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-13 03:49:23 UTC (rev 48798) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-13 04:13:38 UTC (rev 48799) @@ -690,9 +690,8 @@ { prev = sd->cur_item->y / sd->cur_item->h; sd->cur_item->selected = EINA_FALSE; - if (!sd->cur_item->item->marked) - edje_object_signal_emit(sd->cur_item->frame, - "e,state,unselected", "e"); + edje_object_signal_emit(sd->cur_item->frame, + "e,state,unselected", "e"); } sd->cur_item = NULL; |
From: Enlightenment S. <no-...@en...> - 2010-05-14 06:35:15
|
Log: use one window - more freedom to the aadvarks! Author: jeffdameth Date: 2010-05-13 23:35:06 -0700 (Thu, 13 May 2010) New Revision: 48852 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_plug_view_thumb.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-14 05:51:11 UTC (rev 48851) +++ trunk/e/data/themes/default.edc 2010-05-14 06:35:06 UTC (rev 48852) @@ -32787,75 +32787,89 @@ group { name: "e/modules/everything/main"; images { - image: "base_bg.png" COMP; - image: "inset_sunk.png" COMP; - image: "menu_sel_bg.png" COMP; - image: "menu_sel_fg.png" COMP; - image: "everything_drop.png" COMP; + image: "base_bg.png" COMP; + image: "inset_sunk.png" COMP; + image: "menu_sel_bg.png" COMP; + image: "menu_sel_fg.png" COMP; + image: "everything_drop.png" COMP; + image: "everything_bar.png" COMP; + image: "everything_box.png" COMP; + image: "vgrad_dark.png" COMP; + } data.item: "shaped" "1"; data.item: "shadow_offset" "50"; parts { - part { - name: "win"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - min: 386 118; - } - } - part { - name: "frame"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - } - description { - state: "composite" 0.0; - visible: 0; - rel1.offset: 50 50; - rel2.offset: -50 -51; - } - } - part { - name: "shadow"; - description { - state: "default" 0.0; - visible: 0; - image { - normal: "everything_drop.png"; - middle: 0; - border: 50 50 50 50; - } - rel1.offset: 4 4; - rel2.offset: -5 -5; - fill.smooth: 0; - color: 255 255 255 220; - } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "bg"; - description { - state: "default" 0.0; + part { + name: "win"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + min: 386 118; + rel2.relative: 1.0 0.0; + rel2.offset: -1 118; + } + description { + state: "composite" 0.0; + visible: 0; + min: 486 218; + rel2.relative: 1.0 0.0; + rel2.offset: -1 218; + } + } + part { + name: "frame"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "win"; + rel2.to: "win"; + } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + rel1.offset: 50 50; + rel2.offset: -50 -51; + } + } + part { + name: "shadow"; + description { + state: "default" 0.0; + visible: 0; + image { + normal: "everything_drop.png"; + middle: 0; + border: 50 50 50 50; + } + rel1.to: "win"; + rel2.to: "win"; + + rel1.offset: 4 4; + rel2.offset: -5 -5; + fill.smooth: 1; + color: 255 255 255 255; + } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "bg"; + description { + state: "default" 0.0; max: 999 118; + rel1.to: "frame"; + rel2.to: "frame"; image { normal: "bt_base2.png"; border: 7 7 5 5; } } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - rel1.offset: 50 50; - rel2.offset: -50 -51; - } } part { name: "border_bg"; @@ -32863,7 +32877,6 @@ description { state: "default" 0.0; color: 255 255 255 66; - //32; rel1.to: "bg"; rel1.offset: 2 4; rel2.to: "bg"; @@ -33012,310 +33025,39 @@ } } } - } - programs { - program { - name: "object_selector_hide"; - signal: "e,state,object_selector_hide"; - source: "e"; - action: STATE_SET "default" 0.00; - transition: SINUSOIDAL 0.15; - target: "e.swallow.object_selector"; - target: "e.swallow.subject_selector"; - target: "e.swallow.action_selector"; - } - program { - name: "object_selector_show"; - signal: "e,state,object_selector_show"; - source: "e"; - action: STATE_SET "wide" 0.00; - transition: SINUSOIDAL 0.2; - target: "e.swallow.object_selector"; - target: "e.swallow.subject_selector"; - target: "e.swallow.action_selector"; - } - program { - name: "composite_mode"; - signal: "e,state,composited"; - source: "e"; - action: STATE_SET "composite" 0.0; - target: "frame"; - target: "shadow"; - target: "bg"; - } - } - } - group { - name: "e/modules/everything/selector_item"; - images { - image: "everything_border.png" COMP; - image: "everything_item_bg.png" COMP; - } - parts { - part { - name: "clip"; - type: RECT; - mouse_events: 0; - description { - state: "default" 0.0; - } - } - part { - name: "border_bg"; - clip_to: "clip"; - mouse_events: 0; - description { - state: "default" 0.0; - color: 255 255 255 10; - //32; - rel1.offset: 2 2; - rel2.offset: -3 -3; - image { - normal: "everything_item_bg.png"; - border: 5 5 5 5; - } - } - description { - state: "selected" 0.0; - inherit: "default" 0.0; - color: 255 255 255 36; - } - } - part { - name: "border"; - clip_to: "clip"; - mouse_events: 0; - description { - state: "default" 0.0; - color: 255 255 255 80; - image { - normal: "everything_border.png"; - border: 10 10 10 10; - } - } - description { - state: "selected" 0.0; - inherit: "default" 0.0; - color: 255 255 255 160; - } - } - part { - name: "inner_clip"; - type: RECT; - clip_to: "clip"; - description { - state: "default" 0.0; - rel1.offset: 10 10; - rel2.offset: -11 -11; - } - } - part { - name: "icon_clip"; - type: RECT; - clip_to: "inner_clip"; - description { - state: "default" 0.0; - color: 255 255 255 255; - } - description { - state: "faded" 0.0; - color: 255 255 255 120; - } - } - part { - name: "e.swallow.icons"; - type: SWALLOW; - clip_to: "icon_clip"; - description { - state: "default" 0.0; - min: 64 64; - max: 64 64; - aspect: 1.0 1.0; - align: 0.0 0.5; - aspect_preference: VERTICAL; - rel1 { - relative: 0.0 0.0; - offset: 15 15; - } - rel2 { - relative: 0.0 0.0; - offset: 79 79; - } - } - } - part { - name: "e.swallow.thumb"; - type: SWALLOW; - clip_to: "icon_clip"; - description { - state: "default" 0.0; - min: 86 64; - max: 86 64; - aspect: 1.0 1.0; - align: 0.0 0.5; - aspect_preference: VERTICAL; - rel1 { - relative: 0.0 0.0; - offset: 15 15; - } - rel2 { - relative: 0.0 0.0; - offset: 100 79; - } - color: 255 255 255 0; - } - } - part { - name: "e.text.label"; - type: TEXT; - clip_to: "inner_clip"; - effect: SOFT_SHADOW; - mouse_events: 0; - scale: 1; - description { - state: "default" 0.0; - rel1 { - offset: 20 6; - relative: 0.0 0.6; - } - rel2.offset: -11 -2; - color: 205 205 205 255; - color3: 40 40 40 64; - text { - font: "Sans:style=Bold"; - size: 9; - min: 0 0; - align: 0.5 0.5; - } - } - description { - state: "selected" 0.0; - inherit: "default" 0.0; - color: 255 255 255 255; - } - } - part { - name: "e.text.plugin"; - type: TEXT; - clip_to: "inner_clip"; - effect: SOFT_SHADOW; - mouse_events: 0; - scale: 1; - description { - state: "default" 0.0; - rel1 { - offset: 6 12; - relative: 1.0 0.0; - to_x: "e.swallow.icons"; - } - rel2.offset: -13 -2; - color: 210 210 210 255; - color3: 0 0 0 0; - text { - font: "Sans"; - size: 10; - min: 0 1; - align: 1.0 0.0; - } - } - } - } - programs { - program { - name: "sel"; - signal: "e,state,selected"; - source: "e"; - action: STATE_SET "selected" 0.0; - transition: SINUSOIDAL 0.2; - target: "border"; - target: "border_bg"; - target: "e.text.label"; - } - program { - name: "unsel"; - signal: "e,state,unselected"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: SINUSOIDAL 0.3; - target: "border"; - target: "border_bg"; - target: "e.text.label"; - } - program { - name: "update"; - signal: "e,signal,update"; - source: "e"; - action: STATE_SET "faded" 0.0; - transition: DECELERATE 0.1; - target: "icon_clip"; - after: "show_icon"; - } - program { - name: "show_icon"; - action: STATE_SET "default" 0.0; - transition: ACCELERATE 0.3; - target: "icon_clip"; - } - program { - name: "thumb_show"; - signal: "e,action,thumb,show"; - source: "e"; - action: STATE_SET "faded" 0.0; - /* transition: SINUSOIDAL 0.05; */ - target: "icon_clip"; - after: "thumb_show2"; - } - program { - name: "thumb_show2"; - action: STATE_SET "default" 0.0; - transition: SINUSOIDAL 0.2; - target: "icon_clip"; - } - } - } -///////////////////////////////////////////////////////////////////////////// -/*** EVERYTHING LIST POPUP ***/ - group { - name: "e/modules/everything/list"; - images { - image: "base_bg.png" COMP; - image: "inset_sunk.png" COMP; - image: "menu_sel_bg.png" COMP; - image: "menu_sel_fg.png" COMP; - image: "everything_bar.png" COMP; - image: "everything_box.png" COMP; - image: "vgrad_dark.png" COMP; - image: "everything_drop.png" COMP; - } - /* offset to main popup */ - data.item: "offset_y" "-2"; - data.item: "offset_x" "12"; - /* data.item: "offset_composite_y" "-52"; - * data.item: "offset_composite_x" "16"; */ - data.item: "shadow_offset" "50"; - data.item: "shaped" "1"; - parts { + /*************** list ***************/ + part { - name: "win"; + name: "list_win"; type: RECT; description { state: "default" 0.0; visible: 0; min: 400 255; + rel1 { + to_y: "frame"; + offset: 10 -3; + relative: 0.0 1.0; + } + rel2 { + offset: -11 -1; + } } } part { - name: "frame"; + name: "list_frame"; type: RECT; description { state: "default" 0.0; visible: 0; + rel1.to: "list_win"; + rel2.to: "list_win"; } description { state: "composite" 0.0; - visible: 0; + inherit: "default" 0.0; rel1.offset: 50 0; rel2.offset: -51 -40; } @@ -33325,8 +33067,8 @@ type: RECT; description { state: "default" 0.0; - rel1.to: "shadow"; - rel2.to: "shadow"; + rel1.to: "list_shadow"; + rel2.to: "list_shadow"; color: 255 255 255 0; } description { @@ -33336,16 +33078,17 @@ } } part { - name: "shadow"; + name: "list_shadow"; clip_to: "shadow_clip"; description { state: "default" 0.0; visible: 0; + rel1.to: "list_win"; rel1.offset: 0 -50; rel2 { relative: 1.0 1.0; - to_y: "base"; - offset: -1 47; + to: "base"; + offset: 47 47; } image { normal: "everything_drop.png"; @@ -33367,11 +33110,11 @@ state: "default" 0.0; rel1 { relative: 0.0 1.0; - to_x: "frame"; + to_x: "list_frame"; to_y: "input_base"; } rel2 { - to_x: "frame"; + to_x: "list_frame"; to_y: "input_base"; } } @@ -33379,7 +33122,7 @@ state: "visible" 0.0; inherit: "default" 0.0; rel2 { - to: "frame"; + to: "list_frame"; offset: -1 -1; } } @@ -33389,11 +33132,16 @@ type: RECT; description { state: "default" 0.0; - rel1.to_x: "base"; + rel1 { + to_y: "list_win"; + to_x: "base"; + } + rel2 { relative: 1.0 0.0; - to_x: "base"; - offset: -1 1; + to_y: "list_win"; + to_x: "base"; + offset: -1 1; } } description { @@ -33403,7 +33151,7 @@ } } part { - name: "bg"; + name: "list_win_bg"; type: RECT; description { state: "default" 0.0; @@ -33412,12 +33160,6 @@ rel2.to: "base"; rel2.offset: -1 -3; - - /* image { - * normal: "base_bg.png"; - * border: 2 2 2 2; - * } - * fill.smooth: 1; */ color: 225 225 225 255; } } @@ -33736,7 +33478,7 @@ description { state: "default" 0.0; rel1 { - to_x: "base"; + to: "base"; } rel2 { to: "base"; @@ -33754,6 +33496,37 @@ } programs { program { + name: "object_selector_hide"; + signal: "e,state,object_selector_hide"; + source: "e"; + action: STATE_SET "default" 0.00; + transition: SINUSOIDAL 0.15; + target: "e.swallow.object_selector"; + target: "e.swallow.subject_selector"; + target: "e.swallow.action_selector"; + } + program { + name: "object_selector_show"; + signal: "e,state,object_selector_show"; + source: "e"; + action: STATE_SET "wide" 0.00; + transition: SINUSOIDAL 0.2; + target: "e.swallow.object_selector"; + target: "e.swallow.subject_selector"; + target: "e.swallow.action_selector"; + } + program { + name: "composite_mode"; + signal: "e,state,composited"; + source: "e"; + action: STATE_SET "composite" 0.0; + target: "win"; + target: "frame"; + target: "shadow"; + target: "list_frame"; + target: "list_shadow"; + } + program { name: "show_list"; signal: "e,state,list_show"; source: "e"; @@ -33808,16 +33581,237 @@ /* transition: SINUSOIDAL 0.15; */ target: "bar_clip"; } + } + } + group { + name: "e/modules/everything/selector_item"; + images { + image: "everything_border.png" COMP; + image: "everything_item_bg.png" COMP; + } + parts { + part { + name: "clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + } + } + part { + name: "border_bg"; + clip_to: "clip"; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 10; + //32; + rel1.offset: 2 2; + rel2.offset: -3 -3; + image { + normal: "everything_item_bg.png"; + border: 5 5 5 5; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 36; + } + } + part { + name: "border"; + clip_to: "clip"; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 80; + image { + normal: "everything_border.png"; + border: 10 10 10 10; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 160; + } + } + part { + name: "inner_clip"; + type: RECT; + clip_to: "clip"; + description { + state: "default" 0.0; + rel1.offset: 10 10; + rel2.offset: -11 -11; + } + } + part { + name: "icon_clip"; + type: RECT; + clip_to: "inner_clip"; + description { + state: "default" 0.0; + color: 255 255 255 255; + } + description { + state: "faded" 0.0; + color: 255 255 255 120; + } + } + part { + name: "e.swallow.icons"; + type: SWALLOW; + clip_to: "icon_clip"; + description { + state: "default" 0.0; + min: 64 64; + max: 64 64; + aspect: 1.0 1.0; + align: 0.0 0.5; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 15 15; + } + rel2 { + relative: 0.0 0.0; + offset: 79 79; + } + } + } + part { + name: "e.swallow.thumb"; + type: SWALLOW; + clip_to: "icon_clip"; + description { + state: "default" 0.0; + min: 86 64; + max: 86 64; + aspect: 1.0 1.0; + align: 0.0 0.5; + aspect_preference: VERTICAL; + rel1 { + relative: 0.0 0.0; + offset: 15 15; + } + rel2 { + relative: 0.0 0.0; + offset: 100 79; + } + color: 255 255 255 0; + } + } + part { + name: "e.text.label"; + type: TEXT; + clip_to: "inner_clip"; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1 { + offset: 20 6; + relative: 0.0 0.6; + } + rel2.offset: -11 -2; + color: 205 205 205 255; + color3: 40 40 40 64; + text { + font: "Sans:style=Bold"; + size: 9; + min: 0 0; + align: 0.5 0.5; + } + } + description { + state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "e.text.plugin"; + type: TEXT; + clip_to: "inner_clip"; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + rel1 { + offset: 6 12; + relative: 1.0 0.0; + to_x: "e.swallow.icons"; + } + rel2.offset: -13 -2; + color: 210 210 210 255; + color3: 0 0 0 0; + text { + font: "Sans"; + size: 10; + min: 0 1; + align: 1.0 0.0; + } + } + } + } + programs { program { - name: "composite_mode"; - signal: "e,state,composited"; + name: "sel"; + signal: "e,state,selected"; source: "e"; - action: STATE_SET "composite" 0.0; - target: "shadow"; - target: "frame"; + action: STATE_SET "selected" 0.0; + transition: SINUSOIDAL 0.2; + target: "border"; + target: "border_bg"; + target: "e.text.label"; } + program { + name: "unsel"; + signal: "e,state,unselected"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.3; + target: "border"; + target: "border_bg"; + target: "e.text.label"; + } + program { + name: "update"; + signal: "e,signal,update"; + source: "e"; + action: STATE_SET "faded" 0.0; + transition: DECELERATE 0.1; + target: "icon_clip"; + after: "show_icon"; + } + program { + name: "show_icon"; + action: STATE_SET "default" 0.0; + transition: ACCELERATE 0.3; + target: "icon_clip"; + } + program { + name: "thumb_show"; + signal: "e,action,thumb,show"; + source: "e"; + action: STATE_SET "faded" 0.0; + /* transition: SINUSOIDAL 0.05; */ + target: "icon_clip"; + after: "thumb_show2"; + } + program { + name: "thumb_show2"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.2; + target: "icon_clip"; + } } } + group { name: "e/modules/everything/tab_item"; images { Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-14 05:51:11 UTC (rev 48851) +++ trunk/e/src/modules/everything/evry.c 2010-05-14 06:35:06 UTC (rev 48852) @@ -7,14 +7,13 @@ */ #define INPUTLEN 256 -#define MATCH_LAG 0.15 -#define INITIAL_MATCH_LAG 0.3 +#define MATCH_LAG 0.25 +#define INITIAL_MATCH_LAG 0.4 /* #undef DBG * #define DBG(...) ERR(__VA_ARGS__) */ typedef struct _Evry_Window Evry_Window; -typedef struct _Evry_List_Window Evry_List_Window; struct _Evry_Window { @@ -23,13 +22,8 @@ Eina_Bool request_selection; Eina_Bool plugin_dedicated; -}; -struct _Evry_List_Window -{ - E_Popup *popup; - Evas_Object *o_main; - Eina_Bool visible; + Eina_Bool visible; }; static void _evry_matches_update(Evry_Selector *sel, int async); @@ -59,9 +53,6 @@ static Evry_Window *_evry_window_new(E_Zone *zone); static void _evry_window_free(Evry_Window *win); - -static Evry_List_Window *_evry_list_win_new(E_Zone *zone); -static void _evry_list_win_free(Evry_List_Window *win); static void _evry_list_win_show(void); static void _evry_list_win_update(Evry_State *s); static void _evry_list_win_clear(int hide); @@ -81,11 +72,11 @@ /* local subsystem globals */ static Evry_Window *win = NULL; -static Evry_List_Window *list = NULL; static Ecore_X_Window input_window = 0; static Eina_List *handlers = NULL; static Evry_Selector *selector = NULL; +static Ecore_Timer *show_timer = NULL; Evry_Selector **selectors = NULL; @@ -126,12 +117,10 @@ return 1; } -static Ecore_Timer *_show_timer = NULL; - static int _cb_show_timer(void *data) { - _show_timer = NULL; + show_timer = NULL; if (evry_conf->views && selector->state) { @@ -145,7 +134,7 @@ } else { - s->view = view->create(view, s, list->o_main); + s->view = view->create(view, s, win->o_main); _evry_view_show(s->view); } } @@ -162,6 +151,9 @@ int evry_show(E_Zone *zone, const char *params) { + E_OBJECT_CHECK_RETURN(zone, 0); + E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0); + if (win) { Eina_List *l; @@ -182,24 +174,25 @@ return 1; } - E_OBJECT_CHECK_RETURN(zone, 0); - E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0); - input_window = ecore_x_window_input_new(zone->container->win, zone->x, zone->y, zone->w, zone->h); ecore_x_window_show(input_window); if (!e_grabinput_get(input_window, 1, input_window)) - goto error1; - + { + return 0; + } + win = _evry_window_new(zone); - if (!win) goto error2; + if (!win) + { + ecore_x_window_free(input_window); + input_window = 0; + return 0; + } - list = _evry_list_win_new(zone); - if (!list) goto error2; + win->visible = EINA_FALSE; - list->visible = EINA_FALSE; - evry_history_load(); if (params) @@ -222,36 +215,20 @@ (EVRY_EVENT_ITEM_CHANGED, _evry_cb_item_changed, NULL)); - e_popup_layer_set(list->popup, 255); e_popup_layer_set(win->popup, 255); e_popup_show(win->popup); - e_popup_show(list->popup); _evry_selector_subjects_get(params); _evry_selector_update(selectors[0]); _evry_selector_activate(selectors[0]); if (!evry_conf->hide_input) - edje_object_signal_emit(list->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); if (!evry_conf->hide_list) - _show_timer = ecore_timer_add(0.01, _cb_show_timer, NULL); + show_timer = ecore_timer_add(0.01, _cb_show_timer, NULL); return 1; - - error2: - if (win) - _evry_window_free(win); - if (list) - _evry_list_win_free(list); - win = NULL; - list = NULL; - - error1: - ecore_x_window_free(input_window); - input_window = 0; - - return 0; } void @@ -295,12 +272,11 @@ return; } - /* _evry_view_clear(selector->state); */ - if (_show_timer) - ecore_timer_del(_show_timer); - _show_timer = NULL; + if (show_timer) + ecore_timer_del(show_timer); + show_timer = NULL; - list->visible = EINA_FALSE; + win->visible = EINA_FALSE; _evry_selector_free(selectors[0]); _evry_selector_free(selectors[1]); _evry_selector_free(selectors[2]); @@ -309,9 +285,6 @@ selectors = NULL; selector = NULL; - _evry_list_win_free(list); - list = NULL; - _evry_window_free(win); win = NULL; @@ -466,7 +439,6 @@ if (sel->update_timer) ecore_timer_del(sel->update_timer); - /* _evry_timer_cb_actions_get(it); */ sel->update_timer = ecore_timer_add(0.1, _evry_timer_cb_actions_get, it); } @@ -522,7 +494,7 @@ EAPI int evry_list_win_show(void) { - if (list->visible) return 0; + if (win->visible) return 0; _evry_list_win_show(); return 1; @@ -628,114 +600,34 @@ /* local subsystem functions */ -static Evry_List_Window * -_evry_list_win_new(E_Zone *zone) -{ - int x, y, w, mw, mh; - Evry_List_Window *list_win; - E_Popup *popup; - Evas_Object *o; - const char *tmp; - int offset_x, offset_y, offset_s = 0; - - if (!evry_conf->views) return NULL; - - popup = e_popup_new(zone, 0, 0, 1, 1); - if (!popup) return NULL; - - list_win = E_NEW(Evry_List_Window, 1); - if (!list_win) - { - e_object_del(E_OBJECT(popup)); - return NULL; - } - list_win->popup = popup; - - o = edje_object_add(popup->evas); - list_win->o_main = o; - e_theme_edje_object_set(o, "base/theme/everything", - "e/modules/everything/list"); - - tmp = edje_object_data_get(o, "offset_x"); - offset_x = tmp ? atoi(tmp) : 0; - tmp = edje_object_data_get(o, "offset_y"); - offset_y = tmp ? atoi(tmp) : 0; - - if (e_config->use_composite) - { - edje_object_signal_emit(o, "e,state,composited", "e"); - edje_object_message_signal_process(o); - edje_object_calc_force(o); - - tmp = edje_object_data_get(o, "shadow_offset"); - offset_s = tmp ? atoi(tmp) : 0; - offset_y -= offset_s; - } - - edje_object_size_min_calc(o, &mw, &mh); - - if (mh == 0) mh = 200; - if (mw == 0) mw = win->popup->w / 2; - - evry_conf->min_h = mh; - if (evry_conf->height > mh) - mh = evry_conf->height; - - x = win->popup->x + offset_x; - y = (win->popup->y + win->popup->h) + offset_y; - - w = win->popup->w - offset_x*2; - mh += offset_s; - e_popup_move_resize(popup, x, y, w, mh); - - o = list_win->o_main; - evas_object_move(o, 0, 0); - evas_object_resize(o, list_win->popup->w, list_win->popup->h); - evas_object_show(o); - e_popup_edje_bg_object_set(popup, o); - - return list_win; -} - static void -_evry_list_win_free(Evry_List_Window *list_win) -{ - e_popup_hide(list_win->popup); - evas_event_freeze(list_win->popup->evas); - evas_object_del(list_win->o_main); - e_object_del(E_OBJECT(list_win->popup)); - - E_FREE(list_win); -} - -static void _evry_list_win_show(void) { - if (list->visible) return; + if (win->visible) return; - list->visible = EINA_TRUE; + win->visible = EINA_TRUE; _evry_list_win_update(selector->state); - edje_object_signal_emit(list->o_main, "e,state,list_show", "e"); - edje_object_signal_emit(list->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "e,state,list_show", "e"); + edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); } static void _evry_list_win_clear(int hide) { - if (!list->visible) return; + if (!win->visible) return; if (selector->state) _evry_view_clear(selector->state); if (hide) { - list->visible = EINA_FALSE; - edje_object_signal_emit(list->o_main, "e,state,list_hide", "e"); + win->visible = EINA_FALSE; + edje_object_signal_emit(win->o_main, "e,state,list_hide", "e"); if (evry_conf->hide_input && (!selector->state || !selector->state->input || strlen(selector->state->input) == 0)) - edje_object_signal_emit(list->o_main, "e,state,entry_hide", "e"); + edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); } } @@ -782,6 +674,10 @@ mw = evry_conf->width; evry_conf->width = mw; + evry_conf->min_h = mh; + if (evry_conf->height > mh) + mh = evry_conf->height; + mw += offset_s*2; mh += offset_s*2; x = (zone->w * evry_conf->rel_x) - (mw / 2); @@ -866,7 +762,7 @@ if (sel->o_main) evas_object_del(sel->o_main); - if (list->visible && (sel == selector)) + if (win->visible && (sel == selector)) _evry_view_clear(sel->state); while (sel->states) @@ -1110,7 +1006,7 @@ _evry_list_win_update(Evry_State *s) { if (s != selector->state) return; - if (!list->visible) return; + if (!win->visible) return; /* if (s->changed) */ _evry_view_update(s, s->plugin); @@ -1360,9 +1256,9 @@ _evry_selector_update(sel); - if (view && list->visible) + if (view && win->visible) { - s->view = view->create(view, s, list->o_main); + s->view = view->create(view, s, win->o_main); if (s->view) { _evry_view_show(s->view); @@ -1402,7 +1298,7 @@ { Evry_State *s = selector->state; - if (_show_timer) + if (show_timer) _cb_show_timer(NULL); if (selector->update_timer) @@ -1646,7 +1542,7 @@ ev->key = key; } - if (!list->visible && (!strcmp(key, "Down"))) + if (!win->visible && (!strcmp(key, "Down"))) { _evry_list_win_show(); } @@ -1779,17 +1675,15 @@ static void _evry_update_text_label(Evry_State *s) { - if (!list->visible && evry_conf->hide_input) + if (!win->visible && evry_conf->hide_input) { if (strlen(s->inp) > 0) - edje_object_signal_emit(list->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); else - edje_object_signal_emit(list->o_main, "e,state,entry_hide", "e"); + edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); } edje_object_part_text_set(win->o_main, "e.text.label", s->inp); - edje_object_part_text_set(list->o_main, "e.text.label", s->inp); - } static void @@ -1807,7 +1701,7 @@ sel->update_timer = ecore_timer_add(MATCH_LAG, _evry_cb_update_timer, sel); - edje_object_signal_emit(list->o_main, "e,signal,update", "e"); + edje_object_signal_emit(win->o_main, "e,signal,update", "e"); } } @@ -1845,8 +1739,8 @@ _evry_update(sel, 1); - if (!list->visible && evry_conf->hide_input) - edje_object_signal_emit(list->o_main, "e,state,entry_hide", "e"); + if (!win->visible && evry_conf->hide_input) + edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); return 1; } @@ -2010,13 +1904,13 @@ if (v->o_list) { - edje_object_part_swallow(list->o_main, "e.swallow.list", v->o_list); + edje_object_part_swallow(win->o_main, "e.swallow.list", v->o_list); evas_object_show(v->o_list); } if (v->o_bar) { - edje_object_part_swallow(list->o_main, "e.swallow.bar", v->o_bar); + edje_object_part_swallow(win->o_main, "e.swallow.bar", v->o_bar); evas_object_show(v->o_bar); } } @@ -2030,13 +1924,13 @@ if (v->o_list) { - edje_object_part_unswallow(list->o_main, v->o_list); + edje_object_part_unswallow(win->o_main, v->o_list); evas_object_hide(v->o_list); } if (v->o_bar) { - edje_object_part_unswallow(list->o_main, v->o_bar); + edje_object_part_unswallow(win->o_main, v->o_bar); evas_object_hide(v->o_bar); } } @@ -2044,12 +1938,12 @@ static void _evry_view_update(Evry_State *s, Evry_Plugin *p) { - if (!list->visible) return; + if (!win->visible) return; if (!s->view) { Evry_View *view = evry_conf->views->data; - s->view = view->create(view, s, list->o_main); + s->view = view->create(view, s, win->o_main); _evry_view_show(s->view); } @@ -2086,7 +1980,7 @@ { if (view->trigger && !strncmp(trigger, view->trigger, 1) && (!s->view || (view->id != s->view->id)) && - (v = view->create(view, s, list->o_main))) + (v = view->create(view, s, win->o_main))) { triggered = EINA_TRUE; goto found; @@ -2100,7 +1994,7 @@ else { view = evry_conf->views->data; - v = view->create(view, s, list->o_main); + v = view->create(view, s, win->o_main); goto found; } @@ -2113,7 +2007,7 @@ { if ((!view->trigger) && ((!s->view || (view->id != s->view->id)) && - (v = view->create(view, s, list->o_main)))) + (v = view->create(view, s, win->o_main)))) goto found; } } Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-14 05:51:11 UTC (rev 48851) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-14 06:35:06 UTC (rev 48852) @@ -1326,7 +1326,7 @@ } goto end; } - else if (!strcmp(key, "Return")) + else if (!ev->modifiers && !strcmp(key, "Return")) { if (v->mode == VIEW_MODE_THUMB) { |
From: Enlightenment S. <no-...@en...> - 2010-05-14 06:49:29
|
Log: set better defaults Author: jeffdameth Date: 2010-05-13 23:49:20 -0700 (Thu, 13 May 2010) New Revision: 48853 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-14 06:35:06 UTC (rev 48852) +++ trunk/e/data/themes/default.edc 2010-05-14 06:49:20 UTC (rev 48853) @@ -32806,14 +32806,13 @@ description { state: "default" 0.0; visible: 0; - min: 386 118; + min: 286 118; rel2.relative: 1.0 0.0; rel2.offset: -1 118; } description { state: "composite" 0.0; visible: 0; - min: 486 218; rel2.relative: 1.0 0.0; rel2.offset: -1 218; } @@ -33035,7 +33034,7 @@ description { state: "default" 0.0; visible: 0; - min: 400 255; + min: 300 155; rel1 { to_y: "frame"; offset: 10 -3; Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2010-05-14 06:35:06 UTC (rev 48852) +++ trunk/e/src/modules/everything/e_mod_main.c 2010-05-14 06:49:20 UTC (rev 48853) @@ -362,8 +362,8 @@ IFMODCFG(0x0001); evry_conf->rel_x = 0.5; evry_conf->rel_y = 0.32; - evry_conf->width = 445; - evry_conf->height = 300; + evry_conf->width = 435; + evry_conf->height = 415; evry_conf->scroll_animate = 1; evry_conf->scroll_speed = 10.0; evry_conf->hide_input = 0; @@ -375,7 +375,13 @@ evry_conf->history_sort_mode = 0; evry_conf->first_run = EINA_TRUE; IFMODCFGEND; - + + IFMODCFG(0x0002); + evry_conf->width = 435; + evry_conf->height = 415; + evry_conf->rel_y = 0.40; + IFMODCFGEND; + evry_conf->version = MOD_CONFIG_FILE_VERSION; } Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2010-05-14 06:35:06 UTC (rev 48852) +++ trunk/e/src/modules/everything/e_mod_main.h 2010-05-14 06:49:20 UTC (rev 48853) @@ -4,7 +4,7 @@ #define E_MOD_MAIN_H #define MOD_CONFIG_FILE_EPOCH 0x0001 -#define MOD_CONFIG_FILE_GENERATION 0x0001 +#define MOD_CONFIG_FILE_GENERATION 0x0002 #define MOD_CONFIG_FILE_VERSION \ ((MOD_CONFIG_FILE_EPOCH << 16) | MOD_CONFIG_FILE_GENERATION) Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-14 06:35:06 UTC (rev 48852) +++ trunk/e/src/modules/everything/evry.c 2010-05-14 06:49:20 UTC (rev 48853) @@ -670,14 +670,14 @@ edje_object_size_min_calc(o, &mw, &mh); + evry_conf->min_w = mw; if (evry_conf->width > mw) mw = evry_conf->width; - evry_conf->width = mw; evry_conf->min_h = mh; if (evry_conf->height > mh) mh = evry_conf->height; - + mw += offset_s*2; mh += offset_s*2; x = (zone->w * evry_conf->rel_x) - (mw / 2); |
From: Enlightenment S. <no-...@en...> - 2010-05-17 23:15:07
|
Log: make evrything handle mouse events. - double click on item runs action, right click runs action and keep evry open - same with selectors - mouse down and move 150px browses that item. and back. TODO needs an indicator - mouse wheel selects next/prev on plugin bar or selectors Author: jeffdameth Date: 2010-05-17 16:15:00 -0700 (Mon, 17 May 2010) New Revision: 48949 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_plug_view_thumb.c trunk/e/src/modules/everything/evry_util.c trunk/e/src/modules/everything/evry_view_plugin_tabs.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/data/themes/default.edc 2010-05-17 23:15:00 UTC (rev 48949) @@ -32800,523 +32800,74 @@ data.item: "shaped" "1"; data.item: "shadow_offset" "50"; parts { - - /*************** list ***************/ - - part { - name: "list_win"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - min: 300 155; - rel1 { - to_y: "frame"; - offset: 10 -3; - relative: 0.0 1.0; - } - rel2 { - offset: -11 -1; - } - } - } - part { - name: "list_frame"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "list_win"; - rel2.to: "list_win"; - } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - rel1.offset: 50 0; - rel2.offset: -51 -40; - } - } - part { - name: "shadow_clip"; - type: RECT; - description { - state: "default" 0.0; - rel1.to: "list_shadow"; - rel2.to: "list_shadow"; - color: 255 255 255 0; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - color: 255 255 255 255; - } - } - part { - name: "list_shadow"; - clip_to: "shadow_clip"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "list_win"; - rel1.offset: 0 -50; - rel2 { - relative: 1.0 1.0; - to: "base"; - offset: 47 47; - } - image { - normal: "everything_drop.png"; - middle: 0; - border: 50 50 50 50; - } - fill.smooth: 0; - } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "base"; - type: RECT; - description { - state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - to_x: "list_frame"; - to_y: "input_base"; - } - rel2 { - to_x: "list_frame"; - to_y: "input_base"; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - rel2 { - to: "list_frame"; - offset: -1 -1; - } - } - } - part { - name: "input_base"; - type: RECT; - description { - state: "default" 0.0; - rel1 { - to_y: "list_win"; - to_x: "base"; - } - - rel2 { - relative: 1.0 0.0; - to_y: "list_win"; - to_x: "base"; - offset: -1 1; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - rel2.offset: -1 24; - } - } - part { - name: "list_win_bg"; - type: RECT; - description { - state: "default" 0.0; - rel1.to_x: "base"; - rel1.to_y: "input_base"; - - rel2.to: "base"; - rel2.offset: -1 -3; - color: 225 225 225 255; - } - } - part { - name: "bar_base"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - rel1 { - relative: 0.0 1.0; - to: "base"; - offset: 0 -26; - } - rel2 { - relative: 1.0 1.0; - to: "base"; - offset: -1 -2; - } - } - } - part { - name: "bar_clip"; - type: RECT; - description { - state: "default" 0.0; - rel1 { - to: "bar_base"; - offset: 2 2; - } - rel2 { - to: "bar_base"; - offset: -2 -2; - } - } - description { - state: "faded" 0.0; - inherit: "default" 0.0; - color: 255 255 255 0; - } - } - part { - name: "bar_bg"; - clip_to: "base"; - description { - state: "default" 0.0; - min: 32 25; - max: 9999 25; - fixed: 1 1; - rel1 { - offset: -1 2; - to: "bar_base"; - } - rel2 { - offset: -1 -5; - to: "bar_base"; - } - image { - normal: "everything_bar.png"; - border: 4 4 4 4; - } - color: 240 240 240 255; - } - } - part { - name: "e.swallow.bar"; - clip_to: "bar_clip"; - type: SWALLOW; - description { - state: "default" 0.0; - rel1.to: "bar_clip"; - rel1.offset: -1 0; - rel2.to: "bar_clip"; - rel2.offset: -1 -1; - } - } - part { - name: "bar_over2"; - clip_to: "base"; - description { - state: "default" 0.0; - rel1.to: "bar_bg"; - rel1.offset: -1 -2; - rel2.to: "bar_bg"; - rel2.offset: 1 1; - image { - normal: "bt_dis_shine.png"; - border: 4 4 4 4; - } - color: 255 255 255 235; - } - } - part { - name: "bar_over1"; - clip_to: "base"; - description { - state: "default" 0.0; - rel1.to: "bar_bg"; - rel1.offset: 0 -2; - rel2.to: "bar_bg"; - rel2.offset: 1 -1; - rel2.relative: 1.0 0.5; - image { - normal: "bt_dis_hilight.png"; - border: 4 4 4 0; - } - color: 255 255 255 128; - } - } - part { - name: "input_bg"; - clip_to: "input_base"; - description { - state: "default" 0.0; - fixed: 1 1; - min: 32 28; - max: 9999 28; - rel1 { - offset: -3 0; - to: "input_base"; - } - rel2 { - offset: 1 0; - to: "input_base"; - } - image { - normal: "bt_dis_base.png"; - border: 4 4 4 4; - } - color: 235 235 235 255; - } - } - part { - name: "e.text.label"; - type: TEXT; - effect: SHADOW; - scale: 1; - clip_to: "input_base"; - description { - state: "default" 0.0; - fixed: 0 1; - align: 0.0 0.5; - rel1 { - offset: 10 7; - to: "input_bg"; - } - rel2 { - relative: 0.0 1.0; - offset: 10 -5; - to: "input_bg"; - } - color: 0 0 0 255; - color3: 255 255 255 128; - text { - font: "Sans:style=Bold"; - size: 12; - align: 0.0 0.5; - min: 1 1; - } - } - } - part { - name: "input_over2"; - mouse_events: 0; - clip_to: "input_base"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "input_bg"; - rel2.to: "input_bg"; - image { - normal: "bt_dis_shine.png"; - border: 4 4 4 4; - } - color: 255 255 255 180; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "input_over1"; - mouse_events: 0; - clip_to: "input_base"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "input_bg"; - rel1.offset: -1 0; - rel2.to: "input_bg"; - rel2.offset: -1 4; - rel2.relative: 1.0 0.5; - image { - normal: "bt_dis_hilight.png"; - border: 4 4 4 0; - } - color: 255 255 255 100; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "list_clip"; - type: RECT; - clip_to: "base"; - description { - state: "default" 0.0; - color: 255 255 255 255; - fixed: 1 1; - rel1 { - relative: 0.0 0.0; - offset: 2 0; - to: "base"; - } - rel2 { - relative: 1.0 0.0; - offset: -3 0; - to_y: "bar_base"; - to_x: "base"; - } - } - } - part { - name: "list_bg"; - clip_to: "base"; - description { - state: "default" 0.0; - image.normal: "vgrad_dark.png"; - rel1 { - to: "list_clip"; - offset: 0 0; - } - rel2 { - to: "list_clip"; - offset: 0 0; - } - fill.smooth: 0; - } - } - part { - name: "e.swallow.list"; - type: SWALLOW; - clip_to: "list_clip"; - description { - state: "default" 0.0; - min: 32 170; - fixed: 1 1; - rel1 { - relative: 0.0 0.0; - offset: 0 3; - to: "list_clip"; - } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - to: "list_clip"; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - min: 32 150; - } - } - part { - name: "list_over"; - clip_to: "base"; - description { - state: "default" 0.0; - rel1 { - offset: -1 -1; - to: "list_bg"; - } - rel2 { - offset: -1 -1; - to: "list_bg"; - } - image { - normal: "inset_sunk.png"; - border: 7 7 7 7; - middle: 0; - } - fill.smooth : 0; - color: 200 200 200 255; - } - } - part { - name: "list_over2"; - clip_to: "base"; - description { - state: "default" 0.0; - rel1 { - offset: -1 -1; - to: "list_bg"; - } - rel2 { - offset: -1 -1; - to: "list_bg"; - } - image { - normal: "inset_sunk.png"; - border: 7 7 7 7; - middle: 0; - } - fill.smooth : 0; - color: 200 200 200 255; - } - } - part { - name: "box"; - description { - state: "default" 0.0; - rel1 { - to: "base"; - } - rel2 { - to: "base"; - offset: -1 -1; - } - image { - normal: "everything_box.png"; - border: 4 4 4 4; - middle: 0; - } - fill.smooth : 1; - color: 255 255 255 255; - } - } + /*************** list ***************/ part { - name: "win"; + name: "list_win"; type: RECT; description { state: "default" 0.0; visible: 0; - min: 286 118; - rel2.relative: 1.0 0.0; - rel2.offset: -1 118; + min: 300 155; + rel1 { + to_y: "frame"; + offset: 10 -3; + relative: 0.0 1.0; + } + rel2 { + offset: -11 -1; + } } + } + part { + name: "list_frame"; + type: RECT; description { - state: "composite" 0.0; + state: "default" 0.0; visible: 0; - rel2.relative: 1.0 0.0; - rel2.offset: -1 218; + rel1.to: "list_win"; + rel2.to: "list_win"; } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + rel1.offset: 50 0; + rel2.offset: -51 -40; + } } part { - name: "frame"; + name: "shadow_clip"; type: RECT; description { state: "default" 0.0; - visible: 0; - rel1.to: "win"; - rel2.to: "win"; + rel1.to: "list_shadow"; + rel2.to: "list_shadow"; + color: 255 255 255 0; } description { - state: "composite" 0.0; + state: "visible" 0.0; inherit: "default" 0.0; - rel1.offset: 50 50; - rel2.offset: -50 -51; + color: 255 255 255 255; } } part { - name: "shadow"; + name: "list_shadow"; + clip_to: "shadow_clip"; description { state: "default" 0.0; visible: 0; + rel1.to: "list_win"; + rel1.offset: 0 -50; + rel2 { + relative: 1.0 1.0; + to: "base"; + offset: 47 40; + } image { normal: "everything_drop.png"; middle: 0; border: 50 50 50 50; } - rel1.to: "win"; - rel2.to: "win"; - - rel1.offset: 4 4; - rel2.offset: -5 -5; fill.smooth: 1; - color: 255 255 255 255; } description { state: "composite" 0.0; @@ -33325,9 +32876,466 @@ } } part { - name: "bg"; + name: "base"; + type: RECT; description { state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + to_x: "list_frame"; + to_y: "input_base"; + } + rel2 { + to_x: "list_frame"; + to_y: "input_base"; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + rel2 { + to: "list_frame"; + offset: -1 -1; + } + } + } + part { + name: "input_base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + to_y: "list_win"; + to_x: "base"; + } + + rel2 { + relative: 1.0 0.0; + to_y: "list_win"; + to_x: "base"; + offset: -1 1; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + rel2.offset: -1 24; + } + } + part { + name: "list_win_bg"; + type: RECT; + description { + state: "default" 0.0; + rel1.to_x: "base"; + rel1.to_y: "input_base"; + + rel2.to: "base"; + rel2.offset: -1 -3; + color: 225 225 225 255; + } + } + part { + name: "bar_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 1.0; + to: "base"; + offset: 0 -26; + } + rel2 { + relative: 1.0 1.0; + to: "base"; + offset: -1 -2; + } + } + } + part { + name: "bar_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "bar_base"; + offset: 2 2; + } + rel2 { + to: "bar_base"; + offset: -2 -2; + } + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + color: 255 255 255 0; + } + } + part { + name: "bar_bg"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 32 25; + max: 9999 25; + fixed: 1 1; + rel1 { + offset: -1 2; + to: "bar_base"; + } + rel2 { + offset: -1 -5; + to: "bar_base"; + } + image { + normal: "everything_bar.png"; + border: 4 4 4 4; + } + color: 240 240 240 255; + } + } + part { + name: "e.swallow.bar"; + clip_to: "bar_clip"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1.to: "bar_clip"; + rel1.offset: -1 0; + rel2.to: "bar_clip"; + rel2.offset: -1 -1; + } + } + part { + name: "bar_over2"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "bar_bg"; + rel1.offset: -1 -2; + rel2.to: "bar_bg"; + rel2.offset: 1 1; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } + color: 255 255 255 235; + } + } + part { + name: "bar_over1"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "bar_bg"; + rel1.offset: 0 -2; + rel2.to: "bar_bg"; + rel2.offset: 1 -1; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 128; + } + } + part { + name: "input_bg"; + clip_to: "input_base"; + description { + state: "default" 0.0; + fixed: 1 1; + min: 32 28; + max: 9999 28; + rel1 { + offset: -3 0; + to: "input_base"; + } + rel2 { + offset: 1 0; + to: "input_base"; + } + image { + normal: "bt_dis_base.png"; + border: 4 4 4 4; + } + color: 235 235 235 255; + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SHADOW; + scale: 1; + clip_to: "input_base"; + description { + state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + rel1 { + offset: 10 7; + to: "input_bg"; + } + rel2 { + relative: 0.0 1.0; + offset: 10 -5; + to: "input_bg"; + } + color: 0 0 0 255; + color3: 255 255 255 128; + text { + font: "Sans:style=Bold"; + size: 12; + align: 0.0 0.5; + min: 1 1; + } + } + } + part { + name: "input_over2"; + mouse_events: 0; + clip_to: "input_base"; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel2.to: "input_bg"; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } + color: 255 255 255 180; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "input_over1"; + mouse_events: 0; + clip_to: "input_base"; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel1.offset: -1 0; + rel2.to: "input_bg"; + rel2.offset: -1 4; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 100; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "list_clip"; + type: RECT; + clip_to: "base"; + description { + state: "default" 0.0; + color: 255 255 255 255; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + offset: -3 0; + to_y: "bar_base"; + to_x: "base"; + } + } + } + part { + name: "list_bg"; + clip_to: "base"; + description { + state: "default" 0.0; + image.normal: "vgrad_dark.png"; + rel1 { + to: "list_clip"; + offset: 0 0; + } + rel2 { + to: "list_clip"; + offset: 0 0; + } + fill.smooth: 0; + } + } + part { + name: "e.swallow.list"; + type: SWALLOW; + clip_to: "list_clip"; + mouse_events: 1; + description { + state: "default" 0.0; + min: 32 170; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 0 3; + to: "list_clip"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to: "list_clip"; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + min: 32 150; + } + } + part { + name: "list_over"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + offset: -1 -1; + to: "list_bg"; + } + rel2 { + offset: -1 -1; + to: "list_bg"; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; + color: 200 200 200 255; + } + } + part { + name: "list_over2"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + offset: -1 -1; + to: "list_bg"; + } + rel2 { + offset: -1 -1; + to: "list_bg"; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; + color: 200 200 200 255; + } + } + part { + name: "box"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "base"; + } + rel2 { + to: "base"; + offset: -1 -1; + } + image { + normal: "everything_box.png"; + border: 4 4 4 4; + middle: 0; + } + fill.smooth : 1; + color: 255 255 255 255; + } + } + /*************** top ***************/ + part { + name: "win"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + min: 286 118; + rel2.relative: 1.0 0.0; + rel2.offset: -1 118; + } + description { + state: "composite" 0.0; + visible: 0; + rel2.relative: 1.0 0.0; + rel2.offset: -1 218; + } + } + part { + name: "frame"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "win"; + rel2.to: "win"; +} + description { + state: "composite" 0.0; + inherit: "default" 0.0; + rel1.offset: 50 50; + rel2.offset: -50 -51; + } + } + part { + name: "shadow"; + description { + state: "default" 0.0; + visible: 0; + image { + normal: "everything_drop.png"; + middle: 0; + border: 50 50 50 50; + } + rel1.to: "win"; + rel2.to: "win"; + + rel1.offset: 4 4; + rel2.offset: -5 -5; + fill.smooth: 0; + } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 200; + } + } + part { + name: "bg"; + description { + state: "default" 0.0; max: 999 118; rel1.to: "frame"; rel2.to: "frame"; @@ -33491,7 +33499,7 @@ } } } - } + } programs { program { name: "object_selector_hide"; @@ -33639,6 +33647,7 @@ name: "inner_clip"; type: RECT; clip_to: "clip"; + mouse_events: 0; description { state: "default" 0.0; rel1.offset: 10 10; @@ -33649,6 +33658,7 @@ name: "icon_clip"; type: RECT; clip_to: "inner_clip"; + mouse_events: 0; description { state: "default" 0.0; color: 255 255 255 255; @@ -33662,6 +33672,7 @@ name: "e.swallow.icons"; type: SWALLOW; clip_to: "icon_clip"; + mouse_events: 0; description { state: "default" 0.0; min: 64 64; @@ -33683,6 +33694,7 @@ name: "e.swallow.thumb"; type: SWALLOW; clip_to: "icon_clip"; + mouse_events: 0; description { state: "default" 0.0; min: 86 64; @@ -33755,6 +33767,14 @@ } } } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } } programs { program { @@ -33831,7 +33851,8 @@ type: TEXT; scale: 1; clip_to: "clip"; - description { + mouse_events: 0; + description { state: "default" 0.0; align: 0.5 0.5; fixed: 0 1; @@ -33877,6 +33898,7 @@ mouse_events: 0; clip_to: "clip"; scale: 1; + mouse_events: 0; description { state: "default" 0.0; align: 0.5 0.5; @@ -33900,6 +33922,14 @@ visible: 1; } } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } } programs { program { @@ -33929,54 +33959,8 @@ group { name: "e/modules/everything/thumbview/main/window"; - images { - image: "vgrad_dark.png" COMP; - image: "dia_botshad.png" COMP; - image: "big_arrow_up.png" COMP; - image: "busy-1.png" COMP; - image: "busy-2.png" COMP; - image: "busy-3.png" COMP; - image: "busy-4.png" COMP; - image: "busy-5.png" COMP; - image: "busy-6.png" COMP; - image: "busy-7.png" COMP; - image: "busy-8.png" COMP; - image: "busy-9.png" COMP; - } parts { part { - name: "base"; - mouse_events: 0; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - rel1 { - relative: 0.0 0.0; - offset: 0 -3; - } - rel2 { - relative: 1.0 1.0; - offset: -1 6; - } - } - } - part { - name: "e.swallow.preview"; - type: SWALLOW; - description { - state: "default" 0.0; - } - } - part { - name: "events"; - type: RECT; - description { - state: "default" 0.0; - color: 0 0 0 0; - } - } - part { name: "e.swallow.list"; type: SWALLOW; description { @@ -33991,116 +33975,7 @@ } } } - part { - name: "cover"; - type: RECT; - description { - state: "default" 0.0; - color: 0 0 0 0; - visible: 0; - } - description { - state: "out" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "shadow2"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1.relative: 0.0 1.0; - rel1.offset: 0 -4; - image.normal: "dia_botshad.png"; - fill { - smooth: 0; - size { - relative: 0.0 1.0; - offset: 64 0; - } - } - } - } - part { - name: "busy_clip"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - color: 255 255 255 0; - } - description { - state: "visible" 0.0; - visible: 1; - color: 255 255 255 255; - } - } - part { - name: "busy"; - mouse_events: 0; - clip_to: "busy_clip"; - description { - state: "default" 0.0; - min: 32 32; - max: 32 32; - aspect: 1.0 1.0; - aspect_preference: BOTH; - rel1 { - relative: 0.5 0.5; - offset: 0 0; - } - rel2 { - relative: 0.5 0.5; - offset: -1 1; - } - image { - normal: "busy-9.png"; - tween: "busy-1.png"; - tween: "busy-2.png"; - tween: "busy-3.png"; - tween: "busy-4.png"; - tween: "busy-5.png"; - tween: "busy-6.png"; - tween: "busy-7.png"; - tween: "busy-8.png"; - } - } - } } - programs { - program { - name: "busy1"; - signal: "e,state,busy,on"; - source: "e"; - action: STATE_SET "visible" 0.0; - transition: LINEAR 1.0; - target: "busy_clip"; - } - program { - name: "busy_anim"; - signal: "e,state,busy,on"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: LINEAR 0.3333; - target: "busy"; - after: "busy_anim"; - } - program { - name: "busy2"; - signal: "e,state,busy,off"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: LINEAR 1.0; - target: "busy_clip"; - after: "busy3"; - } - program { - name: "busy3"; - action: ACTION_STOP; - target: "busy_anim"; - } - } } group { name: "e/modules/everything/thumbview/item/thumb"; @@ -34207,6 +34082,7 @@ name: "e.swallow.icon"; clip_to: "clip"; type: SWALLOW; + mouse_events: 0; description { state: "default" 0.0; rel1 { @@ -34225,6 +34101,7 @@ name: "e.swallow.thumb"; clip_to: "clip"; type: SWALLOW; + mouse_events: 0; description { state: "default" 0.0; rel1 { @@ -34263,6 +34140,14 @@ } } } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } } programs { program { @@ -34452,6 +34337,7 @@ name: "e.swallow.icon"; clip_to: "clip"; type: SWALLOW; + mouse_events: 0; description { state: "default" 0.0; rel1 { @@ -34466,6 +34352,7 @@ name: "e.swallow.thumb"; clip_to: "clip"; type: SWALLOW; + mouse_events: 0; description { state: "default" 0.0; rel1 { @@ -34478,6 +34365,7 @@ } part { name: "arrow"; + mouse_events: 0; description { state: "default" 0.0; align: 0.0 0.5; @@ -34604,6 +34492,14 @@ visible: 1; } } + part { + name: "event"; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } } programs { program { Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/src/modules/everything/e_mod_main.h 2010-05-17 23:15:00 UTC (rev 48949) @@ -36,6 +36,8 @@ Evry_Selector **sel_list; int level; + + int down_out; }; struct _Evry_Selector @@ -120,9 +122,11 @@ struct _Tab_View { - Evas *evas; const Evry_State *state; + Evry_View *view; + Evas *evas; + Evas_Object *o_tabs; Eina_List *tabs; @@ -259,7 +263,7 @@ const char *evry_type_get(Evry_Type type); -Tab_View *evry_tab_view_new(const Evry_State *s, Evas *e); +Tab_View *evry_tab_view_new(Evry_View *view, const Evry_State *s, Evas *e); void evry_tab_view_free(Tab_View *v); Eina_Bool view_thumb_init(void); @@ -295,6 +299,8 @@ int evry_browse_item(Evry_Selector *sel); int evry_browse_back(Evry_Selector *sel); +void evry_plugin_action(int finished); + extern Evry_History *evry_hist; extern Evry_Config *evry_conf; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/src/modules/everything/evry.c 2010-05-17 23:15:00 UTC (rev 48949) @@ -57,6 +57,7 @@ static int _evry_cb_key_down(void *data, int type, void *event); static int _evry_cb_selection_notify(void *data, int type, void *event); +static int _evry_cb_mouse(void *data, int type, void *event); /* local subsystem globals */ @@ -194,16 +195,39 @@ win->handlers = eina_list_append (win->handlers, ecore_event_handler_add - (ECORE_EVENT_KEY_DOWN, _evry_cb_key_down, NULL)); + (ECORE_EVENT_KEY_DOWN, + _evry_cb_key_down, NULL)); + win->handlers = eina_list_append (win->handlers, ecore_event_handler_add (ECORE_X_EVENT_SELECTION_NOTIFY, _evry_cb_selection_notify, win)); + win->handlers = eina_list_append (win->handlers, ecore_event_handler_add (EVRY_EVENT_ITEM_CHANGED, _evry_cb_item_changed, NULL)); + win->handlers = eina_list_append + (win->handlers, ecore_event_handler_add + (ECORE_EVENT_MOUSE_BUTTON_DOWN, + _evry_cb_mouse, win)); + + win->handlers = eina_list_append + (win->handlers, ecore_event_handler_add + (ECORE_EVENT_MOUSE_BUTTON_UP, + _evry_cb_mouse, win)); + + win->handlers = eina_list_append + (win->handlers, ecore_event_handler_add + (ECORE_EVENT_MOUSE_MOVE, + _evry_cb_mouse, win)); + + win->handlers = eina_list_append + (win->handlers, ecore_event_handler_add + (ECORE_EVENT_MOUSE_WHEEL, + _evry_cb_mouse, win)); + e_popup_layer_set(win->popup, 255); e_popup_show(win->popup); @@ -376,7 +400,7 @@ return 0; } -EAPI void +void evry_clear_input(Evry_Plugin *p) { Evry_Selector *sel = _evry_selector_for_plugin_get(p); @@ -402,7 +426,7 @@ static int item_cnt = 0; #endif -EAPI Evry_Item * +Evry_Item * evry_item_new(Evry_Item *base, Evry_Plugin *p, const char *label, Evas_Object *(*icon_get) (Evry_Item *it, Evas *e), void (*cb_free) (Evry_Item *item)) @@ -437,7 +461,7 @@ return it; } -EAPI void +void evry_item_free(Evry_Item *it) { if (!it) return; @@ -520,7 +544,7 @@ sel->update_timer = ecore_timer_add(0.1, _evry_timer_cb_actions_get, it); } -EAPI void +void evry_item_select(const Evry_State *state, Evry_Item *it) { Evry_State *s = (Evry_State *)state; @@ -546,7 +570,7 @@ } } -EAPI void +void evry_item_mark(const Evry_State *state, Evry_Item *it, Eina_Bool mark) { Evry_State *s = (Evry_State *)state; @@ -563,13 +587,13 @@ } } -EAPI void +void evry_item_ref(Evry_Item *it) { it->ref++; } -EAPI int +int evry_list_win_show(void) { if (win->visible) return 0; @@ -578,13 +602,13 @@ return 1; } -EAPI void +void evry_list_win_hide(void) { _evry_list_win_clear(1); } -EAPI void +void evry_plugin_update(Evry_Plugin *p, int action) { Evry_State *s; @@ -771,9 +795,76 @@ ecore_x_netwm_window_type_set(popup->evas_win, ECORE_X_WINDOW_TYPE_UTILITY); + evas_event_feed_mouse_in(win->popup->evas, ecore_x_current_time_get(), NULL); + evas_event_feed_mouse_move(win->popup->evas, -1000000, -1000000, ecore_x_current_time_get(), NULL); + return win; } +static int +_evry_cb_mouse(void *data, int type, void *event) +{ + Ecore_Event_Mouse_Button *ev; + E_Popup *pop; + + ev = event; + if (ev->window != input_window) return 1; + + pop = win->popup; + + if (type == ECORE_EVENT_MOUSE_MOVE) + { + Ecore_Event_Mouse_Move *ev = event; + + evas_event_feed_mouse_move + (pop->evas, + ev->x - pop->x + pop->zone->x, + ev->y - pop->y + pop->zone->y, + ev->timestamp, NULL); + } + else if (type == ECORE_EVENT_MOUSE_BUTTON_DOWN) + { + win->down_out = 0; + + /* XXX shift triple click in flags when needed */ + if (!E_INSIDE(ev->x, ev->y, pop->x + pop->zone->x, + pop->y + pop->zone->y, pop->w, pop->h)) + { + win->down_out = 1; + return 1; + } + + evas_event_feed_mouse_down + (pop->evas, + ev->buttons, ev->double_click, + ev->timestamp, NULL); + } + else if (type == ECORE_EVENT_MOUSE_BUTTON_UP) + { + if (win->down_out && + !E_INSIDE(ev->x, ev->y, pop->x + pop->zone->x, + pop->y + pop->zone->y, pop->w, pop->h)) + { + evry_hide(0); + return 1; + } + + evas_event_feed_mouse_up + (pop->evas, + ev->buttons, ev->double_click, + ev->timestamp, NULL); + } + else if (type == ECORE_EVENT_MOUSE_WHEEL) + { + Ecore_Event_Mouse_Wheel *ev = event; + + evas_event_feed_mouse_wheel + (pop->evas, 0, ev->z, ev->timestamp, NULL); + } + + return 1; +} + static void _evry_window_free(Evry_Window *win) { @@ -785,6 +876,74 @@ E_FREE(win); } +static void +_evry_selector_cb_down(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Down *ev = event_info; + /* Evry_Selector *sel = data; */ + + if (ev->button == 1) + { + if (ev->flags & EVAS_BUTTON_DOUBLE_CLICK) + evry_plugin_action(1); + } +} + +static void +_evry_selector_cb_wheel(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Wheel *ev = event_info; + + if (ev->z > 0) + { + /* FIXME dont loose selector 2 state until state 0 changed: */ + if (win->selector != win->selectors[2]) + _evry_selectors_switch(1); + } + else if (ev->z < 0) + { + _evry_selectors_switch(-1); + } +} + +static void +_evry_selector_cb_up(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Up *ev = event_info; + Evry_Selector *sel = data; + + if (sel == win->selector) + return; + + if (ev->button == 3) + { + evry_plugin_action(0); + } + else if (ev->button == 1) + { + if (sel == win->selectors[0]) + { + if (win->selector == win->selectors[1]) + _evry_selectors_switch(-1); + else + _evry_selectors_switch(1); + } + + else if (sel == win->selectors[1]) + { + if (win->selector == win->selectors[0]) + _evry_selectors_switch(1); + else + _evry_selectors_switch(-1); + } + else if (sel == win->selectors[2]) + { + if (win->selector == win->selectors[1]) + _evry_selectors_switch(1); + } + } +} + static Evry_Selector * _evry_selector_new(Evry_Window *win, int type) { @@ -795,6 +954,13 @@ sel->o_main = o; e_theme_edje_object_set(o, "base/theme/everything", "e/modules/everything/selector_item"); + + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, + _evry_selector_cb_down, sel); + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_UP, + _evry_selector_cb_up, sel); + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_WHEEL, + _evry_selector_cb_wheel, sel); evas_object_show(o); sel->aggregator = evry_aggregator_new(win, type); @@ -1352,9 +1518,10 @@ return 1; } -EAPI int +int evry_browse_back(Evry_Selector *sel) { + if (!sel) sel = win->selector; Evry_State *s = sel->state; DBG("%p", sel); @@ -1870,6 +2037,12 @@ return 0; } +void +evry_plugin_action(int finished) +{ + _evry_plugin_action(win->selector, finished); +} + static void _evry_plugin_action(Evry_Selector *sel, int finished) { Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-17 23:15:00 UTC (rev 48949) @@ -56,6 +56,10 @@ int sliding; int clearing; + + int mouse_act; + int mouse_down; + Item *it_down; }; struct _Item @@ -77,8 +81,10 @@ static View *view = NULL; static void _view_clear(Evry_View *view, int slide); +static void _pan_item_select(Evas_Object *obj, Item *it, int scroll); + static void _thumb_gen(void *data, Evas_Object *obj, void *event_info) { @@ -138,7 +144,7 @@ (it->item->icon && it->item->icon[0])))) { it->get_thumb = EINA_TRUE; - + it->thumb = e_thumb_icon_add(sd->view->evas); GET_FILE(file, it->item); @@ -149,7 +155,7 @@ e_thumb_icon_file_set(it->thumb, it->item->icon, NULL); else e_thumb_icon_file_set(it->thumb, file->path, NULL); - + e_thumb_icon_size_set(it->thumb, it->w, it->h); e_thumb_icon_begin(it->thumb); it->do_thumb = EINA_TRUE; @@ -165,6 +171,70 @@ } static void +_item_down(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Down *ev = event_info; + Item *it = data; + Smart_Data *sd = evas_object_smart_data_get(it->obj); + + sd->mouse_act = 1; + + if (ev->button == 1) + { + if (ev->flags & EVAS_BUTTON_DOUBLE_CLICK) + { + evry_item_select(sd->view->state, it->item); + _pan_item_select(it->obj, it, 0); + + evry_plugin_action(1); + } + else + { + sd->mouse_down = ev->canvas.x; + sd->it_down = it; + + if (sd->selector && evas_object_visible_get(sd->selector)) + { + evas_object_hide(sd->selector); + } + } + } +} + +static void +_item_up(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Up *ev = event_info; + Item *it = data; + Smart_Data *sd = evas_object_smart_data_get(it->obj); + + sd->mouse_down = 0; + sd->it_down = NULL; + + if (ev->button == 1) + { + if (!(ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD)) + { + if (sd->selector) + evas_object_hide(sd->selector); + + evry_item_select(sd->view->state, it->item); + _pan_item_select(it->obj, it, 0); + } + } + else if (ev->button == 3) + { + if (sd->selector) + evas_object_hide(sd->selector); + + evry_item_select(sd->view->state, it->item); + _pan_item_select(it->obj, it, 0); + + evry_plugin_action(0); + } +} + +static void _item_show(View *v, Item *it, Evas_Object *list) { @@ -185,6 +255,10 @@ edje_object_signal_emit(it->frame, "e,state,detail,show", "e"); } + evas_object_event_callback_add(it->frame, EVAS_CALLBACK_MOUSE_DOWN, + _item_down, it); + evas_object_event_callback_add(it->frame, EVAS_CALLBACK_MOUSE_UP, + _item_up, it); evas_object_smart_member_add(it->frame, list); evas_object_clip_set(it->frame, evas_object_clip_get(list)); @@ -342,7 +416,7 @@ if (sd->selector) evas_object_hide(sd->selector); } - else + else if (!sd->mouse_act) { if (!sd->selector) { @@ -716,9 +790,17 @@ } else scroll = 0; - if (sd->view->mode == VIEW_MODE_LIST || - sd->view->mode == VIEW_MODE_DETAIL) + if (sd->mouse_act && + ((sd->view->mode == VIEW_MODE_LIST || + sd->view->mode == VIEW_MODE_DETAIL))) { + edje_object_signal_emit(sd->cur_item->frame, + "e,state,selected", "e"); + return; + } + else if (sd->view->mode == VIEW_MODE_LIST || + sd->view->mode == VIEW_MODE_DETAIL) + { int all = sd->ch / it->h; int rows = (it->h && sd->h < sd->ch) ? (sd->h / it->h) : all; int cur = it->h ? it->y /it->h : 1; @@ -769,8 +851,6 @@ } } - /* edje_object_signal_emit(sd->cur_item->frame, - * "e,state,selected", "e"); */ align *= it->h; } else @@ -847,7 +927,7 @@ sd->thumb_idler = NULL; if (sd->selector) - evas_object_del(sd->selector); + evas_object_del(sd->selector); sd->selector = NULL; } @@ -858,6 +938,10 @@ Smart_Data *sd = evas_object_smart_data_get(v->span); Item *it; + sd->mouse_down = 0; + sd->mouse_act = 0; + sd->it_down = NULL; + if (!sd->clearing && evry_conf->scroll_animate) { if (slide) @@ -879,7 +963,7 @@ sd->clearing = EINA_FALSE; _clear_items(v->span); - + EINA_LIST_FREE(sd->items, it) { evry_item_free(it->item); @@ -943,6 +1027,8 @@ Evry_Plugin *p = v->state->plugin; sd->cur_item = NULL; + sd->mouse_act = 0; + sd->mouse_down = 0; if (!p) { @@ -1104,6 +1190,9 @@ const char *key = ev->key; + sd->mouse_act = 0; + sd->mouse_down = 0; + if ((ev->modifiers & ECORE_EVENT_MODIFIER_CTRL) && (!strcmp(key, "2"))) { @@ -1148,7 +1237,7 @@ { v->mode = VIEW_MODE_DETAIL; } - + _clear_items(v->span); _update_frame(v->span); goto end; @@ -1393,6 +1482,52 @@ return 1; } +static void +_view_cb_mouse_wheel(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Wheel *ev = event_info; + Smart_Data *sd = evas_object_smart_data_get(obj); + if (ev->z) + { + evas_object_hide(sd->selector); + if (sd->cur_item) + edje_object_signal_emit(sd->cur_item->frame, "e,state,selected", "e"); + sd->mouse_act = 1; + } +} + +static void +_view_cb_mouse_move(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Move *ev = event_info; + Smart_Data *sd = evas_object_smart_data_get(obj); + + if (!sd->mouse_down) + return ; + + if (!sd->it_down) + return; + + if ((sd->cur_item != sd->it_down) && + (abs(ev->cur.canvas.x - sd->mouse_down) > 15)) + { + evry_item_select(sd->view->state, sd->it_down->item); + _pan_item_select(obj, sd->it_down, 0); + return; + } + + if (ev->cur.canvas.x - sd->mouse_down > 150) + { + evry_browse_back(NULL); + sd->mouse_down = 0; + } + else if (sd->mouse_down - ev->cur.canvas.x > 150) + { + evry_browse_item(NULL); + sd->mouse_down = 0; + } +} + static Evry_View * _view_create(Evry_View *view, const Evry_State *s, const Evas_Object *swallow) { @@ -1424,11 +1559,17 @@ // scrolled thumbs v->span = _pan_add(v->evas); _pan_view_set(v->span, v); + evas_object_event_callback_add(v->span, EVAS_CALLBACK_MOUSE_WHEEL, + _view_cb_mouse_wheel, NULL); + evas_object_event_callback_add(v->span, EVAS_CALLBACK_MOUSE_MOVE, + _view_cb_mouse_move, NULL); // the scrollframe holding the scrolled thumbs v->sframe = e_scrollframe_add(v->evas); e_scrollframe_custom_theme_set(v->sframe, "base/theme/widgets", "e/modules/everything/thumbview/main/scrollframe"); + e_scrollframe_thumbscroll_force(v->sframe, 1); + e_scrollframe_extern_pan_set(v->sframe, v->span, _pan_set, _pan_get, _pan_max_get, _pan_child_size_get); @@ -1437,7 +1578,7 @@ evas_object_show(v->sframe); evas_object_show(v->span); - v->tabs = evry_tab_view_new(s, v->evas); + v->tabs = evry_tab_view_new(EVRY_VIEW(v), v->state, v->evas); EVRY_VIEW(v)->o_list = v->bg; EVRY_VIEW(v)->o_bar = v->tabs->o_tabs; Modified: trunk/e/src/modules/everything/evry_util.c =================================================================== --- trunk/e/src/modules/everything/evry_util.c 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/src/modules/everything/evry_util.c 2010-05-17 23:15:00 UTC (rev 48949) @@ -416,6 +416,7 @@ path = efreet_icon_path_find(e_config->icon_theme, icon, 128); if (!path) return 0; + e_icon_scale_size_set(obj, 128); e_icon_file_set(obj, path); E_FREE(path); return 1; Modified: trunk/e/src/modules/everything/evry_view_plugin_tabs.c =================================================================== --- trunk/e/src/modules/everything/evry_view_plugin_tabs.c 2010-05-17 22:46:28 UTC (rev 48948) +++ trunk/e/src/modules/everything/evry_view_plugin_tabs.c 2010-05-17 23:15:00 UTC (rev 48949) @@ -5,6 +5,7 @@ struct _Tab { + Tab_View *tab_view; Evry_Plugin *plugin; Evas_Object *o_tab; @@ -13,7 +14,11 @@ static void _tabs_update(Tab_View *v); +static void _plugin_select(Tab_View *v, Evry_Plugin *p); +static void _plugin_next(Tab_View *v); +static void _plugin_prev(Tab_View *v); + #if 0 static int _animator(void *data) @@ -99,9 +104,45 @@ } static void +_tab_cb_down(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + /* Evas_Event_Mouse_Down *ev = event_info; */ +} + +static void +_tab_cb_up(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Up *ev = event_info; + Tab *tab = data; + Tab_View *v = tab->tab_view; + + if (ev->button == 1) + { + _plugin_select(v, tab->plugin); + v->view->update(v->view, 0); + } +} +static void +_tabs_cb_wheel(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Wheel *ev = event_info; + Tab_View *v = data; + + if (ev->z > 0) + { + _plugin_next(v); + v->view->update(v->view, 0); + } + else if (ev->z < 0) + { + _plugin_prev(v); + v->view->update(v->view, 0); + } +} + +static void _tabs_update(Tab_View *v) { - Eina_List *l, *ll, *plugins; Evry_Plugin *p; const Evry_State *s = v->state; @@ -118,7 +159,7 @@ v->timer = ecore_timer_add(0.1, _timer_cb, v); return; } - + /* remove tabs for not active plugins */ e_box_freeze(v->o_tabs); @@ -153,12 +194,16 @@ { tab = E_NEW(Tab, 1); tab->plugin = p; - + tab->tab_view = v; o = edje_object_add(v->evas); e_theme_edje_object_set(o, "base/theme/everything", "e/modules/everything/tab_item"); edje_object_part_text_set(o, "e.text.label", EVRY_ITEM(p)->label); + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, + _tab_cb_down, tab); + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_UP, + _tab_cb_up, tab); tab->o_tab = o; edje_object_size_min_calc(o, &tab->cw, NULL); @@ -254,7 +299,7 @@ { /* FIXME how can this happen ? */ if (!p) continue; - + if (EVRY_ITEM(p)->label && (!strncasecmp(EVRY_ITEM(p)->label, key, 1))) { if (!first) first = p; @@ -340,7 +385,7 @@ EAPI Tab_View * -evry_tab_view_new(const Evry_State *s, Evas *e) +evry_tab_view_new(Evry_View *view, const Evry_State *s, Evas *e) { Tab_View *v; Evas_Object *o; @@ -349,12 +394,16 @@ v->update = &_tabs_update; v->clear = &_tabs_clear; v->key_down = &_tabs_key_down; + v->view = view; v->state = s; v->evas = e; o = e_box_add(e); e_box_orientation_set(o, 1); e_box_homogenous_set(o, 1); + /* evas_object_propagate_events_set(o, 1); */ + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_WHEEL, + _tabs_cb_wheel, v); v->o_tabs = o; return v; |
From: Enlightenment S. <no-...@en...> - 2010-05-19 01:10:22
|
Log: - swallow selectors item _in_ theme - cleanup shift-selectors action Author: jeffdameth Date: 2010-05-18 18:10:15 -0700 (Tue, 18 May 2010) New Revision: 48993 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-19 00:14:00 UTC (rev 48992) +++ trunk/e/data/themes/default.edc 2010-05-19 01:10:15 UTC (rev 48993) @@ -33378,9 +33378,10 @@ } } part { - name: "e.swallow.subject_selector"; - type: SWALLOW; - clip_to: "selector_frame"; + name: "subject_selector"; + type: GROUP; + source: "e/modules/everything/selector_item"; + clip_to: "selector_frame"; description { state: "default" 0.0; rel1 { @@ -33409,8 +33410,9 @@ } } part { - name: "e.swallow.action_selector"; - type: SWALLOW; + name: "action_selector"; + type: GROUP; + source: "e/modules/everything/selector_item"; clip_to: "selector_frame"; description { state: "default" 0.0; @@ -33439,8 +33441,9 @@ } } part { - name: "e.swallow.object_selector"; - type: SWALLOW; + name: "object_selector"; + type: GROUP; + source: "e/modules/everything/selector_item"; clip_to: "selector_frame"; description { state: "default" 0.0; @@ -33507,9 +33510,9 @@ source: "e"; action: STATE_SET "default" 0.00; transition: SINUSOIDAL 0.15; - target: "e.swallow.object_selector"; - target: "e.swallow.subject_selector"; - target: "e.swallow.action_selector"; + target: "object_selector"; + target: "subject_selector"; + target: "action_selector"; } program { name: "object_selector_show"; @@ -33517,9 +33520,9 @@ source: "e"; action: STATE_SET "wide" 0.00; transition: SINUSOIDAL 0.2; - target: "e.swallow.object_selector"; - target: "e.swallow.subject_selector"; - target: "e.swallow.action_selector"; + target: "object_selector"; + target: "subject_selector"; + target: "action_selector"; } program { name: "composite_mode"; Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2010-05-19 00:14:00 UTC (rev 48992) +++ trunk/e/src/modules/everything/e_mod_main.h 2010-05-19 01:10:15 UTC (rev 48993) @@ -43,9 +43,6 @@ struct _Evry_Selector { - Evas_Object *o_main; - Evas_Object *o_icon; - /* current state */ Evry_State *state; @@ -55,16 +52,16 @@ /* provides collection of items from other plugins */ Evry_Plugin *aggregator; + /* action selector plugin */ Evry_Plugin *actions; - /* */ - /* Eina_List *cur_actions; */ - /* all plugins that belong to this selector*/ Eina_List *plugins; + /* list view instance */ Evry_View *view; + Evas_Object *o_icon; Evas_Object *o_thumb; Eina_Bool do_thumb; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-19 00:14:00 UTC (rev 48992) +++ trunk/e/src/modules/everything/evry.c 2010-05-19 01:10:15 UTC (rev 48993) @@ -38,6 +38,8 @@ static void _evry_selector_update_actions(Evry_Selector *sel); static void _evry_selector_item_update(Evry_Selector *sel); static Evry_Selector *_evry_selector_for_plugin_get(Evry_Plugin *p); +static void _evry_selector_label_set(Evry_Selector *sel, const char *part, const char *label); +static void _evry_selector_signal_emit(Evry_Selector *sel, const char *msg); static Evry_Window *_evry_window_new(E_Zone *zone); static void _evry_window_free(Evry_Window *win); @@ -136,12 +138,15 @@ E_OBJECT_CHECK_RETURN(zone, 0); E_OBJECT_TYPE_CHECK_RETURN(zone, E_ZONE_TYPE, 0); + if (win->level) + return 1; + if (win) { Eina_List *l; Evry_Plugin *p; - if (!(win->level) && !(params) && + if (!(params) && (win->selector == win->selectors[2]) && (win->selector->state && win->selector->state->cur_item)) { @@ -324,25 +329,32 @@ static int _evry_selectors_shift(int dir) { - if (dir > 0) + if ((dir > 0) && (win->level == 0)) { void *new_sel; Evry_Selector *sel; Evry_State *s; + int i; + for (i = 1; i < 3; i++) + { + if (win->selectors[i]->o_icon) + evas_object_del(win->selectors[i]->o_icon); + if (win->selectors[i]->o_thumb) + evas_object_del(win->selectors[i]->o_thumb); + + win->selectors[i]->o_icon = NULL; + win->selectors[i]->o_thumb = NULL; + } + if (!(new_sel = realloc(win->sel_list, sizeof(Evry_Selector*) * 6))) return 0; win->sel_list = new_sel; - edje_object_part_unswallow(win->o_main, win->sel_list[0]->o_main); - evas_object_hide(win->sel_list[0]->o_main); - edje_object_part_unswallow(win->o_main, win->sel_list[1]->o_main); - evas_object_hide(win->sel_list[1]->o_main); - edje_object_part_unswallow(win->o_main, win->sel_list[2]->o_main); + edje_object_signal_emit(win->o_main, + "e,state,object_selector_hide", "e"); - edje_object_signal_emit(win->o_main, "e,state,object_selector_hide", "e"); - win->sel_list[5] = NULL; win->selectors = win->sel_list + 2; _evry_selector_new(win, EVRY_PLUGIN_ACTION); @@ -351,10 +363,12 @@ win->selector = win->selectors[0]; sel = win->selector; - edje_object_part_swallow(win->o_main, "e.swallow.subject_selector", - sel->o_main); + _evry_selector_signal_emit(sel, "e,state,selected"); - edje_object_signal_emit(sel->o_main, "e,state,selected", "e"); + _evry_selector_item_update(win->selectors[0]); + _evry_selector_item_update(win->selectors[1]); + _evry_selector_item_update(win->selectors[2]); + /* was checked before. anyway */ if ((s = sel->state) && (s->cur_item)) _evry_selector_update_actions(sel); @@ -365,33 +379,29 @@ } else if ((dir < 0) && (win->level > 0)) { + if (win->selectors[0]->o_icon) + evas_object_del(win->selectors[0]->o_icon); + if (win->selectors[0]->o_thumb) + evas_object_del(win->selectors[0]->o_thumb); + + win->selectors[0]->o_icon = NULL; + win->selectors[0]->o_thumb = NULL; + _evry_selector_free(win->selectors[1]); _evry_selector_free(win->selectors[2]); - edje_object_part_unswallow(win->o_main, win->selectors[0]->o_main); win->selectors = win->sel_list; win->sel_list[3] = NULL; win->selector = NULL; edje_object_signal_emit(win->o_main, "e,state,object_selector_show", "e"); - - edje_object_part_swallow(win->o_main, - "e.swallow.subject_selector", - win->selectors[0]->o_main); - evas_object_show(win->selectors[0]->o_main); - - edje_object_part_swallow(win->o_main, - "e.swallow.action_selector", - win->selectors[1]->o_main); - evas_object_show(win->selectors[1]->o_main); - + _evry_selector_item_update(win->selectors[0]); + _evry_selector_item_update(win->selectors[1]); + _evry_selector_item_update(win->selectors[2]); _evry_selector_activate(win->selectors[2]); - edje_object_part_swallow(win->o_main, - "e.swallow.object_selector", - win->selectors[2]->o_main); win->level = 0; return 1; @@ -888,7 +898,7 @@ else if (type == ECORE_EVENT_MOUSE_BUTTON_UP) { win->mouse_button = 0; - + if (win->mouse_out && !E_INSIDE(ev->x, ev->y, pop->x + pop->zone->x, pop->y + pop->zone->y, pop->w, pop->h)) @@ -999,9 +1009,9 @@ Eina_List *l, *pcs; Evry_Selector *sel = E_NEW(Evry_Selector, 1); Evas_Object *o = edje_object_add(win->popup->evas); - sel->o_main = o; - e_theme_edje_object_set(o, "base/theme/everything", - "e/modules/everything/selector_item"); + /* sel->o_main = o; + * e_theme_edje_object_set(o, "base/theme/everything", + * "e/modules/everything/selector_item"); */ evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _evry_selector_cb_down, sel); @@ -1016,18 +1026,18 @@ if (type == EVRY_PLUGIN_SUBJECT) { sel->actions = evry_plug_actions_new(sel, type); - edje_object_part_swallow(win->o_main, "e.swallow.subject_selector", o); + /* edje_object_part_swallow(win->o_main, "e.swallow.subject_selector", o); */ pcs = evry_conf->conf_subjects; } else if (type == EVRY_PLUGIN_ACTION) { sel->actions = evry_plug_actions_new(sel, type); - edje_object_part_swallow(win->o_main, "e.swallow.action_selector", o); + /* edje_object_part_swallow(win->o_main, "e.swallow.action_selector", o); */ pcs = evry_conf->conf_actions; } else if (type == EVRY_PLUGIN_OBJECT) { - edje_object_part_swallow(win->o_main, "e.swallow.object_selector", o); + /* edje_object_part_swallow(win->o_main, "e.swallow.object_selector", o); */ pcs = evry_conf->conf_objects; } @@ -1053,8 +1063,8 @@ evas_object_del(sel->o_thumb); if (sel->o_icon) evas_object_del(sel->o_icon); - if (sel->o_main) - evas_object_del(sel->o_main); + /* if (sel->o_main) + * evas_object_del(sel->o_main); */ if (win->visible && (sel == win->selector)) _evry_view_clear(sel->state); @@ -1074,6 +1084,34 @@ } static void +_evry_selector_signal_emit(Evry_Selector *sel, const char *msg) +{ + char buf[1024]; + if (sel == win->selectors[0]) + snprintf(buf, sizeof(buf), "subject_selector:%s", msg); + else if (sel == win->selectors[1]) + snprintf(buf, sizeof(buf), "action_selector:%s", msg); + else if (sel == win->selectors[2]) + snprintf(buf, sizeof(buf), "object_selector:%s", msg); + + edje_object_signal_emit(win->o_main, buf, "e"); +} + +static void +_evry_selector_label_set(Evry_Selector *sel, const char *part, const char *label) +{ + char buf[1024]; + if (sel == win->selectors[0]) + snprintf(buf, sizeof(buf), "subject_selector:%s", part); + else if (sel == win->selectors[1]) + snprintf(buf, sizeof(buf), "action_selector:%s", part); + else if (sel == win->selectors[2]) + snprintf(buf, sizeof(buf), "object_selector:%s", part); + + edje_object_part_text_set(win->o_main, buf, label); +} + +static void _evry_selector_activate(Evry_Selector *sel) { Evry_State *s; @@ -1081,9 +1119,11 @@ if (win->selector) { Evry_Selector *sel = win->selector; + _evry_selector_label_set(sel, "e.text.plugin", ""); + _evry_selector_signal_emit(sel, "e,state,unselected"); - edje_object_signal_emit(sel->o_main, "e,state,unselected", "e"); - edje_object_part_text_set(sel->o_main, "e.text.plugin", ""); + /* edje_object_signal_emit(win->o_main, "", "e"); + * edje_object_part_text_set(win->o_main, "e.text.plugin", ""); */ if (sel->state && sel->state->view) _evry_view_hide(sel->state->view, 0); @@ -1097,7 +1137,8 @@ return; } - edje_object_signal_emit(sel->o_main, "e,state,selected", "e"); + _evry_selector_signal_emit(sel, "e,state,selected"); + /* edje_object_signal_emit(sel->o_main, "e,state,selected", "e"); */ win->selector = sel; @@ -1106,8 +1147,10 @@ _evry_update_text_label(s); if (s->cur_item) - edje_object_part_text_set(sel->o_main, "e.text.plugin", - EVRY_ITEM(s->cur_item->plugin)->label); + _evry_selector_label_set(sel, "e.text.plugin", + EVRY_ITEM(s->cur_item->plugin)->label); + /* edje_object_part_text_set(sel->o_main, "e.text.plugin", + * EVRY_ITEM(s->cur_item->plugin)->label); */ _evry_view_show(s->view); _evry_list_win_update(s); @@ -1128,16 +1171,24 @@ e_icon_size_get(sel->o_thumb, &w, &h); edje_extern_object_aspect_set(sel->o_thumb, EDJE_ASPECT_CONTROL_BOTH, w, h); - edje_object_part_swallow(sel->o_main, "e.swallow.thumb", sel->o_thumb); + + if (sel == win->selectors[0]) + edje_object_part_swallow(win->o_main, "subject_selector:e.swallow.thumb", sel->o_thumb); + else if (sel == win->selectors[1]) + edje_object_part_swallow(win->o_main, "action_selector:e.swallow.thumb", sel->o_thumb); + else if (sel == win->selectors[2]) + edje_object_part_swallow(win->o_main, "object_selector:e.swallow.thumb", sel->o_thumb); + evas_object_show(sel->o_thumb); - edje_object_signal_emit(sel->o_main, "e,action,thumb,show", "e"); + _evry_selector_signal_emit(sel, "e,action,thumb,show"); + /* edje_object_signal_emit(sel->o_main, "e,action,thumb,show", "e"); */ sel->do_thumb = EINA_FALSE; } static int _evry_selector_thumb(Evry_Selector *sel, const Evry_Item *it) { - Evas_Coord w, h; + /* Evas_Coord w, h; */ char *suffix = NULL; if (sel->do_thumb) @@ -1163,13 +1214,13 @@ sel->o_thumb = e_thumb_icon_add(win->popup->evas); evas_object_smart_callback_add(sel->o_thumb, "e_thumb_gen", _evry_selector_thumb_gen, sel); - edje_object_part_geometry_get(sel->o_main, "e.swallow.thumb", - NULL, NULL, &w, &h); + /* edje_object_part_geometry_get(sel->o_main, "e.swallow.thumb", + * NULL, NULL, &w, &h); */ if (suffix) e_thumb_icon_file_set(sel->o_thumb, file->path, "e/desktop/background"); else e_thumb_icon_file_set(sel->o_thumb, file->path, NULL); - e_thumb_icon_size_set(sel->o_thumb, w, h); + e_thumb_icon_size_set(sel->o_thumb, 128, 128); e_thumb_icon_begin(sel->o_thumb); sel->do_thumb = EINA_TRUE; return 1; @@ -1183,38 +1234,54 @@ { Evry_State *s = sel->state; Evry_Item *it = NULL; - Evas_Object *o; + Evas_Object *o = NULL; - if (!edje_object_part_exists(sel->o_main, "e.swallow.icons")) return; - if (sel->o_icon) { evas_object_del(sel->o_icon); sel->o_icon = NULL; } + if (sel->o_thumb) + { + if (sel->do_thumb) + e_thumb_icon_end(sel->o_thumb); + evas_object_del(sel->o_thumb); + sel->o_thumb = NULL; + } if (!s || !(it = s->cur_item)) { /* no items for this state - clear selector */ - edje_object_part_text_set(sel->o_main, "e.text.label", ""); + /* edje_object_part_text_set(sel->o_main, "e.text.label", ""); */ + _evry_selector_label_set(sel, "e.text.label",""); + if (sel == win->selector && s && s->plugin) - edje_object_part_text_set(sel->o_main, "e.text.plugin", - EVRY_ITEM(s->plugin)->label); + _evry_selector_label_set(sel, "e.text.plugin", + EVRY_ITEM(s->plugin)->label); + + /* edje_object_part_text_set(sel->o_main, "e.text.plugin", + * EVRY_ITEM(s->plugin)->label); */ else - edje_object_part_text_set(sel->o_main, "e.text.plugin", ""); + _evry_selector_label_set(sel, "e.text.plugin", ""); + /* edje_object_part_text_set(sel->o_main, "e.text.plugin", ""); */ if (!s) return; } if (it) { - edje_object_part_text_set(sel->o_main, "e.text.label", it->label); + _evry_selector_label_set(sel, "e.text.label", it->label); + /* edje_object_part_text_set(sel->o_main, "e.text.label", it->label); */ if (sel == win->selector) - edje_object_part_text_set(sel->o_main, "e.text.plugin", - EVRY_ITEM(it->plugin)->label); + _evry_selector_label_set(sel, "e.text.plugin", + EVRY_ITEM(s->plugin)->label); + + /* edje_object_part_text_set(sel->o_main, "e.text.plugin", + * EVRY_ITEM(it->plugin)->label); */ else - edje_object_part_text_set(sel->o_main, "e.text.plugin", ""); + _evry_selector_label_set(sel, "e.text.plugin", ""); + /* edje_object_part_text_set(sel->o_main, "e.text.plugin", ""); */ if (!_evry_selector_thumb(sel, it)) { @@ -1223,12 +1290,12 @@ if (!o && it->plugin) o = evry_util_icon_get(EVRY_ITEM(it->plugin), win->popup->evas); - if (o) - { - edje_object_part_swallow(sel->o_main, "e.swallow.icons", o); - evas_object_show(o); - sel->o_icon = o; - } + /* if (o) + * { + * edje_object_part_swallow(sel->o_main, "e.swallow.icons", o); + * evas_object_show(o); + * sel->o_icon = o; + * } */ } } @@ -1236,13 +1303,20 @@ (EVRY_ITEM(s->plugin)->icon)) { o = evry_icon_theme_get(EVRY_ITEM(s->plugin)->icon, win->popup->evas); - if (o) - { - edje_object_part_swallow(sel->o_main, "e.swallow.icons", o); - evas_object_show(o); - sel->o_icon = o; - } } + + if (o) + { + if (sel == win->selectors[0]) + edje_object_part_swallow(win->o_main, "subject_selector:e.swallow.icons", o); + else if (sel == win->selectors[1]) + edje_object_part_swallow(win->o_main, "action_selector:e.swallow.icons", o); + else if (sel == win->selectors[2]) + edje_object_part_swallow(win->o_main, "object_selector:e.swallow.icons", o); + + sel->o_icon = o; + evas_object_show(o); + } } static void @@ -1662,7 +1736,7 @@ Evry_Item *it = s->cur_item; if (!it) return 0; - + evry_item_ref(it); s->item_auto_selected = EINA_FALSE; @@ -1697,7 +1771,7 @@ Evry_Item *it = s->cur_item; if (!it) return 0; - + if (!(ht = evry_history_types_get(it->type))) return 1; |
From: Enlightenment S. <no-...@en...> - 2010-05-19 02:43:48
|
Log: show indicator for when thumb slide for/back is possible Author: jeffdameth Date: 2010-05-18 19:43:41 -0700 (Tue, 18 May 2010) New Revision: 48996 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_plug_view_thumb.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-19 01:34:46 UTC (rev 48995) +++ trunk/e/data/themes/default.edc 2010-05-19 02:43:41 UTC (rev 48996) @@ -33231,29 +33231,6 @@ } } part { - name: "list_over2"; - clip_to: "base"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - offset: -1 -1; - to: "list_bg"; - } - rel2 { - offset: -1 -1; - to: "list_bg"; - } - image { - normal: "inset_sunk.png"; - border: 7 7 7 7; - middle: 0; - } - fill.smooth : 0; - color: 200 200 200 255; - } - } - part { name: "box"; mouse_events: 0; description { @@ -33278,6 +33255,7 @@ part { name: "win"; type: RECT; + mouse_events: 0; description { state: "default" 0.0; visible: 0; @@ -33295,12 +33273,13 @@ part { name: "frame"; type: RECT; + mouse_events: 0;; description { state: "default" 0.0; visible: 0; rel1.to: "win"; rel2.to: "win"; -} + } description { state: "composite" 0.0; inherit: "default" 0.0; @@ -33310,6 +33289,7 @@ } part { name: "shadow"; + mouse_events: 0; description { state: "default" 0.0; visible: 0; @@ -33334,6 +33314,7 @@ } part { name: "bg"; + mouse_events: 0; description { state: "default" 0.0; max: 999 118; @@ -33962,6 +33943,10 @@ group { name: "e/modules/everything/thumbview/main/window"; + images { + image: "icon_left_arrow.png" COMP; + image: "icon_right_arrow.png" COMP; + } parts { part { name: "e.swallow.list"; @@ -33978,7 +33963,85 @@ } } } + part { + name: "left_arrow"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + visible: 0; + image.normal: "icon_left_arrow.png"; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + align: 0.0 0.5; + min: 32 32; + max: 32 32; + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { + name: "right_arrow"; + mouse_events: 0; + scale: 1; + description { + state: "default" 0.0; + visible: 0; + image.normal: "icon_right_arrow.png"; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + align: 1.0 0.5; + min: 32 32; + max: 32 32; + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } } + programs { + program { + name: "go_into_show"; + signal: "e,action,show,into"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.5; + target: "right_arrow"; + } + program { + name: "go_into_hide"; + signal: "e,action,hide,into"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "right_arrow"; + transition: LINEAR 0.5; + } + program { + name: "go_back_show"; + signal: "e,action,show,back"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.5; + target: "left_arrow"; + } + program { + name: "go_back_hide"; + signal: "e,action,hide,back"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "left_arrow"; + transition: LINEAR 0.5; + } + } } group { name: "e/modules/everything/thumbview/item/thumb"; Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2010-05-19 01:34:46 UTC (rev 48995) +++ trunk/e/src/modules/everything/e_mod_main.h 2010-05-19 02:43:41 UTC (rev 48996) @@ -70,6 +70,8 @@ struct _Evry_State { + Evry_State *prev; + char *inp; /* alloced input */ char *input; /* pointer to input + trigger */ Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-19 01:34:46 UTC (rev 48995) +++ trunk/e/src/modules/everything/evry.c 2010-05-19 02:43:41 UTC (rev 48996) @@ -1099,9 +1099,6 @@ _evry_selector_label_set(sel, "e.text.plugin", ""); _evry_selector_signal_emit(sel, "e,state,unselected"); - /* edje_object_signal_emit(win->o_main, "", "e"); - * edje_object_part_text_set(win->o_main, "e.text.plugin", ""); */ - if (sel->state && sel->state->view) _evry_view_hide(sel->state->view, 0); @@ -1114,11 +1111,10 @@ return; } + win->selector = sel; + _evry_selector_signal_emit(sel, "e,state,selected"); - /* edje_object_signal_emit(sel->o_main, "e,state,selected", "e"); */ - win->selector = sel; - if ((s = sel->state)) { _evry_update_text_label(s); @@ -1126,9 +1122,6 @@ if (s->cur_item) _evry_selector_label_set(sel, "e.text.plugin", EVRY_ITEM(s->cur_item->plugin)->label); - /* edje_object_part_text_set(sel->o_main, "e.text.plugin", - * EVRY_ITEM(s->cur_item->plugin)->label); */ - _evry_view_show(s->view); _evry_list_win_update(s); } @@ -1281,8 +1274,8 @@ else if (sel == win->selectors[2]) edje_object_part_swallow(win->o_main, "object_selector:e.swallow.icons", o); - sel->o_icon = o; evas_object_show(o); + sel->o_icon = o; } } @@ -1470,6 +1463,8 @@ s->plugins = plugins; + s->prev = (sel->states ? sel->states->data : NULL); + sel->states = eina_list_prepend(sel->states, s); sel->state = s; Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-19 01:34:46 UTC (rev 48995) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-19 02:43:41 UTC (rev 48996) @@ -230,6 +230,8 @@ if (!sd->it_down) return; + edje_object_signal_emit(sd->view->bg, "e,action,hide,into", "e"); + edje_object_signal_emit(sd->view->bg, "e,action,hide,back", "e"); sd->it_down = NULL; if (ev->button == 1) @@ -1551,9 +1553,19 @@ diff_x = abs(ev->cur.canvas.x - sd->mouse_x); diff_y = abs(ev->cur.canvas.y - sd->mouse_y); - if (diff_y > 10 + (diff_x/2)) - goto end; + if (diff_y > 15 + (diff_x/2)) + { + edje_object_signal_emit(sd->view->bg, "e,action,hide,into", "e"); + edje_object_signal_emit(sd->view->bg, "e,action,hide,back", "e"); + goto end; + } + if (sd->view->state->prev) + edje_object_signal_emit(sd->view->bg, "e,action,show,back", "e"); + + if (sd->it_down->item->browseable) + edje_object_signal_emit(sd->view->bg, "e,action,show,into", "e"); + if ((sd->cur_item != sd->it_down) && (diff_x > 10)) { evry_item_select(sd->view->state, sd->it_down->item); @@ -1572,6 +1584,8 @@ } else if (sd->mouse_x - ev->cur.canvas.x > 100) { + edje_object_signal_emit(sd->view->bg, "e,action,hide,into", "e"); + edje_object_signal_emit(sd->view->bg, "e,action,hide,back", "e"); sd->it_down = NULL; sd->mouse_x = 0; sd->mouse_y = 0; |
From: Enlightenment S. <no-...@en...> - 2010-05-24 11:49:57
|
Log: - set it->icon automatically when icon is in theme or full path, no need for icon_get func - keep current view when browsing - theme tweaks Author: jeffdameth Date: 2010-05-24 04:49:46 -0700 (Mon, 24 May 2010) New Revision: 49179 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.c trunk/e/src/modules/everything/evry_plug_view_thumb.c trunk/e/src/modules/everything/evry_util.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-24 10:01:04 UTC (rev 49178) +++ trunk/e/data/themes/default.edc 2010-05-24 11:49:46 UTC (rev 49179) @@ -32886,8 +32886,9 @@ to_y: "input_base"; } rel2 { - to_x: "list_frame"; - to_y: "input_base"; + /* to: "list_frame"; */ + to_x: "list_frame"; + to_y: "input_base"; } } description { @@ -33521,7 +33522,7 @@ signal: "e,state,list_show"; source: "e"; action: STATE_SET "visible" 0.0; - transition: DECELERATE 0.1; + transition: ACCELERATE 0.05; target: "base"; target: "shadow_clip"; } @@ -33539,7 +33540,7 @@ signal: "e,state,entry_show"; source: "e"; action: STATE_SET "visible" 0.0; - transition: SINUSOIDAL 0.08; + transition: SINUSOIDAL 0.03; target: "input_over1"; target: "input_over2"; target: "input_base"; @@ -33976,7 +33977,7 @@ align: 0.0 0.5; min: 32 32; max: 32 32; - color: 255 255 255 0; + color: 255 255 255 0; } description { state: "visible" 0.0; @@ -33998,7 +33999,7 @@ align: 1.0 0.5; min: 32 32; max: 32 32; - color: 255 255 255 0; + color: 255 255 255 0; } description { state: "visible" 0.0; @@ -34109,7 +34110,7 @@ type: RECT; description { state: "default" 0.0; - visible: 0; + /* visible: 0; */ rel1 { relative: 0.0 0.0; offset: 0 4; @@ -34118,7 +34119,7 @@ relative: 1.0 1.0; offset: -5 -5; } - color: 255 255 255 0; + color: 255 255 255 128; } description { state: "visible" 0.0; @@ -34136,13 +34137,8 @@ state: "default" 0.0; rel1.to: "base"; rel2.to: "base"; - color: 235 235 235 255; + color: 225 225 225 255; } - description { - state: "selected" 0.0; - inherit: "default" 0.0; - color: 255 255 255 255; - } } part { name: "e.swallow.icon"; @@ -34182,7 +34178,7 @@ } } } - part { + part { name: "arrow"; mouse_events: 0; description { @@ -34191,7 +34187,7 @@ max: 12 12; /* aspect_preference: */ visible: 0; - align: 1.0 0.0; + align: 1.0 0.0; rel1 { to: "base"; relative: 1.0 0.0; @@ -34277,7 +34273,7 @@ transition: LINEAR 0.2; target: "bg_mark"; } - program { + program { name: "arrow_show"; signal: "e,state,browseable"; source: "e"; @@ -34285,44 +34281,29 @@ target: "arrow"; } program { - name: "thumb_gen"; - signal: "e,action,thumb,gen"; + name: "thumb_show_delayed"; + signal: "e,action,thumb,show_delayed"; source: "e"; action: STATE_SET "default" 0.0; - transition: DECELERATE 0.0; target: "base"; - after: "thumb_ungen"; + transition: DECELERATE 0.08; + after: "thumb_show2"; } program { - name: "thumb_ungen"; - signal: "e,action,thumb,ungen"; + name: "thumb_show"; + signal: "e,action,thumb,show"; source: "e"; - action: STATE_SET "visible" 0.0; - transition: SINUSOIDAL 0.15; - target: "base"; - } - program { - name: "thumb_show_delayed"; - signal: "e,action,thumb,show_delayed"; - source: "e"; action: STATE_SET "default" 0.0; + transition: DECELERATE 0.02; target: "base"; - after: "thumb_show_delayed2"; + after: "thumb_show2"; } program { - name: "thumb_show_delayed2"; + name: "thumb_show2"; action: STATE_SET "visible" 0.0; - transition: SINUSOIDAL 0.3; + transition: ACCELERATE 0.05; target: "base"; } - program { - name: "thumb_show"; - signal: "e,action,thumb,show"; - source: "e"; - action: STATE_SET "visible" 0.0; - transition: SINUSOIDAL 0.1; - target: "base"; - } } } group { @@ -34393,7 +34374,7 @@ type: RECT; description { state: "default" 0.0; - visible: 0; + /* visible: 0; */ rel1 { relative: 0.0 0.0; offset: 0 3; @@ -34428,13 +34409,8 @@ relative: 0.0 1.0; offset: 40 -1; } - color: 235 235 235 255; + color: 225 225 225 255; } - description { - state: "selected" 0.0; - inherit: "default" 0.0; - color: 255 255 255 255; - } } part { name: "e.swallow.icon"; @@ -34645,39 +34621,19 @@ target: "arrow"; } program { - name: "thumb_gen"; - signal: "e,action,thumb,gen"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: DECELERATE 0.0; - target: "base"; - after: "thumb_ungen"; - } - program { - name: "thumb_ungen"; - signal: "e,action,thumb,ungen"; - source: "e"; - action: STATE_SET "visible" 0.0; - target: "base"; - } - program { name: "thumb_show_delayed"; signal: "e,action,thumb,show_delayed"; source: "e"; - action: STATE_SET "default" 0.0; - target: "base"; - after: "thumb_show_delayed2"; - } - program { - name: "thumb_show_delayed2"; action: STATE_SET "visible" 0.0; target: "base"; + transition: ACCELERATE 0.02; } program { name: "thumb_show"; signal: "e,action,thumb,show"; source: "e"; action: STATE_SET "visible" 0.0; + transition: ACCELERATE 0.0; target: "base"; } program { @@ -34685,16 +34641,17 @@ signal: "e,state,detail,show"; source: "e"; action: STATE_SET "detail" 0.0; - target: "e.text.label"; - target: "e.text.detail"; + transition: ACCELERATE 0.06; + target: "e.text.label"; + target: "e.text.detail"; } program { name: "detail_hide"; signal: "e,state,detail,hide"; source: "e"; action: STATE_SET "default" 0.0; - target: "e.text.label"; - target: "e.text.detail"; + target: "e.text.label"; + target: "e.text.detail"; } } } Modified: trunk/e/src/modules/everything/e_mod_main.c =================================================================== --- trunk/e/src/modules/everything/e_mod_main.c 2010-05-24 10:01:04 UTC (rev 49178) +++ trunk/e/src/modules/everything/e_mod_main.c 2010-05-24 11:49:46 UTC (rev 49179) @@ -387,7 +387,7 @@ IFMODCFG(0x0001); evry_conf->rel_x = 0.5; evry_conf->rel_y = 0.33; - evry_conf->width = 435; + evry_conf->width = 450; evry_conf->height = 415; evry_conf->scroll_animate = 1; evry_conf->scroll_speed = 10.0; Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-24 10:01:04 UTC (rev 49178) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-24 11:49:46 UTC (rev 49179) @@ -103,6 +103,8 @@ edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h); edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb); evas_object_show(it->thumb); + edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); + edje_object_message_signal_process(it->frame); it->have_thumb = EINA_TRUE; it->do_thumb = EINA_FALSE; @@ -129,6 +131,13 @@ return 0; } +static int _sort_pos_cb(const void *d1, const void *d2) +{ + const Item *it1 = d1; + const Item *it2 = d2; + return ((it1->x + it1->y * 4) - (it2->x + it2->y * 4)); +} + static int _thumb_idler(void *data) { @@ -136,10 +145,13 @@ Eina_List *l, *ll; Item *it; char *suffix; - + int w, h; + if (!sd || sd->clearing) return 1; + sd->queue = eina_list_sort(sd->queue, -1, _sort_pos_cb); + EINA_LIST_FOREACH_SAFE(sd->queue, l, ll, it) { if (!it->image && !it->have_thumb) @@ -148,6 +160,10 @@ if (it->image) { + e_icon_size_get(it->image, &w, &h); + if (w && h) + edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h); + edje_object_part_swallow(it->frame, "e.swallow.icon", it->image); evas_object_show(it->image); } @@ -177,7 +193,16 @@ e_thumb_icon_size_set(it->thumb, it->w, it->h); e_thumb_icon_begin(it->thumb); it->do_thumb = EINA_TRUE; + + if (it->image) + edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); } + else + { + edje_object_signal_emit(it->frame, "e,action,thumb,show", "e"); + } + + e_util_wakeup(); sd->queue = eina_list_remove_list(sd->queue, l); return 1; @@ -296,10 +321,9 @@ evas_object_show(it->frame); - if (it->changed) - edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); - else - edje_object_signal_emit(it->frame, "e,action,thumb,show", "e"); + /* if (it->changed) + * edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); + * else */ if (it->item->browseable) edje_object_signal_emit(it->frame, "e,state,browseable", "e"); @@ -1073,20 +1097,15 @@ if (p != v->plugin) { - if (p->config->view_mode >= 0) + if (p->config->view_mode != v->mode) { - if (p->config->view_mode != v->mode) - _clear_items(v->span); + _clear_items(v->span); - v->mode = p->config->view_mode; + if (p->config->view_mode < 0) + v->mode = evry_conf->view_mode; + else + v->mode = p->config->view_mode; } - else - { - if (v->mode_prev != v->mode) - _clear_items(v->span); - - v->mode = v->mode_prev; - } } /* go through current view items */ @@ -1610,7 +1629,7 @@ View *v; Ecore_Event_Handler *h; - + if (!s->plugin) return NULL; @@ -1619,11 +1638,17 @@ v->state = s; v->evas = evas_object_evas_get(swallow); - if (parent->mode < 0) + if ((s->selector->states->next) && + ((s->plugin->config->view_mode < 0) || + (!strcmp(s->plugin->name, N_("All"))))) + v->mode = parent->mode; + else if (s->plugin->config->view_mode >= 0) + v->mode = s->plugin->config->view_mode; + else v->mode = evry_conf->view_mode; - else - v->mode = parent->mode; + v->plugin = s->plugin; + v->mode_prev = v->mode; v->zoom = parent->zoom; Modified: trunk/e/src/modules/everything/evry_util.c =================================================================== --- trunk/e/src/modules/everything/evry_util.c 2010-05-24 10:01:04 UTC (rev 49178) +++ trunk/e/src/modules/everything/evry_util.c 2010-05-24 11:49:46 UTC (rev 49179) @@ -434,6 +434,7 @@ evry_icon_theme_get(const char *icon, Evas *e) { Evas_Object *o = e_icon_add(e); + e_icon_preload_set(o, 1); if (e_config->icon_theme_overrides) { @@ -510,10 +511,11 @@ if (it->icon) { - o = e_icon_add(e); - if (it->icon[0] == '/') { + o = e_icon_add(e); + e_icon_preload_set(o, 1); + if (!e_icon_file_set(o, it->icon)) { evas_object_del(o); @@ -527,7 +529,7 @@ } if (!(o) && (!it->icon) && file->mime && - ((!strncmp(file->mime, "image/", 6)) || + (/* (!strncmp(file->mime, "image/", 6)) || */ (!strncmp(file->mime, "video/", 6)) || (!strncmp(file->mime, "application/pdf", 15))) && (evry_file_url_get(file))) @@ -570,6 +572,18 @@ o = _file_icon_get(it, e); if (o) return o; + if (!o && it->icon && it->icon[0] == '/') + { + o = e_icon_add(e); + e_icon_preload_set(o, 1); + + if (!e_icon_file_set(o, it->icon)) + { + evas_object_del(o); + o = NULL; + } + } + if (!o && it->icon) o = evry_icon_theme_get(it->icon, e); |
From: Enlightenment S. <no-...@en...> - 2010-05-24 22:08:24
|
Log: - do slide animation in theme - cleanups Author: jeffdameth Date: 2010-05-24 15:08:15 -0700 (Mon, 24 May 2010) New Revision: 49186 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/e_mod_main.h trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_plug_aggregator.c trunk/e/src/modules/everything/evry_plug_view_help.c trunk/e/src/modules/everything/evry_plug_view_thumb.c trunk/e/src/modules/everything/evry_view_plugin_tabs.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/data/themes/default.edc 2010-05-24 22:08:15 UTC (rev 49186) @@ -32783,7 +32783,629 @@ ///////////////////////////////////////////////////////////////////////////// /*** MOD: EVERYTHING ***/ +/////////////////////////////////////////////////////////////////////////////// + group { + name: "e/modules/everything/list"; + images { + image: "base_bg.png" COMP; + image: "inset_sunk.png" COMP; + image: "menu_sel_bg.png" COMP; + image: "menu_sel_fg.png" COMP; + image: "everything_drop.png" COMP; + image: "everything_bar.png" COMP; + image: "everything_box.png" COMP; + image: "vgrad_dark.png" COMP; + } + data.item: "shaped" "1"; + data.item: "shadow_offset" "50"; + parts { + part { + name: "list_frame"; + type: RECT; + description { + state: "default" 0.0; + visible: 0; + /* rel1.to: "list_win"; + * rel2.to: "list_win"; */ + } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + rel1.offset: 50 0; + rel2.offset: -51 -40; + } + } + part { + name: "shadow_clip"; + type: RECT; + description { + state: "default" 0.0; + rel1.to: "list_shadow"; + rel2.to: "list_shadow"; + color: 255 255 255 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { + name: "list_shadow"; + clip_to: "shadow_clip"; + description { + state: "default" 0.0; + visible: 0; + /* rel1.to: "list_win"; */ + rel1.offset: 0 -50; + rel2 { + relative: 1.0 1.0; + to: "base"; + offset: 47 40; + } + image { + normal: "everything_drop.png"; + middle: 0; + border: 50 50 50 50; + } + fill.smooth: 1; + } + description { + state: "composite" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + relative: 0.0 1.0; + to_x: "list_frame"; + to_y: "input_base"; + } + rel2 { + to_x: "list_frame"; + to_y: "input_base"; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + rel2 { + to: "list_frame"; + offset: -1 -1; + } + } + } + part { + name: "input_base"; + type: RECT; + description { + state: "default" 0.0; + rel1 { + /* to_y: "list_win"; */ + to_x: "base"; + } + + rel2 { + relative: 1.0 0.0; + /* to_y: "list_win"; */ + to_x: "base"; + offset: -1 1; + } + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + rel2.offset: -1 24; + } + } + part { + name: "list_win_bg"; + type: RECT; + description { + state: "default" 0.0; + rel1.to_x: "base"; + rel1.to_y: "input_base"; + + rel2.to: "base"; + rel2.offset: -1 -3; + color: 225 225 225 255; + } + } + part { + name: "bar_base"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + visible: 0; + rel1 { + relative: 0.0 1.0; + to: "base"; + offset: 0 -26; + } + rel2 { + relative: 1.0 1.0; + to: "base"; + offset: -1 -2; + } + } + } + part { + name: "bar_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "bar_base"; + offset: 2 2; + } + rel2 { + to: "bar_base"; + offset: -2 -2; + } + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + color: 255 255 255 0; + } + } + part { + name: "bar_bg"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + min: 32 25; + max: 9999 25; + fixed: 1 1; + rel1 { + offset: -1 2; + to: "bar_base"; + } + rel2 { + offset: -1 -5; + to: "bar_base"; + } + image { + normal: "everything_bar.png"; + border: 4 4 4 4; + } + color: 240 240 240 255; + } + } + part { + name: "e.swallow.bar"; + clip_to: "bar_clip"; + type: SWALLOW; + description { + state: "default" 0.0; + rel1.to: "bar_clip"; + rel1.offset: -1 0; + rel2.to: "bar_clip"; + rel2.offset: -1 -1; + } + } + part { + name: "bar_over2"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "bar_bg"; + rel1.offset: -1 -2; + rel2.to: "bar_bg"; + rel2.offset: 1 1; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } + color: 255 255 255 235; + } + } + part { + name: "bar_over1"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1.to: "bar_bg"; + rel1.offset: 0 -2; + rel2.to: "bar_bg"; + rel2.offset: 1 -1; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 128; + } + } + part { + name: "input_bg"; + clip_to: "input_base"; + description { + state: "default" 0.0; + fixed: 1 1; + min: 32 28; + max: 9999 28; + rel1 { + offset: -3 0; + to: "input_base"; + } + rel2 { + offset: 1 0; + to: "input_base"; + } + image { + normal: "bt_dis_base.png"; + border: 4 4 4 4; + } + color: 235 235 235 255; + } + } + part { + name: "e.text.label"; + type: TEXT; + effect: SHADOW; + scale: 1; + clip_to: "input_base"; + description { + state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + rel1 { + offset: 10 7; + to: "input_bg"; + } + rel2 { + relative: 0.0 1.0; + offset: 10 -5; + to: "input_bg"; + } + color: 0 0 0 255; + color3: 255 255 255 128; + text { + font: "Sans:style=Bold"; + size: 12; + align: 0.0 0.5; + min: 1 1; + } + } + } + part { + name: "input_over2"; + mouse_events: 0; + clip_to: "input_base"; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel2.to: "input_bg"; + image { + normal: "bt_dis_shine.png"; + border: 4 4 4 4; + } + color: 255 255 255 180; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "input_over1"; + mouse_events: 0; + clip_to: "input_base"; + description { + state: "default" 0.0; + visible: 0; + rel1.to: "input_bg"; + rel1.offset: -1 0; + rel2.to: "input_bg"; + rel2.offset: -1 4; + rel2.relative: 1.0 0.5; + image { + normal: "bt_dis_hilight.png"; + border: 4 4 4 0; + } + color: 255 255 255 100; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "list_clip"; + type: RECT; + clip_to: "base"; + description { + state: "default" 0.0; + color: 255 255 255 255; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 2 0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + offset: -3 0; + to_y: "bar_base"; + to_x: "base"; + } + } + } + part { + name: "list_bg"; + clip_to: "base"; + description { + state: "default" 0.0; + image.normal: "vgrad_dark.png"; + rel1 { + to: "list_clip"; + offset: 0 0; + } + rel2 { + to: "list_clip"; + offset: 0 0; + } + fill.smooth: 0; + } + } + part { + name: "e.swallow.list"; + type: SWALLOW; + clip_to: "list_clip"; + mouse_events: 1; + description { + state: "default" 0.0; + min: 32 170; + fixed: 1 1; + rel1 { + relative: 0.0 0.0; + offset: 0 3; + to: "list_clip"; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + to: "list_clip"; + } + } + description { + state: "default" 1.0; + inherit: "default" 0.0; + rel1 { + relative: -1.0 0.0; + } + rel2 { + relative: 0.0 1.0; + } + } + } + part { + name: "e.swallow.list2"; + type: SWALLOW; + clip_to: "list_clip"; + mouse_events: 1; + description { + state: "default" 0.0; + min: 32 170; + fixed: 1 1; + rel1 { + relative: 1.0 0.0; + offset: 0 3; + to: "list_clip"; + } + rel2 { + relative: 2.0 1.0; + offset: -1 -1; + to: "list_clip"; + } + } + description { + state: "default" 1.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 0.0; + } + rel2 { + relative: 1.0 1.0; + } + } + } + part { + name: "list_over"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + offset: -1 -1; + to: "list_bg"; + } + rel2 { + offset: -1 -1; + to: "list_bg"; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; + color: 200 200 200 255; + } + } + part { + name: "list_over2"; + clip_to: "base"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + offset: -1 -1; + to: "list_bg"; + } + rel2 { + offset: -1 -1; + to: "list_bg"; + } + image { + normal: "inset_sunk.png"; + border: 7 7 7 7; + middle: 0; + } + fill.smooth : 0; + color: 200 200 200 255; + } + } + part { + name: "box"; + mouse_events: 0; + description { + state: "default" 0.0; + rel1 { + to: "base"; + } + rel2 { + to: "base"; + offset: -1 -1; + } + image { + normal: "everything_box.png"; + border: 4 4 4 4; + middle: 0; + } + fill.smooth : 1; + color: 255 255 255 255; + } + } + } + programs { + program { + name: "composite_mode"; + signal: "e,state,composited"; + source: "e"; + action: STATE_SET "composite" 0.0; + target: "list_frame"; + target: "list_shadow"; + } + program { + name: "show_list"; + signal: "e,state,list_show"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.1; + target: "base"; + target: "shadow_clip"; + } + program { + name: "hide_list"; + signal: "e,state,list_hide"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: ACCELERATE 0.08; + target: "base"; + target: "shadow_clip"; + } + program { + name: "show_entry"; + signal: "e,state,entry_show"; + source: "e"; + action: STATE_SET "visible" 0.0; + transition: SINUSOIDAL 0.08; + target: "input_over1"; + target: "input_over2"; + target: "input_base"; + } + program { + name: "hide_entry"; + signal: "e,state,entry_hide"; + source: "e"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.08; + target: "input_over1"; + target: "input_over2"; + target: "input_base"; + } + program { + name: "update_list"; + signal: "e,signal,update"; + source: "e"; + action: STATE_SET "faded" 0.0; + /* transition: SINUSOIDAL 0.5; */ + target: "bar_clip"; + after: "update_list2"; + } + program { + name: "update_list2"; + action: STATE_SET "default" 0.0; + /* transition: SINUSOIDAL 0.15; */ + target: "bar_clip"; + } + + program { + name: "slide_left"; + signal: "e,action,slide,left"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "e.swallow.list"; + target: "e.swallow.list2"; + after: "slide_left2"; + } + program { + name: "slide_left2"; + action: STATE_SET "default" 1.0; + transition: ACCELERATE 0.15; + target: "e.swallow.list"; + target: "e.swallow.list2"; + after: "left_end"; + } + program { name: "left_end"; + action: SIGNAL_EMIT "e,action,slide,left,finished" ""; + } + program { + name: "slide_right"; + signal: "e,action,slide,right"; + source: "e"; + action: STATE_SET "default" 1.0; + target: "e.swallow.list"; + target: "e.swallow.list2"; + after: "slide_right2"; + } + program { + name: "slide_right2"; + action: STATE_SET "default" 0.0; + transition: ACCELERATE 0.15; + target: "e.swallow.list"; + target: "e.swallow.list2"; + after: "right_end"; + } + program { name: "right_end"; + action: SIGNAL_EMIT "e,action,slide,right,finished" ""; + } + program { + name: "slide_default"; + signal: "e,action,slide,default"; + source: "e"; + action: STATE_SET "default" 0.0; + target: "e.swallow.list"; + target: "e.swallow.list2"; + } + } + } group { name: "e/modules/everything/main"; images { @@ -32800,13 +33422,14 @@ data.item: "shaped" "1"; data.item: "shadow_offset" "50"; parts { - /*************** list ***************/ + part { - name: "list_win"; - type: RECT; + name: "list"; + source: "e/modules/everything/list"; + type: GROUP; description { state: "default" 0.0; - visible: 0; + visible: 1; min: 300 155; rel1 { to_y: "frame"; @@ -32818,440 +33441,7 @@ } } } - part { - name: "list_frame"; - type: RECT; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "list_win"; - rel2.to: "list_win"; - } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - rel1.offset: 50 0; - rel2.offset: -51 -40; - } - } - part { - name: "shadow_clip"; - type: RECT; - description { - state: "default" 0.0; - rel1.to: "list_shadow"; - rel2.to: "list_shadow"; - color: 255 255 255 0; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - color: 255 255 255 255; - } - } - part { - name: "list_shadow"; - clip_to: "shadow_clip"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "list_win"; - rel1.offset: 0 -50; - rel2 { - relative: 1.0 1.0; - to: "base"; - offset: 47 40; - } - image { - normal: "everything_drop.png"; - middle: 0; - border: 50 50 50 50; - } - fill.smooth: 1; - } - description { - state: "composite" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "base"; - type: RECT; - description { - state: "default" 0.0; - rel1 { - relative: 0.0 1.0; - to_x: "list_frame"; - to_y: "input_base"; - } - rel2 { - /* to: "list_frame"; */ - to_x: "list_frame"; - to_y: "input_base"; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - rel2 { - to: "list_frame"; - offset: -1 -1; - } - } - } - part { - name: "input_base"; - type: RECT; - description { - state: "default" 0.0; - rel1 { - to_y: "list_win"; - to_x: "base"; - } - rel2 { - relative: 1.0 0.0; - to_y: "list_win"; - to_x: "base"; - offset: -1 1; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - rel2.offset: -1 24; - } - } - part { - name: "list_win_bg"; - type: RECT; - description { - state: "default" 0.0; - rel1.to_x: "base"; - rel1.to_y: "input_base"; - - rel2.to: "base"; - rel2.offset: -1 -3; - color: 225 225 225 255; - } - } - part { - name: "bar_base"; - type: RECT; - mouse_events: 0; - description { - state: "default" 0.0; - visible: 0; - rel1 { - relative: 0.0 1.0; - to: "base"; - offset: 0 -26; - } - rel2 { - relative: 1.0 1.0; - to: "base"; - offset: -1 -2; - } - } - } - part { - name: "bar_clip"; - type: RECT; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "bar_base"; - offset: 2 2; - } - rel2 { - to: "bar_base"; - offset: -2 -2; - } - } - description { - state: "faded" 0.0; - inherit: "default" 0.0; - color: 255 255 255 0; - } - } - part { - name: "bar_bg"; - clip_to: "base"; - mouse_events: 0; - description { - state: "default" 0.0; - min: 32 25; - max: 9999 25; - fixed: 1 1; - rel1 { - offset: -1 2; - to: "bar_base"; - } - rel2 { - offset: -1 -5; - to: "bar_base"; - } - image { - normal: "everything_bar.png"; - border: 4 4 4 4; - } - color: 240 240 240 255; - } - } - part { - name: "e.swallow.bar"; - clip_to: "bar_clip"; - type: SWALLOW; - description { - state: "default" 0.0; - rel1.to: "bar_clip"; - rel1.offset: -1 0; - rel2.to: "bar_clip"; - rel2.offset: -1 -1; - } - } - part { - name: "bar_over2"; - clip_to: "base"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1.to: "bar_bg"; - rel1.offset: -1 -2; - rel2.to: "bar_bg"; - rel2.offset: 1 1; - image { - normal: "bt_dis_shine.png"; - border: 4 4 4 4; - } - color: 255 255 255 235; - } - } - part { - name: "bar_over1"; - clip_to: "base"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1.to: "bar_bg"; - rel1.offset: 0 -2; - rel2.to: "bar_bg"; - rel2.offset: 1 -1; - rel2.relative: 1.0 0.5; - image { - normal: "bt_dis_hilight.png"; - border: 4 4 4 0; - } - color: 255 255 255 128; - } - } - part { - name: "input_bg"; - clip_to: "input_base"; - description { - state: "default" 0.0; - fixed: 1 1; - min: 32 28; - max: 9999 28; - rel1 { - offset: -3 0; - to: "input_base"; - } - rel2 { - offset: 1 0; - to: "input_base"; - } - image { - normal: "bt_dis_base.png"; - border: 4 4 4 4; - } - color: 235 235 235 255; - } - } - part { - name: "e.text.label"; - type: TEXT; - effect: SHADOW; - scale: 1; - clip_to: "input_base"; - description { - state: "default" 0.0; - fixed: 0 1; - align: 0.0 0.5; - rel1 { - offset: 10 7; - to: "input_bg"; - } - rel2 { - relative: 0.0 1.0; - offset: 10 -5; - to: "input_bg"; - } - color: 0 0 0 255; - color3: 255 255 255 128; - text { - font: "Sans:style=Bold"; - size: 12; - align: 0.0 0.5; - min: 1 1; - } - } - } - part { - name: "input_over2"; - mouse_events: 0; - clip_to: "input_base"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "input_bg"; - rel2.to: "input_bg"; - image { - normal: "bt_dis_shine.png"; - border: 4 4 4 4; - } - color: 255 255 255 180; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "input_over1"; - mouse_events: 0; - clip_to: "input_base"; - description { - state: "default" 0.0; - visible: 0; - rel1.to: "input_bg"; - rel1.offset: -1 0; - rel2.to: "input_bg"; - rel2.offset: -1 4; - rel2.relative: 1.0 0.5; - image { - normal: "bt_dis_hilight.png"; - border: 4 4 4 0; - } - color: 255 255 255 100; - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - visible: 1; - } - } - part { - name: "list_clip"; - type: RECT; - clip_to: "base"; - description { - state: "default" 0.0; - color: 255 255 255 255; - fixed: 1 1; - rel1 { - relative: 0.0 0.0; - offset: 2 0; - to: "base"; - } - rel2 { - relative: 1.0 0.0; - offset: -3 0; - to_y: "bar_base"; - to_x: "base"; - } - } - } - part { - name: "list_bg"; - clip_to: "base"; - description { - state: "default" 0.0; - image.normal: "vgrad_dark.png"; - rel1 { - to: "list_clip"; - offset: 0 0; - } - rel2 { - to: "list_clip"; - offset: 0 0; - } - fill.smooth: 0; - } - } - part { - name: "e.swallow.list"; - type: SWALLOW; - clip_to: "list_clip"; - mouse_events: 1; - description { - state: "default" 0.0; - min: 32 170; - fixed: 1 1; - rel1 { - relative: 0.0 0.0; - offset: 0 3; - to: "list_clip"; - } - rel2 { - relative: 1.0 1.0; - offset: -1 -1; - to: "list_clip"; - } - } - description { - state: "visible" 0.0; - inherit: "default" 0.0; - min: 32 150; - } - } - part { - name: "list_over"; - clip_to: "base"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - offset: -1 -1; - to: "list_bg"; - } - rel2 { - offset: -1 -1; - to: "list_bg"; - } - image { - normal: "inset_sunk.png"; - border: 7 7 7 7; - middle: 0; - } - fill.smooth : 0; - color: 200 200 200 255; - } - } - part { - name: "box"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "base"; - } - rel2 { - to: "base"; - offset: -1 -1; - } - image { - normal: "everything_box.png"; - border: 4 4 4 4; - middle: 0; - } - fill.smooth : 1; - color: 255 255 255 255; - } - } /*************** top ***************/ part { name: "win"; @@ -33514,64 +33704,7 @@ target: "win"; target: "frame"; target: "shadow"; - target: "list_frame"; - target: "list_shadow"; } - program { - name: "show_list"; - signal: "e,state,list_show"; - source: "e"; - action: STATE_SET "visible" 0.0; - transition: ACCELERATE 0.05; - target: "base"; - target: "shadow_clip"; - } - program { - name: "hide_list"; - signal: "e,state,list_hide"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: ACCELERATE 0.08; - target: "base"; - target: "shadow_clip"; - } - program { - name: "show_entry"; - signal: "e,state,entry_show"; - source: "e"; - action: STATE_SET "visible" 0.0; - transition: SINUSOIDAL 0.03; - target: "input_over1"; - target: "input_over2"; - target: "input_base"; - target: "e.swallow.list"; - } - program { - name: "hide_entry"; - signal: "e,state,entry_hide"; - source: "e"; - action: STATE_SET "default" 0.0; - transition: SINUSOIDAL 0.08; - target: "input_over1"; - target: "input_over2"; - target: "input_base"; - target: "e.swallow.list"; - } - program { - name: "update_list"; - signal: "e,signal,update"; - source: "e"; - action: STATE_SET "faded" 0.0; - /* transition: SINUSOIDAL 0.5; */ - target: "bar_clip"; - after: "update_list2"; - } - program { - name: "update_list2"; - action: STATE_SET "default" 0.0; - /* transition: SINUSOIDAL 0.15; */ - target: "bar_clip"; - } } } group { @@ -34641,7 +34774,7 @@ signal: "e,state,detail,show"; source: "e"; action: STATE_SET "detail" 0.0; - transition: ACCELERATE 0.06; + transition: ACCELERATE 0.08; target: "e.text.label"; target: "e.text.detail"; } Modified: trunk/e/src/modules/everything/e_mod_main.h =================================================================== --- trunk/e/src/modules/everything/e_mod_main.h 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/e_mod_main.h 2010-05-24 22:08:15 UTC (rev 49186) @@ -37,10 +37,15 @@ int mouse_out; int mouse_button; + + Evry_View *view_clearing; + Evry_View *view_freeing; }; struct _Evry_Selector { + Evry_Window *win; + /* current state */ Evry_State *state; @@ -112,9 +117,11 @@ Evry_View *(*create) (Evry_View *view, const Evry_State *s, const Evas_Object *swallow); void (*destroy) (Evry_View *view); int (*cb_key_down) (Evry_View *view, const Ecore_Event_Key *ev); - int (*update) (Evry_View *view, int slide); - void (*clear) (Evry_View *view, int slide); + int (*update) (Evry_View *view); + void (*clear) (Evry_View *view); + Ecore_Timer *clear_timer; + int priority; }; Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/evry.c 2010-05-24 22:08:15 UTC (rev 49186) @@ -24,7 +24,7 @@ static int _evry_cb_update_timer(void *data); static Evry_State *_evry_state_new(Evry_Selector *sel, Eina_List *plugins); -static void _evry_state_pop(Evry_Selector *sel); +static void _evry_state_pop(Evry_Selector *sel, int immediate); static Evry_Selector *_evry_selector_new(Evry_Window *win, int type); static void _evry_selector_free(Evry_Selector *sel); @@ -49,7 +49,7 @@ static void _evry_view_clear(Evry_State *s); static void _evry_view_update(Evry_State *s, Evry_Plugin *plugin); static int _evry_view_key_press(Evry_State *s, Ecore_Event_Key *ev); -static void _evry_view_show(Evry_View *v); +static void _evry_view_show(Evry_View *v, int slide); static void _evry_view_hide(Evry_View *v, int slide); static void _evry_item_desel(Evry_State *s, Evry_Item *it); @@ -99,7 +99,7 @@ { s->cur_plugins = eina_list_prepend(s->cur_plugins, sel->aggregator); } - + sel->aggregator->state = s; return 1; @@ -148,7 +148,7 @@ else { s->view = view->create(view, s, win->o_main); - _evry_view_show(s->view); + _evry_view_show(s->view, 0); } _evry_list_win_show(); @@ -266,7 +266,7 @@ _evry_selector_activate(SUBJ_SEL); if (!evry_conf->hide_input) - edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_show", "e"); if (!evry_conf->hide_list) win->show_timer = ecore_timer_add(0.01, _cb_show_timer, win); @@ -305,7 +305,7 @@ while ((CUR_SEL)->states->next) { slide = 1; - _evry_state_pop(CUR_SEL); + _evry_state_pop(CUR_SEL, 1); } sel = CUR_SEL; @@ -317,8 +317,8 @@ _evry_aggregator_fetch(sel, s->input); _evry_selector_update(sel); _evry_update_text_label(s); - _evry_view_show(s->view); - s->view->update(s->view, slide); + _evry_view_show(s->view, slide); + s->view->update(s->view); return; } @@ -534,7 +534,7 @@ { s = sel->state; if (s->view) - s->view->update(s->view, 0); + s->view->update(s->view); else _evry_view_update(s, NULL); } @@ -689,8 +689,8 @@ win->visible = EINA_TRUE; _evry_list_win_update((CUR_SEL)->state); - edje_object_signal_emit(win->o_main, "e,state,list_show", "e"); - edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,list_show", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_show", "e"); } static void @@ -706,10 +706,10 @@ if (hide) { win->visible = EINA_FALSE; - edje_object_signal_emit(win->o_main, "e,state,list_hide", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,list_hide", "e"); if (evry_conf->hide_input && (!(sel->state) || (sel->state->input[0]))) - edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_hide", "e"); } } @@ -743,6 +743,7 @@ if (e_config->use_composite) { edje_object_signal_emit(o, "e,state,composited", "e"); + edje_object_signal_emit(o, "list:e,state,composited", "e"); edje_object_message_signal_process(o); edje_object_calc_force(o); @@ -1018,6 +1019,7 @@ } win->selectors[type] = sel; + sel->win = win; return sel; } @@ -1031,7 +1033,7 @@ _evry_view_clear(sel->state); while (sel->states) - _evry_state_pop(sel); + _evry_state_pop(sel, 1); EVRY_PLUGIN_FREE(sel->aggregator); EVRY_PLUGIN_FREE(sel->actions); @@ -1105,7 +1107,7 @@ if (s->cur_item) _evry_selector_label_set(sel, "e.text.plugin", EVRY_ITEM(s->cur_item->plugin)->label); - _evry_view_show(s->view); + _evry_view_show(s->view, 0); _evry_list_win_update(s); } } @@ -1368,7 +1370,7 @@ Evry_Selector *sel = ACTN_SEL; while (sel->state) - _evry_state_pop(sel); + _evry_state_pop(sel, 1); if (!it) return 0; @@ -1403,7 +1405,7 @@ Evry_Item *it; while (sel->state) - _evry_state_pop(sel); + _evry_state_pop(sel, 1); it = (ACTN_SEL)->state->cur_item; @@ -1452,7 +1454,7 @@ } static void -_evry_state_pop(Evry_Selector *sel) +_evry_state_pop(Evry_Selector *sel, int immediate) { Evry_Plugin *p; Evry_State *s; @@ -1465,7 +1467,12 @@ free(s->inp); if (s->view) - s->view->destroy(s->view); + { + if (immediate) + s->view->destroy(s->view); + else + _evry_view_hide(s->view, -1); + } if (s->sel_items) eina_list_free(s->sel_items); @@ -1529,8 +1536,8 @@ s->view = view->create(view, s, win->o_main); if (s->view) { - _evry_view_show(s->view); - s->view->update(s->view, -1); + _evry_view_show(s->view, -1); + s->view->update(s->view); } } @@ -1633,8 +1640,8 @@ s->view = view->create(view, s, win->o_main); if (s->view) { - _evry_view_show(s->view); - s->view->update(s->view, -1); + _evry_view_show(s->view, -1); + s->view->update(s->view); } } @@ -1654,7 +1661,7 @@ if (!s || !sel->states->next) return 0; - _evry_state_pop(sel); + _evry_state_pop(sel, 0); s = sel->state; _evry_aggregator_fetch(sel, s->input); @@ -1662,8 +1669,8 @@ if (sel == SUBJ_SEL) _evry_selector_update_actions(sel); _evry_update_text_label(s); - _evry_view_show(s->view); - s->view->update(s->view, 1); + _evry_view_show(s->view, 1); + s->view->update(s->view); return 1; } @@ -1718,7 +1725,7 @@ else if (CUR_SEL == OBJ_SEL && dir > 0) { while ((CUR_SEL)->states) - _evry_state_pop(CUR_SEL); + _evry_state_pop(CUR_SEL, 1); edje_object_signal_emit(win->o_main, "e,state,object_selector_hide", "e"); _evry_selector_activate(SUBJ_SEL); @@ -1809,7 +1816,7 @@ if (s->plugin == s->selector->aggregator) _evry_aggregator_fetch(s->selector, s->input); if (s->view) - s->view->update(s->view, 0); + s->view->update(s->view); return 1; } @@ -1870,8 +1877,18 @@ old = ev->key; win->request_selection = EINA_FALSE; - if (!strcmp(ev->key, "KP_Enter")) + if (!strcmp(ev->key, "F1")) { + edje_object_signal_emit(win->o_main, "list:e,action,slide,left", "e"); + goto end; + } + else if (!strcmp(ev->key, "F2")) + { + edje_object_signal_emit(win->o_main, "list:e,action,slide,right", "e"); + goto end; + } + else if (!strcmp(ev->key, "KP_Enter")) + { ev->key = "Return"; } else if (ev->modifiers & ECORE_EVENT_MODIFIER_ALT) @@ -2082,12 +2099,12 @@ if (!win->visible && evry_conf->hide_input) { if (strlen(s->inp) > 0) - edje_object_signal_emit(win->o_main, "e,state,entry_show", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_show", "e"); else - edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_hide", "e"); } - edje_object_part_text_set(win->o_main, "e.text.label", s->inp); + edje_object_part_text_set(win->o_main, "list:e.text.label", s->inp); } static void @@ -2105,7 +2122,7 @@ sel->update_timer = ecore_timer_add(MATCH_LAG, _evry_cb_update_timer, sel); - edje_object_signal_emit(win->o_main, "e,signal,update", "e"); + edje_object_signal_emit(win->o_main, "list:e,signal,update", "e"); } } @@ -2144,7 +2161,7 @@ _evry_update(sel, 1); if (!win->visible && evry_conf->hide_input) - edje_object_signal_emit(win->o_main, "e,state,entry_hide", "e"); + edje_object_signal_emit(win->o_main, "list:e,state,entry_hide", "e"); return 1; } @@ -2313,30 +2330,138 @@ } static void -_evry_view_show(Evry_View *v) +_evry_view_show(Evry_View *v, int slide) { if (!v) return; - if (v->o_list) + if (v->o_bar) { - edje_object_part_swallow(win->o_main, "e.swallow.list", v->o_list); + edje_object_part_swallow(win->o_main, "list:e.swallow.bar", v->o_bar); + evas_object_show(v->o_bar); + } + + if (!v->o_list) + return; + + if (slide < 0) + { + edje_object_part_swallow(win->o_main, "list:e.swallow.list2", v->o_list); evas_object_show(v->o_list); + + edje_object_signal_emit(win->o_main, "list:e,action,slide,left", "e"); } + else if (slide > 0) + { + edje_object_part_swallow(win->o_main, "list:e.swallow.list", v->o_list); + evas_object_show(v->o_list); - if (v->o_bar) + edje_object_signal_emit(win->o_main, "list:e,action,slide,right", "e"); + } + else { - edje_object_part_swallow(win->o_main, "e.swallow.bar", v->o_bar); - evas_object_show(v->o_bar); + edje_object_part_swallow(win->o_main, "list:e.swallow.list", v->o_list); + evas_object_show(v->o_list); + + edje_object_signal_emit(win->o_main, "list:e,action,slide,default", "e"); } } +static int +_clear_timer(void *data) +{ + Evry_View *v = data; + + v->clear(v); + + if (v->o_list) + { + edje_object_part_unswallow(win->o_main, v->o_list); + evas_object_hide(v->o_list); + } + + v->clear_timer = NULL; + win->view_clearing = NULL; + + return 0; +} + +static int +_free_timer(void *data) +{ + Evry_View *v = data; + v->destroy(v); + win->view_freeing = NULL; + + return 0; +} + static void _evry_view_hide(Evry_View *v, int slide) { - if (!v) return; + if (win->view_freeing) + { + Evry_View *vv = win->view_freeing; - v->clear(v, slide); + ecore_timer_del(vv->clear_timer); + vv->destroy(vv); + win->view_freeing = NULL; + } + if (win->view_clearing) + { + Evry_View *vv = win->view_clearing; + + ecore_timer_del(vv->clear_timer); + vv->clear_timer = NULL; + vv->clear(vv); + + if (vv->o_list) + { + edje_object_part_unswallow(win->o_main, vv->o_list); + evas_object_hide(vv->o_list); + } + + win->view_clearing = NULL; + } + + if (!v || v->clear_timer) return; + + if (slide && v->o_list) + { + if (slide < 0) + { + evas_object_hide(v->o_list); + edje_object_part_unswallow(win->o_main, v->o_list); + + edje_object_part_swallow(win->o_main, "list:e.swallow.list2", v->o_list); + evas_object_show(v->o_list); + v->clear_timer = ecore_timer_add(0.2, _free_timer, v); + + win->view_freeing = v; + } + else + { + evas_object_hide(v->o_list); + edje_object_part_unswallow(win->o_main, v->o_list); + + edje_object_part_swallow(win->o_main, "list:e.swallow.list", v->o_list); + evas_object_show(v->o_list); + + v->clear_timer = ecore_timer_add(0.2, _clear_timer, v); + win->view_clearing = v; + } + + if (v->o_bar) + { + edje_object_part_unswallow(win->o_main, v->o_bar); + evas_object_hide(v->o_bar); + } + + return; + } + + v->clear(v); + if (v->o_list) { edje_object_part_unswallow(win->o_main, v->o_list); @@ -2359,11 +2484,11 @@ { Evry_View *view = evry_conf->views->data; s->view = view->create(view, s, win->o_main); - _evry_view_show(s->view); + _evry_view_show(s->view, 0); } if (s->view) - s->view->update(s->view, 0); + s->view->update(s->view); } static void @@ -2371,7 +2496,7 @@ { if (!s || !s->view) return; - s->view->clear(s->view, 0); + s->view->clear(s->view); } static int @@ -2439,8 +2564,8 @@ } s->view = v; - _evry_view_show(s->view); - view->update(s->view, 0); + _evry_view_show(s->view, 0); + view->update(s->view); return triggered; } Modified: trunk/e/src/modules/everything/evry_plug_aggregator.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_aggregator.c 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/evry_plug_aggregator.c 2010-05-24 22:08:15 UTC (rev 49186) @@ -180,7 +180,7 @@ { if (!eina_list_data_find_list(items, it)) { - it->usage = 0; + it->usage = -1; if (it->fuzzy_match == 0) it->fuzzy_match = evry_fuzzy_match(it->label, input); Modified: trunk/e/src/modules/everything/evry_plug_view_help.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_help.c 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/evry_plug_view_help.c 2010-05-24 22:08:15 UTC (rev 49186) @@ -5,7 +5,7 @@ static const Evry_State *state = NULL; static void -_view_clear(Evry_View *v, int slide) +_view_clear(Evry_View *v) { v->active = 0; evas_object_del(v->o_list); @@ -15,7 +15,7 @@ static int -_view_update(Evry_View *v, int slide) +_view_update(Evry_View *v) { return 1; } Modified: trunk/e/src/modules/everything/evry_plug_view_thumb.c =================================================================== --- trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/evry_plug_view_thumb.c 2010-05-24 22:08:15 UTC (rev 49186) @@ -55,8 +55,6 @@ double slide_to; int sliding; - int clearing; - int mouse_act; int mouse_x; int mouse_y; @@ -82,20 +80,17 @@ static View *view = NULL; -static void _view_clear(Evry_View *view, int slide); +static void _view_clear(Evry_View *view); static void _pan_item_select(Evas_Object *obj, Item *it, int scroll); static void _animator_del(Evas_Object *obj); +static int _animator(void *data); - - static void _thumb_gen(void *data, Evas_Object *obj, void *event_info) { Evas_Coord w, h; Item *it = data; Smart_Data *sd = evas_object_smart_data_get(it->obj); - if (sd->clearing) - return; if (!it->frame) return; @@ -104,7 +99,7 @@ edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb); evas_object_show(it->thumb); edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); - edje_object_message_signal_process(it->frame); + edje_object_message_signal_process(it->frame); it->have_thumb = EINA_TRUE; it->do_thumb = EINA_FALSE; @@ -146,12 +141,9 @@ Item *it; char *suffix; int w, h; - - if (!sd || sd->clearing) - return 1; sd->queue = eina_list_sort(sd->queue, -1, _sort_pos_cb); - + EINA_LIST_FOREACH_SAFE(sd->queue, l, ll, it) { if (!it->image && !it->have_thumb) @@ -201,8 +193,8 @@ { edje_object_signal_emit(it->frame, "e,action,thumb,show", "e"); } - - + + e_util_wakeup(); sd->queue = eina_list_remove_list(sd->queue, l); return 1; @@ -219,7 +211,7 @@ Evas_Event_Mouse_Down *ev = event_info; Item *it = data; Smart_Data *sd = evas_object_smart_data_get(it->obj); - if (!sd || sd->clearing) return; + if (!sd) return; sd->mouse_act = 1; sd->it_down = it; @@ -248,7 +240,7 @@ Evas_Event_Mouse_Up *ev = event_info; Item *it = data; Smart_Data *sd = evas_object_smart_data_get(it->obj); - if (!sd || sd->clearing) return; + if (!sd) return; sd->mouse_x = 0; sd->mouse_y = 0; @@ -310,6 +302,9 @@ evas_object_clip_set(it->frame, evas_object_clip_get(list)); + if (it->selected) + edje_object_signal_emit(it->frame, "e,state,selected", "e"); + if (it->item->marked) edje_object_signal_emit(it->frame, "e,state,marked", "e"); } @@ -321,10 +316,6 @@ evas_object_show(it->frame); - /* if (it->changed) - * edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); - * else */ - if (it->item->browseable) edje_object_signal_emit(it->frame, "e,state,browseable", "e"); @@ -516,7 +507,7 @@ if (changed) evas_object_smart_callback_call(obj, "changed", NULL); - if (!sd->clearing && !sd->thumb_idler) + if (!sd->thumb_idler) sd->thumb_idler = ecore_idle_enterer_add(_thumb_idler, sd); sd->idle_enter = NULL; @@ -569,6 +560,8 @@ Smart_Data *sd = evas_object_smart_data_get(obj); sd->x = x; sd->y = y; + /* printf("move %p %d %d\n", sd, x, y); */ + _e_smart_reconfigure(obj); } @@ -718,11 +711,6 @@ _animator_del(Evas_Object *obj) { Smart_Data *sd = evas_object_smart_data_get(obj); - if (sd->clearing) - { - sd->clearing = EINA_FALSE; - _view_clear(EVRY_VIEW(sd->view), 0); - } sd->animator = NULL; } @@ -772,30 +760,6 @@ 0, sd->scroll_align); } - if (sd->sliding) - { - sd->slide = ((sd->slide * (1.0 - spd)) + - (sd->slide_to * spd)); - - da = sd->slide - sd->slide_to; - if (da < 0.0) da = -da; - if (da < 0.02) - { - sd->slide = sd->slide_to; - sd->sliding = 0; - - if ((sd->view->mode == VIEW_MODE_THUMB) && - (sd->cur_item && - sd->cur_item->frame)) - edje_object_signal_emit(sd->cur_item->frame, - "e,state,selected", "e"); - } - else - wait++; - - evas_object_move(sd->view->span, sd->slide, sd->y); - } - if (wait) return 1; @@ -982,7 +946,7 @@ } static void -_view_clear(Evry_View *view, int slide) +_view_clear(Evry_View *view) { View *v = (View*) view; Smart_Data *sd = evas_object_smart_data_get(v->span); @@ -994,30 +958,6 @@ sd->mouse_act = 0; sd->it_down = NULL; - if (!sd->clearing && evry_conf->scroll_animate) - { - if (slide) - { - if (sd->items && !sd->animator) - sd->animator = ecore_animator_add(_animator, v->span); - sd->sliding = 1; - sd->slide = sd->x; - sd->slide_to = sd->x + sd->w * -slide; - - sd->clearing = EINA_TRUE; - return; - } - - if (sd->animator) - { - ecore_animator_del(sd->animator); - sd->animator = NULL; - } - } - - if (sd->clearing) - return; - _clear_items(v->span); if (sd->items) @@ -1072,7 +1012,7 @@ } static int -_view_update(Evry_View *view, int slide) +_view_update(Evry_View *view) { GET_VIEW(v, view); Smart_Data *sd = evas_object_smart_data_get(v->span); @@ -1091,7 +1031,7 @@ if (!p) { - _view_clear(view, 0); + _view_clear(view); return 1; } @@ -1129,6 +1069,8 @@ { sd->cur_item = v_it; v_it->selected = EINA_TRUE; + if (v->mode == VIEW_MODE_THUMB) + edje_object_signal_emit(v_it->frame, "e,state,selected", "e"); } else { @@ -1201,31 +1143,6 @@ v->tabs->update(v->tabs); - if (evry_conf->scroll_animate) - { - if (slide) - { - if (sd->items && !sd->animator) - sd->animator = ecore_animator_add(_animator, v->span); - - sd->clearing = EINA_FALSE; - - if (!sd->sliding) - sd->slide_to = sd->x; - else - sd->slide_to += sd->w; - - sd->slide = sd->x + sd->w * -slide; - - sd->sliding = 1; - } - else if (sd->sliding) - { - if (!sd->animator) - sd->animator = ecore_animator_add(_animator, v->span); - } - } - return 0; } @@ -1384,7 +1301,7 @@ if ((slide = v->tabs->key_down(v->tabs, ev))) { /* _view_update(view, -slide); */ - _view_update(view, 0); + _view_update(view); return 1; } @@ -1545,7 +1462,7 @@ { Evas_Event_Mouse_Wheel *ev = event_info; Smart_Data *sd = evas_object_smart_data_get(obj); - if (sd->clearing) return; + if (ev->z) { evas_object_hide(sd->selector); @@ -1563,9 +1480,6 @@ int diff_y, diff_x; if (!sd) return; - if (sd->clearing) - goto end; - if (!sd->mouse_x) goto end; @@ -1629,12 +1543,13 @@ View *v; Ecore_Event_Handler *h; - + if (!s->plugin) return NULL; v = E_NEW(View, 1); v->view = *view; + v->view.clear_timer = NULL; v->state = s; v->evas = evas_object_evas_get(swallow); @@ -1648,7 +1563,7 @@ v->mode = evry_conf->view_mode; v->plugin = s->plugin; - + v->mode_prev = v->mode; v->zoom = parent->zoom; @@ -1696,7 +1611,7 @@ GET_VIEW(v, view); - _view_clear(view, 0); + _view_clear(view); evas_object_del(v->span); evas_object_del(v->bg); Modified: trunk/e/src/modules/everything/evry_view_plugin_tabs.c =================================================================== --- trunk/e/src/modules/everything/evry_view_plugin_tabs.c 2010-05-24 19:19:44 UTC (rev 49185) +++ trunk/e/src/modules/everything/evry_view_plugin_tabs.c 2010-05-24 22:08:15 UTC (rev 49186) @@ -119,7 +119,7 @@ if (ev->button == 1) { _plugin_select(v, tab->plugin); - v->view->update(v->view, 0); + v->view->update(v->view); } } static void @@ -131,12 +131,12 @@ if (ev->z > 0) { _plugin_next(v); - v->view->update(v->view, 0); + v->view->update(v->view); } else if (ev->z < 0) { _plugin_prev(v); - v->view->update(v->view, 0); + v->view->update(v->view); } } |
From: Enlightenment S. <no-...@en...> - 2010-05-25 16:14:54
|
Log: blinking cursor fix theme path Author: jeffdameth Date: 2010-05-25 09:14:44 -0700 (Tue, 25 May 2010) New Revision: 49197 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry_view.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-25 15:37:22 UTC (rev 49196) +++ trunk/e/data/themes/default.edc 2010-05-25 16:14:44 UTC (rev 49197) @@ -33081,6 +33081,38 @@ } } part { + name: "cursor"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + min: 1 12; + max: 1 12; + align: 0.0 0.5; + fixed: 1 1; + rel1 { + relative: 1.0 0.0; + offset: 0 -2; + to: "e.text.label"; + } + rel2 { + relative: 1.0 1.0; + offset: 0 -1; + to: "e.text.label"; + } + /* image { + * normal: "icon_right_arrow.png"; + * } */ + + color: 20 20 20 250; + } + description { + state: "faded" 0.0; + inherit: "default" 0.0; + color: 20 20 20 0; + } + } + part { name: "input_over2"; mouse_events: 0; clip_to: "input_base"; @@ -33295,6 +33327,22 @@ } programs { program { + name: "blink_off"; + signal: "show"; + source: ""; + action: STATE_SET "faded" 0.0; + transition: SINUSOIDAL 0.6; + target: "cursor"; + after: "blink_on"; + } + program { + name: "blink_on"; + action: STATE_SET "default" 0.0; + transition: SINUSOIDAL 0.35; + target: "cursor"; + after: "blink_off"; + } + program { name: "composite_mode"; signal: "e,state,composited"; source: "e"; Modified: trunk/e/src/modules/everything/evry_view.c =================================================================== --- trunk/e/src/modules/everything/evry_view.c 2010-05-25 15:37:22 UTC (rev 49196) +++ trunk/e/src/modules/everything/evry_view.c 2010-05-25 16:14:44 UTC (rev 49197) @@ -282,12 +282,12 @@ it->frame = edje_object_add(v->evas); if (v->mode == VIEW_MODE_THUMB) { - e_theme_edje_object_set(it->frame, "base/theme/widgets", + e_theme_edje_object_set(it->frame, "base/theme/everything", "e/modules/everything/thumbview/item/thumb"); } else { - e_theme_edje_object_set(it->frame, "base/theme/widgets", + e_theme_edje_object_set(it->frame, "base/theme/everything", "e/modules/everything/thumbview/item/list"); if (v->mode == VIEW_MODE_DETAIL) @@ -461,7 +461,7 @@ if (!sd->selector) { sd->selector = edje_object_add(sd->view->evas); - e_theme_edje_object_set(sd->selector, "base/theme/widgets", + e_theme_edje_object_set(sd->selector, "base/theme/everything", "e/modules/everything/thumbview/item/list"); evas_object_smart_member_add(sd->selector, obj); @@ -1569,7 +1569,7 @@ v->zoom = parent->zoom; v->bg = edje_object_add(v->evas); - e_theme_edje_object_set(v->bg, "base/theme/widgets", + e_theme_edje_object_set(v->bg, "base/theme/everything", "e/modules/everything/thumbview/main/window"); // scrolled thumbs v->span = _pan_add(v->evas); @@ -1581,7 +1581,7 @@ // the scrollframe holding the scrolled thumbs v->sframe = e_scrollframe_add(v->evas); - e_scrollframe_custom_theme_set(v->sframe, "base/theme/widgets", + e_scrollframe_custom_theme_set(v->sframe, "base/theme/everything", "e/modules/everything/thumbview/main/scrollframe"); e_scrollframe_thumbscroll_force(v->sframe, 1); |
From: Enlightenment S. <no-...@en...> - 2010-05-27 20:25:18
|
Log: - fix sliding back from list with no items - allow direct sliding back. i.e. no need for mouse up and down again - fix theme path to /modules/everything Author: jeffdameth Date: 2010-05-27 13:25:09 -0700 (Thu, 27 May 2010) New Revision: 49236 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry.c trunk/e/src/modules/everything/evry_util.c trunk/e/src/modules/everything/evry_view.c trunk/e/src/modules/everything/evry_view_tabs.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2010-05-27 16:00:28 UTC (rev 49235) +++ trunk/e/data/themes/default.edc 2010-05-27 20:25:09 UTC (rev 49236) @@ -34189,6 +34189,15 @@ color: 255 255 255 255; } } + part { + name: "event"; + repeat_events: 1; + type: RECT; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } } programs { program { Modified: trunk/e/src/modules/everything/evry.c =================================================================== --- trunk/e/src/modules/everything/evry.c 2010-05-27 16:00:28 UTC (rev 49235) +++ trunk/e/src/modules/everything/evry.c 2010-05-27 20:25:09 UTC (rev 49236) @@ -758,7 +758,7 @@ o = edje_object_add(popup->evas); win->o_main = o; - e_theme_edje_object_set(o, "base/theme/everything", + e_theme_edje_object_set(o, "base/theme/modules/everything", "e/modules/everything/main"); if (e_config->use_composite) @@ -1848,7 +1848,7 @@ if (!s || !(it = s->cur_item) || !(it->plugin == (CUR_SEL)->actions)) return 0; - + GET_ACTION(act,it); if (!act->it2.type) return 0; @@ -2557,6 +2557,10 @@ evas_object_hide(v->o_list); } win->view_clearing = NULL; + + /* replay mouse down to allow direct sliding back */ + if (win->mouse_button) + evas_event_feed_mouse_down(win->popup->evas, win->mouse_button, 0, 0, NULL); } } @@ -2570,6 +2574,10 @@ if (slide && v->o_list) { + /* replay mouse up to allow direct sliding back */ + if (win->mouse_button) + evas_event_feed_mouse_up(win->popup->evas, win->mouse_button, 0, 0, NULL); + if (slide == SLIDE_RIGHT) { evas_object_hide(v->o_list); Modified: trunk/e/src/modules/everything/evry_util.c =================================================================== --- trunk/e/src/modules/everything/evry_util.c 2010-05-27 16:00:28 UTC (rev 49235) +++ trunk/e/src/modules/everything/evry_util.c 2010-05-27 20:25:09 UTC (rev 49236) @@ -434,7 +434,7 @@ evry_icon_theme_get(const char *icon, Evas *e) { Evas_Object *o = e_icon_add(e); - e_icon_preload_set(o, 1); + /* e_icon_preload_set(o, 1); */ if (e_config->icon_theme_overrides) { @@ -514,7 +514,7 @@ if (it->icon[0] == '/') { o = e_icon_add(e); - e_icon_preload_set(o, 1); + /* e_icon_preload_set(o, 1); */ if (!e_icon_file_set(o, it->icon)) { @@ -575,7 +575,7 @@ if (!o && it->icon && it->icon[0] == '/') { o = e_icon_add(e); - e_icon_preload_set(o, 1); + /* e_icon_preload_set(o, 1); */ if (!e_icon_file_set(o, it->icon)) { Modified: trunk/e/src/modules/everything/evry_view.c =================================================================== --- trunk/e/src/modules/everything/evry_view.c 2010-05-27 16:00:28 UTC (rev 49235) +++ trunk/e/src/modules/everything/evry_view.c 2010-05-27 20:25:09 UTC (rev 49236) @@ -267,12 +267,12 @@ it->frame = edje_object_add(v->evas); if (v->mode == VIEW_MODE_THUMB) { - e_theme_edje_object_set(it->frame, "base/theme/everything", + e_theme_edje_object_set(it->frame, "base/theme/modules/everything", "e/modules/everything/thumbview/item/thumb"); } else { - e_theme_edje_object_set(it->frame, "base/theme/everything", + e_theme_edje_object_set(it->frame, "base/theme/modules/everything", "e/modules/everything/thumbview/item/list"); if (v->mode == VIEW_MODE_DETAIL) @@ -971,13 +971,10 @@ { sd->cur_item = v_it; v_it->selected = EINA_TRUE; - if (v->mode == VIEW_MODE_THUMB) - edje_object_signal_emit(v_it->frame, "e,state,selected", "e"); } else { v_it->selected = EINA_FALSE; - edje_object_signal_emit(v_it->frame, "e,state,unselected", "e"); } break; } @@ -986,8 +983,7 @@ if (v_it->visible) { - if (!first_vis) - first_vis = v_it->pos; + if (!first_vis) first_vis = v_it->pos; last_vis = v_it->pos; } @@ -1315,10 +1311,8 @@ Eina_List *l; Item *it; Smart_Data *sd = evas_object_smart_data_get(v->span); + if (!sd) return 1; - if (!sd) - return 1; - EINA_LIST_FOREACH(sd->items, l, it) if (it->item == ev->item) break; @@ -1364,7 +1358,7 @@ { Evas_Event_Mouse_Wheel *ev = event_info; Smart_Data *sd = evas_object_smart_data_get(obj); - + if (!sd) return; if (ev->z) { if (sd->cur_item) @@ -1373,13 +1367,38 @@ } } +static void +_view_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Down *ev = event_info; + Smart_Data *sd = evas_object_smart_data_get(data); + if (!sd) return; + sd->mouse_act = 1; + sd->mouse_button = ev->button; + sd->mouse_x = ev->canvas.x; + sd->mouse_y = ev->canvas.y; +} + +static void +_view_cb_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info) +{ + Evas_Event_Mouse_Up *ev = event_info; + Smart_Data *sd = evas_object_smart_data_get(data); + if (!sd) return; + sd->mouse_x = 0; + sd->mouse_y = 0; + sd->mouse_button = 0; + edje_object_signal_emit(sd->view->bg, "e,action,hide,into", "e"); + edje_object_signal_emit(sd->view->bg, "e,action,hide,back", "e"); +} + #define SLIDE_RESISTANCE 80 static void _view_cb_mouse_move(void *data, Evas *e, Evas_Object *obj, void *event_info) { Evas_Event_Mouse_Move *ev = event_info; - Smart_Data *sd = evas_object_smart_data_get(obj); + Smart_Data *sd = evas_object_smart_data_get(data); Evry_Selector *sel; int diff_y, diff_x; @@ -1388,10 +1407,8 @@ if (!sd->mouse_x) goto end; - if (!sd->it_down) - goto end; + sel = sd->view->state->selector; - sel = sd->view->state->selector; diff_x = abs(ev->cur.canvas.x - sd->mouse_x); diff_y = abs(ev->cur.canvas.y - sd->mouse_y); @@ -1402,21 +1419,23 @@ goto end; } - if (sel->states->next) + if (sel->states->next || (sel != sel->win->selectors[0])) edje_object_signal_emit(sd->view->bg, "e,action,show,back", "e"); - if ((sd->it_down->item->browseable) || - (sel != sel->win->selectors[2])) - edje_object_signal_emit(sd->view->bg, "e,action,show,into", "e"); + if (sd->it_down) + { + if ((sd->it_down->item->browseable) || + (sel != sel->win->selectors[2])) + edje_object_signal_emit(sd->view->bg, "e,action,show,into", "e"); - if ((sd->cur_item != sd->it_down) && (diff_x > 10)) - { - evry_item_select(sd->view->state, sd->it_down->item); - _pan_item_select(obj, sd->it_down, 0); + if ((sd->cur_item != sd->it_down) && (diff_x > 10)) + { + evry_item_select(sd->view->state, sd->it_down->item); + _pan_item_select(data, sd->it_down, 0); + } } - if ((sd->mouse_button == 1) && - (sd->cur_item == sd->it_down)) + if (sd->mouse_button == 1) { if (ev->cur.canvas.x - sd->mouse_x > SLIDE_RESISTANCE) { @@ -1428,7 +1447,8 @@ else evry_selectors_switch(-1, EINA_TRUE); } - else if (sd->mouse_x - ev->cur.canvas.x > SLIDE_RESISTANCE) + else if ((sd->it_down && (sd->cur_item == sd->it_down)) && + (sd->mouse_x - ev->cur.canvas.x > SLIDE_RESISTANCE)) { edje_object_signal_emit(sd->view->bg, "e,action,hide,into", "e"); edje_object_signal_emit(sd->view->bg, "e,action,hide,back", "e"); @@ -1439,13 +1459,9 @@ } else { - if ((sel != sel->win->selectors[2]) && - /* dont jump out of sub-action */ - (!((sel == sel->win->selectors[1]) && - (sel->states->next)))) - evry_selectors_switch(1, EINA_TRUE); + evry_selectors_switch(1, EINA_TRUE); } - + sd->it_down = NULL; sd->mouse_x = 0; sd->mouse_y = 0; @@ -1492,19 +1508,24 @@ v->zoom = parent->zoom; v->bg = edje_object_add(v->evas); - e_theme_edje_object_set(v->bg, "base/theme/everything", + e_theme_edje_object_set(v->bg, "base/theme/modules/everything", "e/modules/everything/thumbview/main/window"); // scrolled thumbs v->span = _pan_add(v->evas); _pan_view_set(v->span, v); evas_object_event_callback_add(v->span, EVAS_CALLBACK_MOUSE_WHEEL, _view_cb_mouse_wheel, NULL); - evas_object_event_callback_add(v->span, EVAS_CALLBACK_MOUSE_MOVE, - _view_cb_mouse_move, NULL); + evas_object_event_callback_add(v->bg, EVAS_CALLBACK_MOUSE_MOVE, + _view_cb_mouse_move, v->span); + evas_object_event_callback_add(v->bg, EVAS_CALLBACK_MOUSE_DOWN, + _view_cb_mouse_down, v->span); + evas_object_event_callback_add(v->bg, EVAS_CALLBACK_MOUSE_UP, + _view_cb_mouse_up, v->span); + // the scrollframe holding the scrolled thumbs v->sframe = e_scrollframe_add(v->evas); - e_scrollframe_custom_theme_set(v->sframe, "base/theme/everything", + e_scrollframe_custom_theme_set(v->sframe, "base/theme/modules/everything", "e/modules/everything/thumbview/main/scrollframe"); e_scrollframe_thumbscroll_force(v->sframe, 1); Modified: trunk/e/src/modules/everything/evry_view_tabs.c =================================================================== --- trunk/e/src/modules/everything/evry_view_tabs.c 2010-05-27 16:00:28 UTC (rev 49235) +++ trunk/e/src/modules/everything/evry_view_tabs.c 2010-05-27 20:25:09 UTC (rev 49236) @@ -196,7 +196,7 @@ tab->plugin = p; tab->tab_view = v; o = edje_object_add(v->evas); - e_theme_edje_object_set(o, "base/theme/everything", + e_theme_edje_object_set(o, "base/theme/modules/everything", "e/modules/everything/tab_item"); edje_object_part_text_set(o, "e.text.label", EVRY_ITEM(p)->label); |
From: Enlightenment S. <no-...@en...> - 2011-08-17 16:02:26
|
Log: e17/evry: show animation when action is going Author: jeffdameth Date: 2011-08-17 09:02:19 -0700 (Wed, 17 Aug 2011) New Revision: 62538 Trac: http://trac.enlightenment.org/e/changeset/62538 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry_view.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2011-08-17 15:42:07 UTC (rev 62537) +++ trunk/e/data/themes/default.edc 2011-08-17 16:02:19 UTC (rev 62538) @@ -36012,7 +36012,7 @@ name: "clip"; mouse_events: 0; type: RECT; - clip_to: "base"; + /* clip_to: "base"; */ description { state: "default" 0.0; rel1.to: "base"; @@ -36129,7 +36129,86 @@ color3: 20 20 20 40; } } + part { + name: "over_clip"; + type: RECT; + mouse_events: 0; + description { + state: "default" 0.0; + color: 255 255 255 255; + rel1 { + relative: 0.0 0.0; + offset: 0 0; + } + rel2 { + relative: 1.0 1.0; + offset: -1 -1; + } + visible: 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + visible: 1; + } + description { + state: "hidden" 0.0; + inherit: "default" 0.0; + rel1.relative: -0.5 -0.5; + rel2.relative: 1.5 1.5; + color: 255 255 255 0; + visible: 1; + } + description { + state: "huge" 0.0; + inherit: "default" 0.0; + color: 255 255 255 0; + rel1.relative: -1.5 -1.5; + rel2.relative: 2.5 2.5; + visible: 1; + } + } + + part { + name: "over"; + type: PROXY; + mouse_events: 0; + clip_to: "over_clip"; + description { + state: "default" 0.0; + source: "e.swallow.icon"; + rel1.to: "over_clip"; + rel2.to: "over_clip"; + visible: 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { + name: "over2"; + type: PROXY; + mouse_events: 0; + clip_to: "over_clip"; + description { + state: "default" 0.0; + source: "e.swallow.thumb"; + rel1.to: "over_clip"; + rel2.to: "over_clip"; + visible: 0; + } + description { + state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + + part { name: "event"; type: RECT; description { @@ -36202,6 +36281,41 @@ transition: DECELERATE 0.1; target: "clip"; } + program { + name: "go_big"; + action: STATE_SET "visible" 0.0; + target: "over_clip"; + target: "over"; + target: "over2"; + after: "go_big2"; + } + + program { + name: "go_big2"; + action: STATE_SET "huge" 0.0; + transition: DECELERATE 0.4; + target: "over_clip"; + after: "go_big3"; + } + + program { + name: "go_big3"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.2; + target: "over_clip"; + target: "over"; + target: "over2"; + } + program { + name: "action_go"; + signal: "e,action,go"; + source: "e"; + action: ACTION_STOP; + target: "go_big"; + target: "go_big2"; + target: "go_big3"; + after: "go_big"; + } } } group { Modified: trunk/e/src/modules/everything/evry_view.c =================================================================== --- trunk/e/src/modules/everything/evry_view.c 2011-08-17 15:42:07 UTC (rev 62537) +++ trunk/e/src/modules/everything/evry_view.c 2011-08-17 16:02:19 UTC (rev 62538) @@ -89,6 +89,7 @@ e_icon_size_get(it->thumb, &w, &h); edje_extern_object_aspect_set(it->thumb, EDJE_ASPECT_CONTROL_BOTH, w, h); + edje_object_part_unswallow(it->frame, it->image); edje_object_part_swallow(it->frame, "e.swallow.thumb", it->thumb); evas_object_show(it->thumb); edje_object_signal_emit(it->frame, "e,action,thumb,show_delayed", "e"); @@ -1403,6 +1404,35 @@ return ECORE_CALLBACK_PASS_ON; } +static Eina_Bool +_cb_action_performed(void *data, int type __UNUSED__, void *event) +{ + Evry_Event_Action_Performed *ev = event; + View *v = data; + Eina_List *l; + Item *it; + Smart_Data *sd; + + sd = evas_object_smart_data_get(v->span); + if (!sd) return ECORE_CALLBACK_PASS_ON; + + EINA_LIST_FOREACH(sd->items, l, it) + { + + if ((it->item == ev->it1) || + (it->item == ev->it2)) + break; + } + + if (it && it->visible) + { + evas_object_raise(it->frame); + edje_object_signal_emit(it->frame, "e,action,go", "e"); + } + + return ECORE_CALLBACK_PASS_ON; +} + static void _view_cb_mouse_wheel(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *event_info) { @@ -1600,7 +1630,9 @@ h = evry_event_handler_add(EVRY_EVENT_ITEM_CHANGED, _cb_item_changed, v); v->handlers = eina_list_append(v->handlers, h); - + h = evry_event_handler_add(EVRY_EVENT_ACTION_PERFORMED, _cb_action_performed, v); + v->handlers = eina_list_append(v->handlers, h); + return EVRY_VIEW(v); } |
From: Enlightenment S. <no-...@en...> - 2011-08-31 00:08:59
|
Log: e17/evry: allow theming evry gadget. show gadget on mouse up, double clikc hides it (for now) Author: jeffdameth Date: 2011-08-30 17:08:52 -0700 (Tue, 30 Aug 2011) New Revision: 63015 Trac: http://trac.enlightenment.org/e/changeset/63015 Modified: trunk/e/data/themes/default.edc trunk/e/src/modules/everything/evry_gadget.c Modified: trunk/e/data/themes/default.edc =================================================================== --- trunk/e/data/themes/default.edc 2011-08-31 00:05:44 UTC (rev 63014) +++ trunk/e/data/themes/default.edc 2011-08-31 00:08:52 UTC (rev 63015) @@ -10412,6 +10412,7 @@ group { name: "e/modules/start/main"; + alias: "e/modules/everything/gadget"; max: 128 128; images { image: "logo_white_128.png" COMP; Modified: trunk/e/src/modules/everything/evry_gadget.c =================================================================== --- trunk/e/src/modules/everything/evry_gadget.c 2011-08-31 00:05:44 UTC (rev 63014) +++ trunk/e/src/modules/everything/evry_gadget.c 2011-08-31 00:08:52 UTC (rev 63015) @@ -13,8 +13,12 @@ Gadget_Config *cfg; E_Config_Dialog *cfd; E_Menu *menu; + + int mouse_down; + }; +static void _button_cb_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info); static void _button_cb_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info); /* gadcon requirements */ @@ -56,7 +60,7 @@ /* if ((p = evry_plugin_find(id->name))) * o = evry_util_icon_get(EVRY_ITEM(p), gc->evas) */ - e_theme_edje_object_set(o, "base/theme/modules/start", "e/modules/start/main"); + e_theme_edje_object_set(o, "base/theme/modules/everything", "e/modules/everything/gadget"); edje_object_signal_emit(o, "e,state,unfocused", "e"); gcc = e_gadcon_client_new(gc, name, id, style, o); @@ -65,6 +69,9 @@ inst->gcc = gcc; inst->o_button = o; + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_UP, + _button_cb_mouse_up, inst); + evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _button_cb_mouse_down, inst); return gcc; @@ -195,6 +202,21 @@ Evas_Event_Mouse_Down *ev; inst = data; + inst->mouse_down = 1; +} + +static void +_button_cb_mouse_up(void *data, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info) +{ + Instance *inst; + Evas_Event_Mouse_Down *ev; + + inst = data; + if (!inst->mouse_down) + return; + + inst->mouse_down = 0; + ev = event_info; if (ev->button == 1) { @@ -280,8 +302,9 @@ e_win_show(win->ewin); bd = win->ewin->border; e_border_focus_set(bd, 1, 1); - bd->client.netwm.state.skip_taskbar = 1; + /* bd->client.netwm.state.skip_taskbar = 1; */ bd->client.netwm.state.skip_pager = 1; + bd->sticky = 1; inst->win = win; e_gadcon_locked_set(inst->gcc->gadcon, 1); |