forked from enlightenment/efl
151 lines
3.9 KiB
Plaintext
151 lines
3.9 KiB
Plaintext
#define MSG_ID_VEL (1)
|
|
|
|
collections {
|
|
group {
|
|
name: "prefs_edje";
|
|
max: 450 450;
|
|
min: 50 50;
|
|
|
|
parts {
|
|
part {
|
|
name: "bg";
|
|
type: RECT;
|
|
scale: 1;
|
|
description {
|
|
state: "default" 0.0;
|
|
min: 450 450;
|
|
max: 450 450;
|
|
color: 255 255 255 0;
|
|
align: 0.0 0.0;
|
|
}
|
|
}
|
|
|
|
part {
|
|
name: "square1";
|
|
type: RECT;
|
|
scale: 1;
|
|
description {
|
|
state: "default" 0.0;
|
|
min: 50 50;
|
|
max: 50 50;
|
|
color: 0 0 255 255;
|
|
align: 0.0 0.5;
|
|
}
|
|
description {
|
|
state: "invert" 0.0;
|
|
inherit: "default" 0.0;
|
|
color: 0 255 0 255;
|
|
align: 1 0.5;
|
|
}
|
|
}
|
|
|
|
part {
|
|
name: "square2";
|
|
type: RECT;
|
|
description {
|
|
state: "default" 0.0;
|
|
min: 50 50;
|
|
max: 50 50;
|
|
color: 0 255 0 255;
|
|
align: 0.5 0.0;
|
|
}
|
|
description {
|
|
state: "invert" 0.0;
|
|
inherit: "default" 0.0;
|
|
color: 0 0 255 255;
|
|
align: 0.5 1.0;
|
|
}
|
|
}
|
|
}
|
|
|
|
program {
|
|
name: "animation_start";
|
|
signal: "start";
|
|
source: "animation";
|
|
after: "animation,clear";
|
|
}
|
|
|
|
program {
|
|
name: "call_animation,state1";
|
|
script {
|
|
cancel_anim(anim_id);
|
|
set_int(anim_id, anim(get_float(global_speed), "animation_1", 0));
|
|
set_int(anim_n, 1);
|
|
}
|
|
}
|
|
|
|
program {
|
|
name: "call_animation,state2";
|
|
script {
|
|
cancel_anim(anim_id);
|
|
set_int(anim_id, anim(get_float(global_speed), "animation_2", 0));
|
|
set_int(anim_n, 2);
|
|
}
|
|
}
|
|
|
|
program {
|
|
name: "animation,stop";
|
|
signal: "stop";
|
|
source: "animation";
|
|
script {
|
|
cancel_anim(get_int(anim_id));
|
|
}
|
|
}
|
|
|
|
program {
|
|
name: "animation,clear";
|
|
script {
|
|
cancel_anim(get_int(anim_id));
|
|
if (get_int(anim_n) == 2)
|
|
set_float(anim_pos, (get_float(anim_pos) - 1) * ( -1));
|
|
}
|
|
after: "call_animation,state1";
|
|
}
|
|
|
|
script {
|
|
public global_speed;
|
|
public anim_id;
|
|
public anim_pos;
|
|
public anim_n;
|
|
|
|
public message(Msg_Type:type, id, ...) {
|
|
if ((type == MSG_FLOAT) && (id == MSG_ID_VEL))
|
|
set_float(global_speed, Float:getarg(2));
|
|
}
|
|
|
|
public animation_1(val, Float:pos) {
|
|
if (pos >= get_float(anim_pos) && get_int(anim_n) == 1)
|
|
{
|
|
set_tween_state(PART:"square1", pos, "default", 0.0,
|
|
"invert", 0.0);
|
|
set_tween_state(PART:"square2", pos, "default", 0.0,
|
|
"invert", 0.0);
|
|
set_float(anim_pos, pos);
|
|
}
|
|
if (pos >= 1)
|
|
{
|
|
run_program(PROGRAM:"call_animation,state2");
|
|
set_float(anim_pos, 0.0);
|
|
}
|
|
}
|
|
|
|
public animation_2(val, Float:pos) {
|
|
if (pos >= get_float(anim_pos) && get_int(anim_n) == 2)
|
|
{
|
|
set_tween_state(PART:"square1", pos, "invert", 0.0,
|
|
"default", 0.0);
|
|
set_tween_state(PART:"square2", pos, "invert", 0.0,
|
|
"default", 0.0);
|
|
set_float(anim_pos, pos);
|
|
}
|
|
if (pos >= 1)
|
|
{
|
|
run_program(PROGRAM:"call_animation,state1");
|
|
set_float(anim_pos, 0.0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
#undef MSG_ID_VEL
|