images { image: "device.png" COMP; image: "rx.png" COMP; image: "tx.png" COMP; image: "idle.png" COMP; image: "bd.png" COMP; } collections { group { name: "modules/net/main"; max: 128 128; parts { part { name: "rx"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH; visible: 0; rel1.to: "base"; rel2.to: "base"; image.normal: "rx.png"; color: 255 255 255 0; } description { state: "active" 0.0; inherit: "default" 0.0; visible: 1; color: 255 255 255 255; } } part { name: "tx"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH; visible: 0; rel1.to: "base"; rel2.to: "base"; image.normal: "tx.png"; color: 255 255 255 0; } description { state: "active" 0.0; inherit: "default" 0.0; visible: 1; color: 255 255 255 255; } } part { name: "base"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH; image.normal: "idle.png"; } } part { name: "e.text.recv"; type: TEXT; effect: OUTLINE_SOFT_SHADOW; mouse_events: 0; description { state: "default" 0.0; fixed: 1 1; visible: 1; rel1 { relative: 0.0 0.0; offset: 0 0; to: "overlay"; } rel2 { relative: 1.0 0.5; offset: -1 0; to: "overlay"; } color: 255 255 255 255; color2: 0 0 0 50; color3: 0 0 0 42; color_class: "menu_item"; text { text: "Rx:"; font: "Sans:style=Bold"; size: 10; min: 0 1; align: 0.5 0.5; text_class: "menu_item"; elipsis: 0.0; } } description { state: "hidden" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "e.text.send"; type: TEXT; effect: OUTLINE_SOFT_SHADOW; mouse_events: 0; description { state: "default" 0.0; fixed: 1 1; visible: 1; rel1 { relative: 0.0 0.5; offset: 0 0; to: "overlay"; } rel2 { relative: 1.0 1.0; offset: -1 -1; to: "overlay"; } color: 255 255 255 255; color2: 0 0 0 50; color3: 0 0 0 42; color_class: "menu_item"; text { text: "Tx:"; font: "Sans:style=Bold"; size: 10; min: 0 1; align: 0.5 0.5; text_class: "menu_item"; elipsis: 0.0; } } description { state: "hidden" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "overlay"; type: RECT; repeat_events: 0; mouse_events: 1; description { state: "default" 0.0; color: 0 0 0 0; visible: 1; } } } programs { program { name: "in"; signal: "mouse,in"; source: "overlay"; action: SIGNAL_EMIT "e,action,mouse,in" ""; } program { name: "out"; signal: "mouse,out"; source: "overlay"; action: SIGNAL_EMIT "e,action,mouse,out" ""; } program { name: "recv"; signal: "e,state,receive,active"; source: "e"; action: STATE_SET "active" 0.0; target: "rx"; transition: SINUSOIDAL 0.25; } program { name: "send"; signal: "e,state,send,active"; source: "e"; action: STATE_SET "active" 0.0; target: "tx"; transition: SINUSOIDAL 0.25; } program { name: "recv_idle"; signal: "e,state,receive,idle"; source: "e"; action: STATE_SET "default" 0.0; target: "rx"; transition: DECELERATE 0.25; } program { name: "send_idle"; signal: "e,state,send,idle"; source: "e"; action: STATE_SET "default" 0.0; target: "tx"; transition: DECELERATE 0.25; } program { name: "text_hide"; signal: "e,state,text,hide"; source: "e"; action: STATE_SET "hidden" 0.0; target: "e.text.recv"; target: "e.text.send"; } program { name: "text_show"; signal: "e,state,text,show"; source: "e"; action: STATE_SET "default" 0.0; target: "e.text.recv"; target: "e.text.send"; } } } group { name: "modules/net/popup"; parts { part { name: "base"; type: RECT; mouse_events: 0; description { state: "default" 0.0; color: 0 0 0 0; min: 125 50; } } part { name: "e.text.title"; type: TEXT; effect: SOFT_SHADOW; mouse_events: 0; description { state: "default" 0.0; fixed: 0 1; align: 0.5 0.0; rel1.offset: 0 4; rel2.relative: 1.0 0.0; rel2.offset: -1 4; color: 255 255 255 255; color3: 0 0 0 42; color_class: "menu_title"; text { text: ""; font: "Sans:style=Bold"; size: 10; min: 1 1; align: 0.5 0.0; text_class: "menu_title"; elipsis: 0.0; } } } part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; min: 32 32; max: 32 32; align: 0.0 0.5; fixed: 1 1; rel1 { relative: 0.0 1.0; offset: 6 10; to_y: "e.text.title"; } rel2 { relative: 0.0 1.0; offset: 6 10; to_y: "e.text.title"; } image.normal: "device.png"; } } part { name: "e.text.recv"; type: TEXT; effect: SHADOW; mouse_events: 0; description { state: "default" 0.0; fixed: 1 1; rel1 { relative: 1.0 0.0; offset: 10 6; to: "icon"; } rel2 { relative: 1.0 0.0; offset: -8 6; to_y: "icon"; } color: 74 180 74 255; color3: 0 0 0 42; color_class: "menu_item"; text { text: "Rx:"; font: "Sans:style=Bold"; size: 10; min: 1 1; align: 0.0 0.5; text_class: "module_normal"; elipsis: 0.0; } } } part { name: "e.text.send"; type: TEXT; effect: SHADOW; mouse_events: 0; description { state: "default" 0.0; fixed: 1 1; rel1 { relative: 1.0 1.0; offset: 10 -6; to: "icon"; } rel2 { relative: 1.0 1.0; offset: -8 -6; to_y: "icon"; } color: 164 46 46 255; color3: 0 0 0 42; color_class: "menu_item"; text { text: "Tx:"; font: "Sans:style=Bold"; size: 10; min: 1 1; align: 0.0 0.5; text_class: "module_normal"; elipsis: 0.0; } } } } } }