--- /dev/null
+group { name: "e/comp/effects/zoom-easeout";
+ script {
+ public message(Msg_Type:type, id, ...) {
+ if ((type == MSG_INT_SET) && (id == 0)) {
+ /*set state */
+ new st;
+ st = getarg(2);
+ if (st == 0)
+ {
+ set_state(PART:"clipper", "default", 0.0);
+ set_state(PART:"shower", "default", 0.0);
+ set_state(PART:"e.swallow.content", "default", 0.0);
+ set_state(PART:"under", "default", 0.0);
+ }
+ else if (st == 1)
+ {
+ set_state(PART:"clipper", "visible", 0.0);
+ set_state(PART:"shower", "visible", 0.0);
+ set_state(PART:"e.swallow.content", "visible", 0.0);
+ set_state(PART:"under", "visible", 0.0);
+ }
+ else if (st == 2)
+ {
+ set_state(PART:"clipper", "restack_hidden", 0.0);
+ set_state(PART:"shower", "restack_hidden", 0.0);
+ set_state(PART:"e.swallow.content", "restack_hidden", 0.0);
+ set_state(PART:"under", "restack_hidden", 0.0);
+ }
+ else if (st == 3)
+ {
+ set_state(PART:"clipper", "restack_visible", 0.0);
+ set_state(PART:"shower", "restack_visible", 0.0);
+ set_state(PART:"e.swallow.content", "restack_visible", 0.0);
+ set_state(PART:"under", "restack_visible", 0.0);
+ }
+ else if (st == 4)
+ {
+ set_state(PART:"clipper", "restack_done", 0.0);
+ set_state(PART:"shower", "restack_done", 0.0);
+ set_state(PART:"e.swallow.content", "restack_done", 0.0);
+ set_state(PART:"under", "restack_done", 0.0);
+ }
+ } else if ((type == MSG_INT_SET) && (id == 1))
+ {
+ }
+ }
+ }
+ parts {
+ part { name: "clipper";
+ type: RECT;
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ color: 255 255 255 0;
+ rel1.relative: -1.0 -1.0;
+ rel1.offset: -9999 -9999;
+ rel2.relative: 2.0 2.0;
+ rel2.offset: 9999 9999;
+ visible: 1;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ color: 255 255 255 255;
+ }
+ description { state: "hide" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_visible" 0.0;
+ inherit: "visible" 0.0;
+ }
+ description { state: "restack_hidden" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_done" 0.0;
+ inherit: "visible" 0.0;
+ }
+ }
+ part { name: "shower";
+ type: SPACER;
+ description { state: "default" 0.0;
+ rel1.relative: 0 0;
+ rel2.relative: 1 1;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ rel1.relative: 0 0;
+ rel1.offset: 0 0;
+ rel2.relative: 1 1;
+ }
+ description { state: "hide" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_visible" 0.0;
+ inherit: "visible" 0.0;
+ }
+ description { state: "restack_hidden" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_done" 0.0;
+ inherit: "visible" 0.0;
+ }
+ }
+ part { name: "e.swallow.content"; type: SWALLOW;
+ type: SWALLOW;
+ clip_to: "clipper";
+ description { state: "default" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ map {
+ on: 1;
+ smooth: 1;
+ zoom.x: 0.3;
+ zoom.y: 0.3;
+ }
+ }
+ description { state: "visible" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ map {
+ on: 1;
+ smooth: 1;
+ zoom.x: 1;
+ zoom.y: 1;
+ }
+ }
+ description { state: "visible_default" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ rel1.relative: 0 0;
+ rel2.relative: 1 1;
+ map.on : 0;
+ }
+ description { state: "hide" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_visible" 0.0;
+ inherit: "visible" 0.0;
+ }
+ description { state: "restack_hidden" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_done" 0.0;
+ inherit: "visible" 0.0;
+ }
+ }
+ part { name: "under";
+ type: SWALLOW;
+ clip_to: "clipper";
+ description { state: "default" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ map {
+ on: 1;
+ smooth: 1;
+ zoom.x: 0.3;
+ zoom.y: 0.3;
+ }
+ }
+ description { state: "visible" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ map {
+ on: 1;
+ smooth: 1;
+ zoom.x: 1;
+ zoom.y: 1;
+ }
+ }
+ description { state: "visible_default" 0.0;
+ rel1.to: "shower";
+ rel2.to: "shower";
+ rel1.relative: 0 0;
+ rel2.relative: 1 1;
+ map.on : 0;
+ }
+ description { state: "hide" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_visible" 0.0;
+ inherit: "visible" 0.0;
+ }
+ description { state: "restack_hidden" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "restack_done" 0.0;
+ inherit: "visible" 0.0;
+ }
+ }
+ }
+ programs {
+ program { name: "show1";
+ signal: "e,action,go";
+ source: "e";
+ filter: "shower" "default";
+ action: STATE_SET "default" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "show2";
+ }
+ program { name: "show2";
+ action: STATE_SET "visible" 0.0;
+ transition: CUBIC_BEZIER 0.4 0.25 0.46 0.45 1.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "show3";
+ }
+ program { name: "show3";
+ action: STATE_SET "visible_default" 0.0;
+ target: "under";
+ target: "e.swallow.content";
+ after: "done";
+ }
+ program { name: "hide1";
+ signal: "e,action,go";
+ source: "e";
+ filter: "shower" "visible";
+ action: STATE_SET "visible" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "hide2";
+ }
+ program { name: "hide2";
+ action: STATE_SET "hide" 0.0;
+ transition: CUBIC_BEZIER 0.4 0.25 0.46 0.45 1.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "hide3";
+ }
+ program { name: "hide3";
+ action: STATE_SET "default" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "done";
+ }
+ program { name: "restack,show1";
+ signal: "e,action,go";
+ source: "e";
+ filter: "shower" "restack_hidden";
+ action: STATE_SET "restack_hidden" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "restack,show2";
+ }
+ program { name: "restack,show2";
+ action: STATE_SET "visible" 0.0;
+ transition: CUBIC_BEZIER 0.4 0.25 0.46 0.45 1.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "restack,show3";
+ }
+ program { name: "restack,show3";
+ action: STATE_SET "visible_default" 0.0;
+ target: "e.swallow.content";
+ target: "under";
+ after: "done";
+ }
+ program { name: "restack,hide1";
+ signal: "e,action,go";
+ source: "e";
+ filter: "shower" "restack_visible";
+ action: STATE_SET "restack_visible" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "restack,hide2";
+ }
+ program { name: "restack,hide2";
+ action: STATE_SET "hide" 0.0;
+ transition: CUBIC_BEZIER 0.4 0.25 0.46 0.45 1.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "done";
+ }
+ program { name: "restack,finish";
+ signal: "e,action,go";
+ source: "e";
+ filter: "shower" "restack_done";
+ action: STATE_SET "visible" 0.0;
+ target: "shower";
+ target: "clipper";
+ target: "e.swallow.content";
+ target: "under";
+ after: "done";
+ }
+ program { name: "done";
+ action: SIGNAL_EMIT "e,action,done" "e";
+ }
+ }
+}