From 3ad3455551be0d7859ecb02290376206d5e66498 Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Sun, 22 Apr 2012 09:20:32 +1000 Subject: And actually include new files, plus elementary libraries. --- .../elementary/data/themes/widgets/tooltip.edc | 497 +++++++++++++++++++++ 1 file changed, 497 insertions(+) create mode 100644 libraries/elementary/data/themes/widgets/tooltip.edc (limited to 'libraries/elementary/data/themes/widgets/tooltip.edc') diff --git a/libraries/elementary/data/themes/widgets/tooltip.edc b/libraries/elementary/data/themes/widgets/tooltip.edc new file mode 100644 index 0000000..5a88d49 --- /dev/null +++ b/libraries/elementary/data/themes/widgets/tooltip.edc @@ -0,0 +1,497 @@ +group { name: "elm/label/base/tooltip"; + styles { + style { name: "tooltip_style"; + base: "font=Sans font_size=8 color=#666 wrap=word"; + tag: "br" "\n"; + tag: "hilight" "+ font_weight=Bold"; + tag: "b" "+ font_weight=Bold"; + tag: "tab" "\t"; + } + } + parts { + part { name: "elm.text"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + text { + style: "tooltip_style"; + min: 1 1; + } + } + } + } +} + +group { name: "elm/tooltip/base/default"; + min: 30 30; + data { + item: "pad_x" "20"; + item: "pad_y" "20"; + item: "pad_border_x" "10"; + item: "pad_border_y" "10"; + item: "hide_timeout" "0.35"; /**< tooltip is hidden after this amount, keep in sync with hide animations */ + } + images { + image: "tooltip-base.png" COMP; + image: "tooltip-corner-top-left-tip.png" COMP; + image: "tooltip-corner-top-right-tip.png" COMP; + image: "tooltip-corner-bottom-left-tip.png" COMP; + image: "tooltip-corner-bottom-right-tip.png" COMP; + image: "tooltip-edge-left-tip.png" COMP; + image: "tooltip-edge-right-tip.png" COMP; + image: "tooltip-edge-bottom-tip.png" COMP; + image: "tooltip-edge-top-tip.png" COMP; + } + script { + hide_corners() { + set_state(PART:"corner-top-left", "default", 0.0); + set_state(PART:"corner-top-right", "default", 0.0); + set_state(PART:"corner-bottom-left", "default", 0.0); + set_state(PART:"corner-bottom-right", "default", 0.0); + } + hide_edges() { + set_state(PART:"clipper-edge-left", "default", 0.0); + set_state(PART:"clipper-edge-right", "default", 0.0); + set_state(PART:"clipper-edge-top", "default", 0.0); + set_state(PART:"clipper-edge-bottom", "default", 0.0); + } + + show_corner_top_left() { + set_state(PART:"corner-top-left", "visible", 0.0); + + set_state(PART:"corner-top-right", "default", 0.0); + set_state(PART:"corner-bottom-left", "default", 0.0); + set_state(PART:"corner-bottom-right", "default", 0.0); + hide_edges(); + } + show_corner_top_right() { + set_state(PART:"corner-top-right", "visible", 0.0); + + set_state(PART:"corner-top-left", "default", 0.0); + set_state(PART:"corner-bottom-left", "default", 0.0); + set_state(PART:"corner-bottom-right", "default", 0.0); + hide_edges(); + } + + show_corner_bottom_left() { + set_state(PART:"corner-bottom-left", "visible", 0.0); + + set_state(PART:"corner-bottom-right", "default", 0.0); + set_state(PART:"corner-top-left", "default", 0.0); + set_state(PART:"corner-top-right", "default", 0.0); + hide_edges(); + } + show_corner_bottom_right() { + set_state(PART:"corner-bottom-right", "visible", 0.0); + + set_state(PART:"corner-bottom-left", "default", 0.0); + set_state(PART:"corner-top-left", "default", 0.0); + set_state(PART:"corner-top-right", "default", 0.0); + hide_edges(); + } + + show_edge_left(Float:val) { + set_state(PART:"clipper-edge-left", "visible", 0.0); + set_drag(PART:"edge-drag-left", 0.0, val); + + set_state(PART:"clipper-edge-right", "default", 0.0); + set_state(PART:"clipper-edge-top", "default", 0.0); + set_state(PART:"clipper-edge-bottom", "default", 0.0); + hide_corners(); + } + show_edge_right(Float:val) { + set_state(PART:"clipper-edge-right", "visible", 0.0); + set_drag(PART:"edge-drag-right", 0.0, val); + + set_state(PART:"clipper-edge-left", "default", 0.0); + set_state(PART:"clipper-edge-top", "default", 0.0); + set_state(PART:"clipper-edge-bottom", "default", 0.0); + hide_corners(); + } + + show_edge_top(Float:val) { + set_state(PART:"clipper-edge-top", "visible", 0.0); + set_drag(PART:"edge-drag-top", val, 0.0); + + set_state(PART:"clipper-edge-bottom", "default", 0.0); + set_state(PART:"clipper-edge-left", "default", 0.0); + set_state(PART:"clipper-edge-right", "default", 0.0); + hide_corners(); + } + show_edge_bottom(Float:val) { + set_state(PART:"clipper-edge-bottom", "visible", 0.0); + set_drag(PART:"edge-drag-bottom", val, 0.0); + + set_state(PART:"clipper-edge-top", "default", 0.0); + set_state(PART:"clipper-edge-left", "default", 0.0); + set_state(PART:"clipper-edge-right", "default", 0.0); + hide_corners(); + } + + public message(Msg_Type:type, id, ...) { + if ((type == MSG_FLOAT_SET) && (id == 1)) { + new Float:x, Float:y; + + x = getfarg(2); + y = getfarg(3); + + if (x < 0.0) + { + if (y < 0.0) show_corner_top_left(); + else if (y > 1.0) show_corner_bottom_left(); + else show_edge_left(y); + } + else if (x > 1.0) + { + if (y < 0.0) show_corner_top_right(); + else if (y > 1.0) show_corner_bottom_right(); + else show_edge_right(y); + } + else + { + if (y < 0.0) show_edge_top(x); + else if (y > 1.0) show_edge_bottom(x); + else + { + hide_corners(); + hide_edges(); + } + } + } + } + } + parts { + part { name: "clipper"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1.to: "elm.swallow.content"; + rel1.offset: -64 -64; + rel2.to: "elm.swallow.content"; + rel2.offset: 63 63; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "pop"; + mouse_events: 0; + clip_to: "clipper"; + description { state: "default" 0.0; + min: 30 30; + rel1 { + to: "elm.swallow.content"; + offset: -15 -15; + } + rel2 { + to: "elm.swallow.content"; + offset: 14 14; + } + image { + normal: "tooltip-base.png"; + border: 14 14 14 14; + } + image.middle: SOLID; + } + } + + #define TT_CORNER(name_, rx, ry, ax, ay, ox, oy) \ + part { name: "corner-"name_; \ + type: IMAGE; \ + mouse_events: 0; \ + clip_to: "clipper"; \ + description { state: "default" 0.0; \ + color: 255 255 255 0; \ + visible: 0; \ + min: 14 14; \ + max: 14 14; \ + align: ax ay; \ + fixed: 1 1; \ + rel1 { \ + relative: rx ry; \ + offset: ox oy; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: rx ry; \ + offset: ox oy; \ + to: "elm.swallow.content"; \ + } \ + image.normal: "tooltip-corner-"name_"-tip.png"; \ + } \ + description { state: "visible" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ + visible: 1; \ + } \ + } + TT_CORNER("top-left", 0, 0, 1, 1, 4, 4); + TT_CORNER("top-right", 1, 0, 0, 1, -5, 4); + TT_CORNER("bottom-left", 0, 1, 1, 0, 4, -5); + TT_CORNER("bottom-right", 1, 1, 0, 0, -5, -5); + #undef TT_CORNER + + #define TT_EDGE_VERT(name_, rx, ax, ox) \ + part { name: "clipper-edge-"name_; \ + type: RECT; \ + clip_to: "clipper"; \ + description { state: "default" 0.0; \ + color: 255 255 255 0; \ + visible: 0; \ + min: 14 14; \ + align: ax 0.5; \ + fixed: 1 1; \ + rel1 { \ + relative: rx 0.0; \ + offset: ox 0; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: rx 1.0; \ + offset: ox 0; \ + to: "elm.swallow.content"; \ + } \ + } \ + description { state: "visible" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ + visible: 1; \ + } \ + } \ + part { name: "edge-area-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + align: ax 0.5; \ + fixed: 1 1; \ + rel1 { \ + relative: rx 0.0; \ + offset: ox 0; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: rx 1.0; \ + offset: ox 0; \ + to: "elm.swallow.content"; \ + } \ + } \ + } \ + part { name: "edge-drag-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + dragable { \ + x: 0 0 0; \ + y: 1 1 0; \ + confine: "edge-area-"name_; \ + } \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + rel1.to: "edge-area-"name_; \ + rel2.to: "edge-area-"name_; \ + } \ + } \ + part { name: "edge-img-"name_; \ + type: IMAGE; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + min: 14 14; \ + max: 14 14; \ + align: ax 0.5; \ + fixed: 1 1; \ + rel1.to: "edge-drag-"name_; \ + rel2.to: "edge-drag-"name_; \ + image.normal: "tooltip-edge-"name_"-tip.png"; \ + } \ + } + TT_EDGE_VERT("left", 0, 1, -2); + TT_EDGE_VERT("right", 1, 0, 1); + #undef TT_EDGE_VERT + + #define TT_EDGE_HORIZ(name_, ry, ay, oy) \ + part { name: "clipper-edge-"name_; \ + type: RECT; \ + clip_to: "clipper"; \ + description { state: "default" 0.0; \ + color: 255 255 255 0; \ + visible: 0; \ + min: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1 { \ + relative: 0.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: 1.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + } \ + description { state: "visible" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ + visible: 1; \ + } \ + } \ + part { name: "edge-area-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1 { \ + relative: 0.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: 1.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + } \ + } \ + part { name: "edge-drag-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + dragable { \ + x: 1 1 0; \ + y: 0 0 0; \ + confine: "edge-area-"name_; \ + } \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + rel1.to: "edge-area-"name_; \ + rel2.to: "edge-area-"name_; \ + } \ + } \ + part { name: "edge-img-"name_; \ + type: IMAGE; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + min: 14 14; \ + max: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1.to: "edge-drag-"name_; \ + rel2.to: "edge-drag-"name_; \ + image.normal: "tooltip-edge-"name_"-tip.png"; \ + } \ + } + TT_EDGE_HORIZ("top", 0, 1, -2); + TT_EDGE_HORIZ("bottom", 1, 0, 1); + #undef TT_EDGE_HORIZ + + part { name: "clipper_content"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1.to: "elm.swallow.content"; + rel1.offset: -64 -64; + rel2.to: "elm.swallow.content"; + rel2.offset: 63 63; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + clip_to: "clipper_content"; + description { state: "default" 0.0; } + } + programs { + program { + name: "show0"; + signal: "elm,action,show"; + source: "elm"; + action: ACTION_STOP; + target: "hide0"; + target: "hide1"; + target: "hide2"; + target: "hide3"; + after: "show1"; + after: "show2"; + } + program { + name: "show1"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.15; + target: "clipper"; + } + program { + name: "show2"; + in: 0.1 0.0; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.15; + target: "clipper_content"; + } + + program { + name: "hide0"; + signal: "elm,action,hide"; + source: "elm"; + action: ACTION_STOP; + target: "show0"; + target: "show1"; + target: "show2"; + after: "hide1"; + after: "hide2"; + after: "hide3"; + } + program { + name: "hide1"; + script { + hide_corners(); + hide_edges(); + } + } + program { + name: "hide2"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "clipper_content"; + } + program { + name: "hide3"; + in: 0.1 0.0; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "clipper"; + } + } + } +} +group { name: "elm/tooltip/base/transparent"; + data { + item: "pad_x" "10"; + item: "pad_y" "10"; + item: "transparent" "enabled"; + } + parts { + part { name: "elm.swallow.content"; + type: SWALLOW; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; } + } + } +} + +/////////////////////////////////////////////////////////////////////////////// -- cgit v1.1