progressbar.edc   [plain text]


/*
    Copyright (C) 2010 Samsung Electronics

    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/progressbar";
    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 999999;

    images {
        image: "widget/progressbar/shelf_inset.png" COMP;
        image: "widget/progressbar/bt_base.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_size(PART:"img.progressbar_fill", sx, 1.0);
                    set_drag(PART:"img.progressbar_fill", x, 0.0);
                }
            }
        }
    }

    parts {
        part {
           name: "rect.base";
           type: RECT;
           description {
              state: "default" 0.0;
              min: 29 11;
              max: 999999 99999;
              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.progressbar";
           type: IMAGE;
           mouse_events: 0;
           clip_to: "rect.clipper";
           description {
              state: "default" 0.0;
              min: 29 5;
              rel1.to: "rect.base";
              rel2.to: "rect.base";
              align: 0.5 0.5;
              image {
                 normal: "widget/progressbar/shelf_inset.png";
                 border: 8 8 8 8;
              }
           }
        }
        part {
           name: "img.progressbar_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;
              align: 0.5 0.5;
              image {
                 normal: "widget/progressbar/bt_base.png";
                 border: 7 7 0 0;
              }
           }
        }
    }
}