devilhorns pushed a commit to branch feature/wayland/multi-output.

http://git.enlightenment.org/core/efl.git/commit/?id=110810dc76456355541ff7c9a3dc06136da86146

commit 110810dc76456355541ff7c9a3dc06136da86146
Author: Amitesh Singh <amitesh...@samsung.com>
Date:   Wed Apr 11 19:31:42 2018 +0900

    theme: panes - remove elm panes inheritance.
---
 data/elementary/themes/edc/efl/panes.edc | 982 ++++++++++++++++++++++++++++++-
 1 file changed, 966 insertions(+), 16 deletions(-)

diff --git a/data/elementary/themes/edc/efl/panes.edc 
b/data/elementary/themes/edc/efl/panes.edc
index 46a1c07d1c..0ce77383f7 100644
--- a/data/elementary/themes/edc/efl/panes.edc
+++ b/data/elementary/themes/edc/efl/panes.edc
@@ -11,42 +11,992 @@
       elm,action,unpress: Used for "unpress" smart callback.
 */
 
-group { "efl/panes/vertical";
-   inherit: "elm/panes/vertical/default";
+#define PANEMIN  10
+#define PANEMIN2 16
+#define PANEWID  32
+
+group { name: "efl/panes/vertical";
+   images.image: "holes_vert.png" COMP;
    parts {
+      //TODO: remove elm.swallow.left/right 
       alias: "first" "elm.swallow.left";
       alias: "second" "elm.swallow.right";
+
+      part { name: "whole"; type: SPACER;
+         description { state: "default" 0.0;
+         }
+      }
+      part { name: "right_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "left_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "sub_whole"; type: SPACER;
+         description { state: "default" 0.0;
+            rel1.relative: 1.0 0.0;
+            rel1.to_x: "left_constraint";
+            rel2.relative: 0.0 1.0;
+            rel2.to_x: "right_constraint";
+         }
+      }
+      part { name: "whole_left"; type: RECT;
+         description { state: "default" 0.0;
+            rel2.to_x: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            rel2.offset: -4 -1;
+         }
+      }
+      part { name: "whole_right"; type: RECT;
+         description { state: "default" 0.0;
+            rel1.to_x: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            rel1.offset: 3 0;
+         }
+      }
+      part { name: "elm.swallow.left"; type: SWALLOW;
+         clip_to: "whole_left";
+         description { state: "default" 0.0;
+            rel2.to_x: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            rel2.offset: -4 -1;
+         }
+      }
+      part { name: "elm.swallow.right"; type: SWALLOW;
+         clip_to: "whole_right";
+         description { state: "default" 0.0;
+            rel1.to_x: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            rel1.offset: 3 0;
+         }
+      }
+      part { name: "elm.bar"; type: SPACER;
+         dragable { confine: "sub_whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 99999;
+            min: 0 14;
+            fixed: 1 1;
+            rel1.relative: 0.0 0.5;
+            rel2.relative: 1.0 0.5;
+         }
+      }
+      part { name: "dots"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "holes_vert.png";
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+            FIXED_SIZE(4, 14)
+         }
+      }
+      part { name: "elm.swallow.event"; type: SWALLOW;
+         description { state: "default" 0.0;
+            visible: 0;
+            min: PANEMIN PANEMIN2;
+            fixed: 1 1;
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+         }
+      }
+      part { name: "bar"; type: RECT;
+         dragable.events: "elm.bar";
+         description { state: "default" 0.0;
+            min: PANEMIN PANEWID;
+            max: 99999 99999;
+            fixed: 1 1;
+            rel1.to_x: "elm.swallow.event";
+            rel2.to_x: "elm.swallow.event";
+            color: 0 0 0 0;
+         }
+         description { state: "disabled" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+      }
+   }
+   programs {
+      program {signal: "mouse,down,1"; source: "bar"; // for "press" smart 
callback
+         action: SIGNAL_EMIT "elm,action,press" "elm";
+      }
+      program { signal: "mouse,up,1"; source: "bar"; // for "unpress" smart 
callback
+         action: SIGNAL_EMIT "elm,action,unpress" "elm";
+      }
+      program { signal: "mouse,clicked,1"; source: "bar"; // for "clicked" 
smart callback
+         action: SIGNAL_EMIT "elm,action,click" "elm";
+      }
+      program { signal: "mouse,down,1,double"; source: "bar"; // for 
"clicked,double" smart callback
+         action: SIGNAL_EMIT "elm,action,click,double" "elm";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,fixed"; source: "elm";
+         action: STATE_SET "disabled" 0.0;
+         target: "bar";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,unfixed"; source: "elm";
+         action: STATE_SET "default" 0.0;
+         target: "bar";
+      }
    }
 }
 
-group { "efl/panes/horizontal";
-   inherit: "elm/panes/horizontal/default";
+group { name: "efl/panes/horizontal";
+   images.image: "holes_horiz.png" COMP;
    parts {
+      //TODO: remove elm.swallow.left/right 
       alias: "first" "elm.swallow.left";
       alias: "second" "elm.swallow.right";
+
+      part { name: "whole"; type: SPACER;
+         description { state: "default" 0.0;
+         }
+      }
+      part { name: "right_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "left_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "sub_whole"; type: SPACER;
+         description { state: "default" 0.0;
+            rel1.relative: 0.0 1.0;
+            rel1.to_y: "left_constraint";
+            rel2.relative: 1.0 0.0;
+            rel2.to_y: "right_constraint";
+         }
+      }
+      part { name: "whole_left"; type: RECT;
+         description { state: "default" 0.0;
+            rel2.to_y: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            rel2.offset: -1 -4;
+         }
+      }
+      part { name: "whole_right"; type: RECT;
+         description { state: "default" 0.0;
+            rel1.to_y: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            rel1.offset: 0 3;
+         }
+      }
+      part { name: "elm.swallow.left"; type: SWALLOW;
+         clip_to: "whole_left";
+         description { state: "default" 0.0;
+            rel2.to_y: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            rel2.offset: -1 -4;
+         }
+      }
+      part { name: "elm.swallow.right"; type: SWALLOW;
+         clip_to: "whole_right";
+         description { state: "default" 0.0;
+            rel1.to_y: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            rel1.offset: 0 3;
+         }
+      }
+      part { name: "elm.bar"; type: SPACER;
+         dragable { confine: "sub_whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 99999 0;
+            min: 14 0;
+            fixed: 1 1;
+            rel1.relative: 0.5 0.0;
+            rel2.relative: 0.5 1.0;
+         }
+      }
+      part { name: "dots"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "holes_horiz.png";
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+            FIXED_SIZE(14, 4)
+         }
+      }
+      part { name: "elm.swallow.event"; type: SWALLOW;
+         description { state: "default" 0.0;
+            visible: 0;
+            min: PANEMIN2 PANEMIN;
+            fixed: 1 1;
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+         }
+      }
+      part { name: "bar"; type: RECT;
+         dragable.events: "elm.bar";
+         description { state: "default" 0.0;
+            min: PANEWID PANEMIN;
+            max: 99999 99999;
+            fixed: 1 1;
+            rel1.to_y: "elm.swallow.event";
+            rel2.to_y: "elm.swallow.event";
+            color: 0 0 0 0;
+         }
+         description { state: "disabled" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+      }
+   }
+   programs {
+      program {signal: "mouse,down,1"; source: "bar"; // for "press" smart 
callback
+         action: SIGNAL_EMIT "elm,action,press" "elm";
+      }
+      program { signal: "mouse,up,1"; source: "bar"; // for "unpress" smart 
callback
+         action: SIGNAL_EMIT "elm,action,unpress" "elm";
+      }
+      program { signal: "mouse,clicked,1"; source: "bar"; // for "clicked" 
smart callback
+         action: SIGNAL_EMIT "elm,action,click" "elm";
+      }
+      program { signal: "mouse,down,1,double"; source: "bar"; // for 
"clicked,double" smart callback
+         action: SIGNAL_EMIT "elm,action,click,double" "elm";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,fixed"; source: "elm";
+         action: STATE_SET "disabled" 0.0;
+         target: "bar";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,unfixed"; source: "elm";
+         action: STATE_SET "default" 0.0;
+         target: "bar";
+      }
    }
 }
 
-group { "efl/panes/vertical:flush";
-   inherit: "elm/panes/vertical/flush";
+group { name: "efl/panes/vertical:flush";
+   images.image: "downlight_glow_left.png" COMP;
+   images.image: "downlight_glow_right.png" COMP;
+   parts {
+      part { name: "whole"; type: SPACER;
+         description { state: "default" 0.0;
+         }
+      }
+      part { name: "right_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "left_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "sub_whole"; type: SPACER;
+         description { state: "default" 0.0;
+            rel1.relative: 1.0 0.0;
+            rel1.to_x: "left_constraint";
+            rel2.relative: 0.0 1.0;
+            rel2.to_x: "right_constraint";
+         }
+      }
+      part { name: "whole_left"; type: RECT;
+         description { state: "default" 0.0;
+            rel2.to_x: "elm.bar";
+            rel2.relative: 1.0 1.0;
+         }
+      }
+      part { name: "whole_right"; type: RECT;
+         description { state: "default" 0.0;
+            rel1.to_x: "elm.bar";
+            rel1.relative: 0.0 0.0;
+         }
+      }
+      part { name: "elm.swallow.left"; type: SWALLOW;
+         clip_to: "whole_left";
+         description { state: "default" 0.0;
+            rel2.to_x: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            fixed: 1 0;
+         }
+      }
+      part { name: "elm.swallow.right"; type: SWALLOW;
+         clip_to: "whole_right";
+         description { state: "default" 0.0;
+            rel1.to_x: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            fixed: 1 0;
+         }
+      }
+      part { name: "elm.bar"; type: SPACER;
+         dragable { confine: "sub_whole";
+            x: 1 1 1;
+            y: 0 0 0;
+         }
+         description { state: "default" 0.0;
+            max: 0 99999;
+            min: 0 14;
+            fixed: 1 1;
+            rel1.relative: 0.0 0.5;
+            rel2.relative: 1.0 0.5;
+         }
+      }
+      part { name: "elm.swallow.event"; type: SWALLOW;
+         description { state: "default" 0.0;
+            visible: 0;
+            min: PANEMIN PANEMIN2;
+            fixed: 1 1;
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+         }
+      }
+      part { name: "bar"; type: RECT;
+         dragable.events: "elm.bar";
+         description { state: "default" 0.0;
+            min: PANEMIN PANEWID;
+            max: 99999 99999;
+            fixed: 1 1;
+            rel1.to_x: "elm.swallow.event";
+            rel1.relative: 0.0 0.25;
+            rel2.to_x: "elm.swallow.event";
+            rel2.relative: 1.0 0.75;
+            color: 0 0 0 0;
+         }
+         description { state: "disabled" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+      }
+      part { name: "glow1a"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_left.png";
+            image.border: 0 3 0 0;
+            max: 32 99999;
+            rel2.to_x: "elm.bar";
+            color: 255 255 255 0;
+            align: 1.0 0.5;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow1b"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_right.png";
+            max: 4 99999;
+            rel1.to_x: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.0 0.5;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow2a"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_left.png";
+            max: 4 99999;
+            rel2.to_x: "elm.bar";
+            color: 255 255 255 0;
+            align: 1.0 0.5;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow2b"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_right.png";
+            image.border: 3 0 0 0;
+            max: 32 99999;
+            rel1.to_x: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.0 0.5;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "bar1"; type: RECT; repeat_events: 1;
+         description { state: "default" 0.0;
+            fixed: 1 1;
+            rel1.to: "bar";
+            rel2.to: "bar";
+            rel2.relative: 0.5 1.0;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "bar2"; type: RECT; repeat_events: 1;
+         description { state: "default" 0.0;
+            fixed: 1 1;
+            rel1.to: "bar";
+            rel1.relative: 0.5 0.0;
+            rel2.to: "bar";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program {signal: "mouse,down,1"; source: "bar"; // for "press" smart 
callback
+         action: SIGNAL_EMIT "elm,action,press" "elm";
+      }
+      program { signal: "mouse,up,1"; source: "bar"; // for "unpress" smart 
callback
+         action: SIGNAL_EMIT "elm,action,unpress" "elm";
+      }
+      program { signal: "mouse,clicked,1"; source: "bar"; // for "clicked" 
smart callback
+         action: SIGNAL_EMIT "elm,action,click" "elm";
+      }
+      program { signal: "mouse,down,1,double"; source: "bar"; // for 
"clicked,double" smart callback
+         action: SIGNAL_EMIT "elm,action,click,double" "elm";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,fixed"; source: "elm";
+         action: STATE_SET "disabled" 0.0;
+         target: "bar";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,unfixed"; source: "elm";
+         action: STATE_SET "default" 0.0;
+         target: "bar";
+      }
+      program {
+         signal: "mouse,in"; source: "bar1";
+         action: STATE_SET "active" 0.0;
+         transition: BOUNCE 0.4 0.5 4;
+         target: "glow1a";
+         target: "glow1b";
+      }
+      program {
+         signal: "mouse,out"; source: "bar1";
+         action: STATE_SET "default" 0.0;
+         transition: DECELERATE 0.5;
+         target: "glow1a";
+         target: "glow1b";
+      }
+      program {
+         signal: "mouse,in"; source: "bar2";
+         action: STATE_SET "active" 0.0;
+         transition: BOUNCE 0.4 0.5 4;
+         target: "glow2a";
+         target: "glow2b";
+      }
+      program {
+         signal: "mouse,out"; source: "bar2";
+         action: STATE_SET "default" 0.0;
+         transition: DECELERATE 0.5;
+         target: "glow2a";
+         target: "glow2b";
+      }
+   }
 }
 
-group { "efl/panes/horizontal:flush";
-   inherit: "elm/panes/horizontal/flush";
+group { name: "efl/panes/horizontal:flush";
+   images.image: "downlight_glow.png" COMP;
+   images.image: "downlight_glow_up.png" COMP;
+   parts {
+      part { name: "whole"; type: SPACER;
+         description { state: "default" 0.0;
+         }
+      }
+      part { name: "right_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "left_constraint"; type: SPACER;
+         dragable { confine: "whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 0 0;
+         }
+      }
+      part { name: "sub_whole"; type: SPACER;
+         description { state: "default" 0.0;
+            rel1.relative: 0.0 1.0;
+            rel1.to_y: "left_constraint";
+            rel2.relative: 1.0 0.0;
+            rel2.to_y: "right_constraint";
+         }
+      }
+      part { name: "whole_left"; type: RECT;
+         description { state: "default" 0.0;
+            rel2.to_y: "elm.bar";
+            rel2.relative: 1.0 1.0;
+         }
+      }
+      part { name: "whole_right"; type: RECT;
+         description { state: "default" 0.0;
+            rel1.to_y: "elm.bar";
+            rel1.relative: 0.0 0.0;
+         }
+      }
+      part { name: "elm.swallow.left"; type: SWALLOW;
+         clip_to: "whole_left";
+         description { state: "default" 0.0;
+            rel2.to_y: "elm.bar";
+            rel2.relative: 1.0 1.0;
+            fixed: 0 1;
+         }
+      }
+      part { name: "elm.swallow.right"; type: SWALLOW;
+         clip_to: "whole_right";
+         description { state: "default" 0.0;
+            rel1.to_y: "elm.bar";
+            rel1.relative: 0.0 0.0;
+            fixed: 0 1;
+         }
+      }
+      part { name: "elm.bar"; type: SPACER;
+         dragable { confine: "sub_whole";
+            x: 0 0 0;
+            y: 1 1 1;
+         }
+         description { state: "default" 0.0;
+            max: 99999 0;
+            min: 14 0;
+            fixed: 1 1;
+            rel1.relative: 0.5 0.0;
+            rel2.relative: 0.5 1.0;
+         }
+      }
+      part { name: "elm.swallow.event"; type: SWALLOW;
+         description { state: "default" 0.0;
+            visible: 0;
+            min: PANEMIN2 PANEMIN;
+            fixed: 1 1;
+            rel1.to: "elm.bar";
+            rel2.to: "elm.bar";
+         }
+      }
+      part { name: "bar"; type: RECT;
+         dragable.events: "elm.bar";
+         description { state: "default" 0.0;
+            min: PANEWID PANEMIN;
+            max: 99999 99999;
+            fixed: 1 1;
+            rel1.to_y: "elm.swallow.event";
+            rel1.relative: 0.25 0.0;
+            rel2.to_y: "elm.swallow.event";
+            rel2.relative: 0.75 1.0;
+            color: 0 0 0 0;
+         }
+         description { state: "disabled" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+      }
+      part { name: "glow1a"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_up.png";
+            image.border: 0 0 0 3;
+            max: 99999 32;
+            rel2.to_y: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.5 1.0;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow1b"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow.png";
+            max: 99999 4;
+            rel1.to_y: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.5 0.0;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow2a"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow_up.png";
+            max: 99999 4;
+            rel2.to_y: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.5 1.0;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "glow2b"; mouse_events: 0;
+         description { state: "default" 0.0;
+            image.normal: "downlight_glow.png";
+            image.border: 0 0 3 0;
+            max: 99999 32;
+            rel1.to_y: "elm.bar";
+            color: 255 255 255 0;
+            align: 0.5 0.0;
+         }
+         description { state: "active" 0.0;
+           inherit: "default" 0.0;
+           color: 255 255 255 255;
+         }
+      }
+      part { name: "bar1"; type: RECT; repeat_events: 1;
+         description { state: "default" 0.0;
+            fixed: 1 1;
+            rel1.to: "bar";
+            rel2.to: "bar";
+            rel2.relative: 1.0 0.5;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "bar2"; type: RECT; repeat_events: 1;
+         description { state: "default" 0.0;
+            fixed: 1 1;
+            rel1.to: "bar";
+            rel1.relative: 0.0 0.5;
+            rel2.to: "bar";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program {
+         signal: "mouse,in"; source: "bar1";
+         action: STATE_SET "active" 0.0;
+         transition: BOUNCE 0.4 0.5 4;
+         target: "glow1a";
+         target: "glow1b";
+      }
+      program {
+         signal: "mouse,out"; source: "bar1";
+         action: STATE_SET "default" 0.0;
+         transition: DECELERATE 0.5;
+         target: "glow1a";
+         target: "glow1b";
+      }
+      program {
+         signal: "mouse,in"; source: "bar2";
+         action: STATE_SET "active" 0.0;
+         transition: BOUNCE 0.4 0.5 4;
+         target: "glow2a";
+         target: "glow2b";
+      }
+      program {
+         signal: "mouse,out"; source: "bar2";
+         action: STATE_SET "default" 0.0;
+         transition: DECELERATE 0.5;
+         target: "glow2a";
+         target: "glow2b";
+      }
+      program {signal: "mouse,down,1"; source: "bar"; // for "press" smart 
callback
+         action: SIGNAL_EMIT "elm,action,press" "elm";
+      }
+      program { signal: "mouse,up,1"; source: "bar"; // for "unpress" smart 
callback
+         action: SIGNAL_EMIT "elm,action,unpress" "elm";
+      }
+      program { signal: "mouse,clicked,1"; source: "bar"; // for "clicked" 
smart callback
+         action: SIGNAL_EMIT "elm,action,click" "elm";
+      }
+      program { signal: "mouse,down,1,double"; source: "bar"; // for 
"clicked,double" smart callback
+         action: SIGNAL_EMIT "elm,action,click,double" "elm";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,fixed"; source: "elm";
+         action: STATE_SET "disabled" 0.0;
+         target: "bar";
+      }
+      program { // for elm_panes_fixed_set()
+         signal: "elm,panes,unfixed"; source: "elm";
+         action: STATE_SET "default" 0.0;
+         target: "bar";
+      }
+   }
 }
 
-group { "efl/panes/vertical:left-fold";
-   inherit: "elm/panes/vertical/left-fold";
+group { name: "efl/panes/vertical:left-fold";
+   inherit: "efl/panes/vertical";
+   images.image: "icon_arrow_left.png" COMP;
+   images.image: "icon_arrow_right.png" COMP;
+   script {
+      public open;
+      public drag_x;
+      public drag_y;
+   }
+   parts {
+      spacer { "sub_whole";
+         desc { "default";
+            rel1.offset: 3 0;
+         }
+      }
+      image { "dots";
+         desc { "default";
+            image.normal: "icon_arrow_left.png";
+            FIXED_SIZE(14, 14)
+         }
+         desc { "closed";
+            inherit: "default" 0.0;
+            image.normal: "icon_arrow_right.png";
+         }
+      }
+      rect { "event";
+         repeat;
+         desc { "default";
+            rel1.to: "dots";
+            rel2.to: "dots";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program { signal: "load"; source: "";
+         script {
+            set_int(open, 1);
+         }
+      }
+      program { signal: "mouse,clicked,1"; source: "event";
+         script {
+            if (get_int(open) == 1)
+            {
+               new Float: dx;
+               new Float: dy;
+               set_int(open, 0);
+               get_drag(PART:"elm.bar", dx, dy);
+               set_float(drag_x, dx);
+               set_drag(PART:"elm.bar", 0.0, 0.5);
+               set_state(PART:"dots", "closed", 0.0);
+            }
+            else if (get_int(open) == 0)
+            {
+               set_int(open, 1);
+               set_drag(PART:"elm.bar", get_float(drag_x), 0.5);
+               set_state(PART:"dots", "default", 0.0);
+            }
+         }
+      }
+   }
 }
 
-group { "efl/panes/vertical:right-fold";
-   inherit: "elm/panes/vertical/right-fold";
+group { name: "efl/panes/vertical:right-fold";
+   inherit: "efl/panes/vertical";
+   images.image: "icon_arrow_left.png" COMP;
+   images.image: "icon_arrow_right.png" COMP;
+   script {
+      public open;
+      public drag_x;
+      public drag_y;
+   }
+   parts {
+      spacer { "sub_whole";
+         desc { "default";
+            rel2.offset: -4 0;
+         }
+      }
+      image { "dots";
+         desc { "default";
+            image.normal: "icon_arrow_right.png";
+            FIXED_SIZE(14, 17)
+         }
+         desc { "closed";
+            inherit: "default" 0.0;
+            image.normal: "icon_arrow_left.png";
+         }
+      }
+      rect { "event";
+         repeat;
+         desc { "default";
+            rel1.to: "dots";
+            rel2.to: "dots";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program { signal: "load"; source: "";
+         script {
+            set_int(open, 1);
+         }
+      }
+      program { signal: "mouse,clicked,1"; source: "event";
+         script {
+            if (get_int(open) == 1)
+            {
+               new Float: dx;
+               new Float: dy;
+               set_int(open, 0);
+               get_drag(PART:"elm.bar", dx, dy);
+               set_float(drag_x, dx);
+               set_drag(PART:"elm.bar", 1.0, 0.5);
+               set_state(PART:"dots", "closed", 0.0);
+            }
+            else if (get_int(open) == 0)
+            {
+               set_int(open, 1);
+               set_drag(PART:"elm.bar", get_float(drag_x), 0.5);
+               set_state(PART:"dots", "default", 0.0);
+            }
+         }
+      }
+   }
 }
 
-group { "efl/panes/horizontal:up-fold";
-   inherit: "elm/panes/horizontal/up-fold";
+group { name: "efl/panes/horizontal:up-fold";
+   inherit: "efl/panes/horizontal";
+   images.image: "icon_arrow_up.png" COMP;
+   images.image: "icon_arrow_down.png" COMP;
+   script {
+      public open;
+      public drag_x;
+      public drag_y;
+   }
+   parts {
+      spacer { "sub_whole";
+         desc { "default";
+            rel1.offset: 0 3;
+         }
+      }
+      image { "dots";
+         desc { "default";
+            image.normal: "icon_arrow_up.png";
+            FIXED_SIZE(17, 14)
+         }
+         desc { "closed";
+            inherit: "default" 0.0;
+            image.normal: "icon_arrow_down.png";
+         }
+      }
+      rect { "event";
+         repeat;
+         desc { "default";
+            rel1.to: "dots";
+            rel2.to: "dots";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program { signal: "load"; source: "";
+         script {
+            set_int(open, 1);
+         }
+      }
+      program { signal: "mouse,clicked,1"; source: "event";
+         script {
+            if (get_int(open) == 1)
+            {
+               new Float: dx;
+               new Float: dy;
+               set_int(open, 0);
+               get_drag(PART:"elm.bar", dx, dy);
+               set_float(drag_y, dy);
+               set_drag(PART:"elm.bar", 0.5, 0.0);
+               set_state(PART:"dots", "closed", 0.0);
+            }
+            else if (get_int(open) == 0)
+            {
+               set_int(open, 1);
+               set_drag(PART:"elm.bar", 0.5, get_float(drag_y));
+               set_state(PART:"dots", "default", 0.0);
+            }
+         }
+      }
+   }
 }
 
-group { "efl/panes/horizontal:down-fold";
-   inherit: "elm/panes/horizontal/down-fold";
+group { name: "efl/panes/horizontal:down-fold";
+   inherit: "efl/panes/horizontal";
+   images.image: "icon_arrow_up.png" COMP;
+   images.image: "icon_arrow_down.png" COMP;
+   script {
+      public open;
+      public drag_x;
+      public drag_y;
+   }
+   parts {
+      spacer { "sub_whole";
+         desc { "default";
+            rel2.offset: 0 -4;
+         }
+      }
+      image { "dots";
+         desc { "default";
+            image.normal: "icon_arrow_down.png";
+            FIXED_SIZE(17, 14)
+         }
+         desc { "closed";
+            inherit: "default" 0.0;
+            image.normal: "icon_arrow_up.png";
+         }
+      }
+      rect { "event";
+         repeat;
+         desc { "default";
+            rel1.to: "dots";
+            rel2.to: "dots";
+            color: 0 0 0 0;
+         }
+      }
+   }
+   programs {
+      program { signal: "load"; source: "";
+         script {
+            set_int(open, 1);
+         }
+      }
+      program { signal: "mouse,clicked,1"; source: "event";
+         script {
+            if (get_int(open) == 1)
+            {
+               new Float: dx;
+               new Float: dy;
+               set_int(open, 0);
+               get_drag(PART:"elm.bar", dx, dy);
+               set_float(drag_y, dy);
+               set_drag(PART:"elm.bar", 0.5, 1.0);
+               set_state(PART:"dots", "closed", 0.0);
+            }
+            else if (get_int(open) == 0)
+            {
+               set_int(open, 1);
+               set_drag(PART:"elm.bar", 0.5, get_float(drag_y));
+               set_state(PART:"dots", "default", 0.0);
+            }
+         }
+      }
+   }
 }

-- 


Reply via email to