Bundles / res / edje /
main.edc
#include "../../inc/view_defines.h"
#include "edc_defines.edc"
#define PART_DATA_BUTTON "part,main,data_button"
#define PART_SINK_BUTTON "part,main,sink_button"
#define IMAGE_BUTTON_DATA "../res/images/main/button1.png"
#define IMAGE_BUTTON_SINK "../res/images/main/button2.png"
#define IMAGE_BUTTON_SINK_PRESSED "../res/images/main/button2_pressed.png"
#define IMAGE_BUTTON_DATA_PRESSED "../res/images/main/button1_pressed.png"
#define PART_TOOLBAR_BTN(btn_text, part_name, pos) \
part { \
name: part_name; \
type: RECT; \
description { \
state: STATE_DEFAULT 0.0; \
rel1.relative: pos 0.0391; \
rel2.relative: pos+0.5 0.1094; \
color: 34 125 207 255; \
} \
description { \
state: STATE_PRESSED 0.0; \
rel1.relative: pos 0.0391; \
rel2.relative: pos+0.5 0.1094; \
color: 13 93 166 255; \
} \
} \
part { \
name: part_name##"_txt"; \
type: TEXT; \
repeat_events: 1; \
description { \
state: STATE_DEFAULT 0.0; \
rel1 { \
relative: 0.0 0.0; \
to: part_name; \
} \
rel2 { \
relative: 1.0 1.0; \
to: part_name; \
} \
text { \
font: "BreezeSans:style=Thin"; \
size: 28; \
text: btn_text; \
} \
} \
description { \
state: STATE_PRESSED 0.0; \
inherit: STATE_DEFAULT 0.0; \
text.font: "BreezeSans:style=Light"; \
} \
} \
#define PROGRAM_TOOLBAR(source_part, selected, unselected, signal_name) \
program { \
signal: "mouse,clicked,1"; \
source: source_part; \
script { \
new state[256]; \
new Float:state_num; \
new buf[256]; \
snprintf(buf, 256, "%s_txt", selected); \
new sel_txt = get_part_id(buf); \
snprintf(buf, 256, "%s_txt", unselected); \
new unsel_txt = get_part_id(buf); \
get_state(PART:selected, state, 256, state_num); \
if (!strncmp(STATE_DEFAULT, state, 256)) { \
set_state(PART:selected, STATE_PRESSED, 0.0); \
set_state(PART:unselected, STATE_DEFAULT, 0.0); \
set_state(sel_txt, STATE_PRESSED, 0.0); \
set_state(unsel_txt, STATE_DEFAULT, 0.0); \
emit(signal_name, ""); \
} \
} \
} \
collections {
group {
name: GROUP_MAIN;
images {
image: IMAGE_BUTTON_DATA COMP;
image: IMAGE_BUTTON_SINK COMP;
image: IMAGE_BUTTON_SINK_PRESSED COMP;
image: IMAGE_BUTTON_DATA_PRESSED COMP;
}
parts {
part {
type: SPACER;
description {
state: "default" 0.0;
min: 720 1280;
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
}
}
part {
name: PART_VIEW;
type: SWALLOW;
description {
state: "default" 0.0;
rel1.relative: 0.0 0.0;
rel2.relative: 1.0 1.0;
}
}
PART_TOOLBAR_BTN("Data source", PART_DATA_BUTTON, 0.0)
PART_TOOLBAR_BTN("Data sink", PART_SINK_BUTTON, 0.5)
}
programs {
program {
signal: "load";
source: "";
action: STATE_SET STATE_PRESSED 0.0;
target: PART_DATA_BUTTON;
target: PART_DATA_BUTTON"_txt";
}
PROGRAM_TOOLBAR(PART_DATA_BUTTON, PART_DATA_BUTTON, PART_SINK_BUTTON, SIGNAL_SWITCH_SOURCE_VIEW)
PROGRAM_TOOLBAR(PART_SINK_BUTTON, PART_SINK_BUTTON, PART_DATA_BUTTON, SIGNAL_SWITCH_SINK_VIEW)
}
}
}