/* Copyright (C) 2008,2009 INdT - Instituto Nokia de Tecnologia Copyright (C) 2009,2010 ProFUSION embedded systems Copyright (C) 2009,2010 Samsung Electronics Copyright (c) 2012 Intel Corporation. All rights reserved. This file is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ group { name: "webkit/widget/slider/thumb_vertical"; min: 11 29; max: 11 29; images { image: "widget/slider/slider_thumb_v.png" COMP; image: "widget/slider/slider_thumb_press_v.png" COMP; } script { public isEnabled; public isPressed; public isFocused; public isHovered; public show() { if (get_int(isEnabled) == 1) { set_state(PART:"img.thumb", "default", 0.0); if (get_int(isFocused) == 1) { set_state(PART:"img.thumb", "pressed", 0.0); if (get_int(isPressed) == 1) set_state(PART:"img.thumb", "pressed", 0.0); } else if (get_int(isHovered) == 1) { set_state(PART:"img.thumb", "pressed", 0.0); if (get_int(isPressed) == 1) set_state(PART:"img.thumb", "pressed", 0.0); } } else set_state(PART:"img.thumb", "default", 0.0); } } parts { part { name: "img.thumb"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; min: 11 29; image { normal: "widget/slider/slider_thumb_v.png"; border: 6 6 0 0; } } description { state: "pressed" 0.0; inherit: "default" 0.0; image.normal: "widget/slider/slider_thumb_press_v.png"; } } } programs { program { name: "enabled"; signal: "enabled"; script { set_int(isEnabled, 1); show(); } } program { name: "pressed"; signal: "pressed"; script { set_int(isPressed, 1); show(); } } program { name: "focused"; signal: "focused"; script { set_int(isFocused, 1); show(); } } program { name: "hovered"; signal: "hovered"; script { set_int(isHovered, 1); show(); } } program { name: "reset"; signal: "reset"; script { set_int(isEnabled, 0); set_int(isPressed, 0); set_int(isFocused, 0); set_int(isHovered, 0); show(); } } } } group { name: "webkit/widget/slider/vertical"; min: 11 0; /* if > 0, this is the minimum size that will be allocated. * If wants to draw on top, just overflow usign edje's rel1/rel2 */ max: 11 999999; script { public message(Msg_Type:type, id, ...) { if ((id == 0) && (type == MSG_FLOAT_SET)) { new Float:y, Float:sy; y = getfarg(2); sy = getfarg(3); if (sy >= 0.0) { set_drag(PART:"img.slider_fill", 1.0, y); set_drag_size(PART:"img.slider_fill", 1.0, sy); } } } } images { image: "widget/slider/slider_v.png" COMP; image: "widget/slider/slider_fill_v.png" COMP; } parts { part { name: "rect.base"; type: RECT; description { min: 11 29; max: 11 999999; state: "default" 0.0; color: 255 255 255 0; } } part { name: "rect.clipper"; type: RECT; description { state: "default" 0.0; color: 255 255 255 255; } description { state: "hidden" 0.0; color: 255 255 255 128; } } part { name: "img.slider"; type: IMAGE; mouse_events: 0; clip_to: "rect.clipper"; description { state: "default" 0.0; min: 5 29; max: 5 999999; rel1.to: "rect.base"; rel2.to: "rect.base"; image { normal: "widget/slider/slider_v.png"; border: 0 0 5 5; } } } part { name: "img.slider_fill"; type: IMAGE; mouse_events: 0; clip_to: "rect.clipper"; dragable { x: 0 0 0; y: 1 1 0; confine: "rect.base"; } description { state: "default" 0.0; min: 5 0; max: 5 999999; align: 0.5 0.5; image { normal: "widget/slider/slider_fill_v.png"; border: 0 0 5 5; } } } } } group { name: "webkit/widget/slider/thumb_horizontal"; min: 29 11; max: 29 11; images { image: "widget/slider/slider_thumb_h.png" COMP; image: "widget/slider/slider_thumb_press_h.png" COMP; } script { public isEnabled; public isPressed; public isFocused; public isHovered; public show() { if (get_int(isEnabled) == 1) { set_state(PART:"img.thumb", "default", 0.0); if (get_int(isFocused) == 1) { set_state(PART:"img.thumb", "pressed", 0.0); if (get_int(isPressed) == 1) set_state(PART:"img.thumb", "pressed", 0.0); } else if (get_int(isHovered) == 1) { set_state(PART:"img.thumb", "pressed", 0.0); if (get_int(isPressed) == 1) set_state(PART:"img.thumb", "pressed", 0.0); } } else set_state(PART:"img.thumb", "default", 0.0); } } parts { part { name: "img.thumb"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; min: 29 11; image { normal: "widget/slider/slider_thumb_h.png"; border: 6 6 0 0; } } description { state: "pressed" 0.0; inherit: "default" 0.0; image.normal: "widget/slider/slider_thumb_press_h.png"; } } } programs { program { name: "enabled"; signal: "enabled"; script { set_int(isEnabled, 1); show(); } } program { name: "pressed"; signal: "pressed"; script { set_int(isPressed, 1); show(); } } program { name: "focused"; signal: "focused"; script { set_int(isFocused, 1); show(); } } program { name: "hovered"; signal: "hovered"; script { set_int(isHovered, 1); show(); } } program { name: "reset"; signal: "reset"; script { set_int(isEnabled, 0); set_int(isPressed, 0); set_int(isFocused, 0); set_int(isHovered, 0); show(); } } } } group { name: "webkit/widget/slider/horizontal"; min: 0 11; /* if > 0, this is the minimum size that will be allocated. * If wants to draw on top, just overflow usign edje's rel1/rel2 */ max: 999999 11; images { image: "widget/slider/slider_h.png" COMP; image: "widget/slider/slider_fill_h.png" COMP; } script { public message(Msg_Type:type, id, ...) { if ((id == 0) && (type == MSG_FLOAT_SET)) { new Float:x, Float:sx; x = getfarg(2); sx = getfarg(3); if (sx >= 0.0) { set_drag(PART:"img.slider_fill", x, 0.0); set_drag_size(PART:"img.slider_fill", sx, 1.0); } } } } parts { part { name: "rect.base"; type: RECT; description { state: "default" 0.0; min: 29 11; max: 999999 11; color: 255 255 255 0; } } part { name: "rect.clipper"; type: RECT; description { state: "default" 0.0; color: 255 255 255 255; } description { state: "hidden" 0.0; color: 255 255 255 128; } } part { name: "img.slider"; type: IMAGE; mouse_events: 0; clip_to: "rect.clipper"; description { state: "default" 0.0; min: 29 5; max: 999999 5; rel1.to: "rect.base"; rel2.to: "rect.base"; align: 0.5 0.5; image { normal: "widget/slider/slider_h.png"; border: 5 5 0 0; } } } part { name: "img.slider_fill"; type: IMAGE; mouse_events: 0; clip_to: "rect.clipper"; dragable { x: 1 1 0; y: 0 0 0; confine: "rect.base"; } description { state: "default" 0.0; min: 0 5; max: 999999 5; align: 0.5 0.5; image { normal: "widget/slider/slider_fill_h.png"; border: 5 5 0 0; } } } } }