elementary: fix clip in the progressbar theme
[framework/uifw/elementary.git] / data / themes / default.edc
index 0296ab3..52ecaa2 100644 (file)
@@ -246,68 +246,68 @@ collections {
    group { name: "elm/bg/base/default";
       images {
          image: "dia_grad.png" COMP;
-        image: "dia_topshad.png" COMP;
-        image: "dia_botshad.png" COMP;
+         image: "dia_topshad.png" COMP;
+         image: "dia_botshad.png" COMP;
       }
       parts {
          part { name: "base";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "dia_grad.png";
-              fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                    offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "elm.swallow.rectangle";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-           }
-        }
-        part { name: "elm.swallow.background";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-           }
-        }
-        part { name: "shadow";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              rel2.relative: 1.0 0.0;
-              rel2.offset: -1 31;
-              image.normal: "dia_topshad.png";
-              fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                    offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "shadow2";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              rel1.relative: 0.0 1.0;
-              rel1.offset: 0 -9;
-              image.normal: "dia_botshad.png";
-              fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                    offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-           }
-        }
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "dia_grad.png";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
+               }
+            }
+         }
+         part { name: "elm.swallow.rectangle";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+            }
+         }
+         part { name: "elm.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+            }
+         }
+         part { name: "shadow";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 31;
+               image.normal: "dia_topshad.png";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
+               }
+            }
+         }
+         part { name: "shadow2";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 -9;
+               image.normal: "dia_botshad.png";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
+               }
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+            }
+         }
       }
    }
 
@@ -318,83 +318,84 @@ collections {
       alias: "elm/genlist/base/default";
       alias: "elm/carousel/base/default";
       alias: "elm/gengrid/base/default";
+      alias: "elm/scroller/base/map_bubble";
 
       data {
          item: "focus_highlight" "on";
       }
 
       script {
-        public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
-        public timer0(val) {
-           new v;
-           v = get_int(sbvis_v);
-           if (v) {
+         public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
+         public timer0(val) {
+            new v;
+            v = get_int(sbvis_v);
+            if (v) {
                v = get_int(sbalways_v);
                if (!v) {
                   emit("do-hide-vbar", "");
                   set_int(sbvis_v, 0);
                }
-           }
-           v = get_int(sbvis_h);
-           if (v) {
+            }
+            v = get_int(sbvis_h);
+            if (v) {
                v = get_int(sbalways_h);
                if (!v) {
                   emit("do-hide-hbar", "");
                   set_int(sbvis_h, 0);
                }
-           }
-           set_int(sbvis_timer, 0);
-           return 0;
-        }
+            }
+            set_int(sbvis_timer, 0);
+            return 0;
+         }
       }
       images {
-        image: "shelf_inset.png" COMP;
-        image: "bt_sm_base2.png" COMP;
-        image: "bt_sm_shine.png" COMP;
-        image: "bt_sm_hilight.png" COMP;
+         image: "shelf_inset.png" COMP;
+         image: "bt_sm_base2.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
          image: "sl_bt2_2.png" COMP;
       }
       parts {
          part { name: "bg";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel1.offset: 2 2;
-              rel2.offset: -3 -3;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "clipper";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              rel1.offset: 2 2;
-              rel2.offset: -3 -3;
-           }
-        }
-        part { name: "elm.swallow.content";
-           clip_to: "clipper";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              rel1.offset: 2 2;
-              rel2.offset: -3 -3;
-           }
-        }
-        part { name: "conf_over";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              image {
-                 normal: "shelf_inset.png";
-                 border: 7 7 7 7;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "clipper";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
+            }
+         }
+         part { name: "elm.swallow.content";
+            clip_to: "clipper";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
+            }
+         }
+         part { name: "conf_over";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "shelf_inset.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
             description { state: "enabled" 0.0;
                inherit: "default" 0.0;
                color: 200 155 0 255;
@@ -418,833 +419,246 @@ collections {
                color: 200 155 0 255;
             }
          }
-        part { name: "sb_vbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_vbar_clip";
+         part { name: "sb_vbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_vbar_clip";
             clip_to: "sb_vbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_vbar";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              visible: 0;
-              min: 10 17;
-              align: 1.0 0.0;
-              rel1 {
-                 relative: 1.0 0.0;
-                 offset:   0 2;
-                 to_y:     "elm.swallow.content";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_vbar";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               min: 10 17;
+               align: 1.0 0.0;
+               rel1 {
+                  relative: 1.0 0.0;
+                  offset:   0 2;
+                  to_y:     "elm.swallow.content";
                   to_x:     "elm.swallow.content";
-              }
-              rel2 {
-                 relative: 1.0 0.0;
-                 offset:   -1 -1;
-                 to_y:     "sb_hbar";
+               }
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset:   -1 -1;
+                  to_y:     "sb_hbar";
                   to_x:     "elm.swallow.content";
-              }
-           }
-        }
-        part { name: "elm.dragable.vbar";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           dragable {
-              x: 0 0 0;
-              y: 1 1 0;
-              confine: "sb_vbar";
-           }
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              min: 10 17;
-               max: 10 99999;
-              rel1 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_vbar";
-              }
-              rel2 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_vbar";
-              }
-              image {
-                 normal: "bt_sm_base2.png";
-                 border: 6 6 6 6;
-                  middle: SOLID;
-              }
-           }
-        }
-        part { name: "sb_vbar_over1";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.vbar";
-              rel2.relative: 1.0 0.5;
-              rel2.to: "elm.dragable.vbar";
-              image {
-                 normal: "bt_sm_hilight.png";
-                 border: 6 6 6 0;
-              }
-           }
-        }
-        part { name: "sb_vbar_over2";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.vbar";
-              rel2.to: "elm.dragable.vbar";
-              image {
-                 normal: "bt_sm_shine.png";
-                 border: 6 6 6 0;
-              }
-           }
-        }
-
-        part { name: "sb_hbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_hbar_clip";
-            clip_to: "sb_hbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_hbar";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              visible: 0;
-              min: 17 10;
-              align: 0.0 1.0;
-              rel1 {
-                 relative: 0.0 1.0;
-                 offset:   2 0;
-                 to_x:     "elm.swallow.content";
-                  to_y:     "elm.swallow.content";
-              }
-              rel2 {
-                 relative: 0.0 1.0;
-                 offset:   -1 -1;
-                 to_x:     "sb_vbar";
-                  to_y:     "elm.swallow.content";
-              }
-           }
-        }
-        part { name: "elm.dragable.hbar";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           dragable {
-              x: 1 1 0;
-              y: 0 0 0;
-              confine: "sb_hbar";
-           }
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              min: 17 10;
-               max: 99999 10;
-              rel1 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_hbar";
-              }
-              rel2 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_hbar";
-              }
-              image {
-                 normal: "bt_sm_base2.png";
-                 border: 4 4 4 4;
-                  middle: SOLID;
-              }
-           }
-        }
-        part { name: "sb_hbar_over1";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.hbar";
-              rel2.relative: 1.0 0.5;
-              rel2.to: "elm.dragable.hbar";
-              image {
-                 normal: "bt_sm_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "sb_hbar_over2";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.hbar";
-              rel2.to: "elm.dragable.hbar";
-              image {
-                 normal: "bt_sm_shine.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-               rel1.to: "clipper";
-               rel2.to: "clipper";
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-               color: 128 128 128 128;
-           }
-        }
-      }
-      programs {
-        program { name: "load";
-           signal: "load";
-           source: "";
-           script {
-              set_state(PART:"sb_hbar_clip", "hidden", 0.0);
-              set_state(PART:"sb_vbar_clip", "hidden", 0.0);
-              set_int(sbvis_h, 0);
-              set_int(sbvis_v, 0);
-              set_int(sbalways_v, 0);
-              set_int(sbalways_h, 0);
-              set_int(sbvis_timer, 0);
-           }
-        }
-
-        program { name: "vbar_show";
-           signal: "elm,action,show,vbar";
-           source: "elm";
-            action:  STATE_SET "default" 0.0;
-            target: "sb_vbar_clip_master";
-        }
-        program { name: "vbar_hide";
-           signal: "elm,action,hide,vbar";
-           source: "elm";
-            action:  STATE_SET "hidden" 0.0;
-            target: "sb_vbar_clip_master";
-        }
-        program { name: "vbar_show_always";
-           signal: "elm,action,show_always,vbar";
-           source: "elm";
-            script {
-               new v;
-               v = get_int(sbvis_v);
-               v |= get_int(sbalways_v);
-               if (!v) {
-                  set_int(sbalways_v, 1);
-                  emit("do-show-vbar", "");
-                  set_int(sbvis_v, 1);
                }
             }
-        }
-        program { name: "vbar_show_notalways";
-           signal: "elm,action,show_notalways,vbar";
-           source: "elm";
-            script {
-               new v;
-               v = get_int(sbalways_v);
-               if (v) {
-                  set_int(sbalways_v, 0);
-                  v = get_int(sbvis_v);
-                  if (!v) {
-                     emit("do-hide-vbar", "");
-                     set_int(sbvis_v, 0);
-                  }
-               }
+         }
+         part { name: "elm.dragable.vbar";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            dragable {
+               x: 0 0 0;
+               y: 1 1 0;
+               confine: "sb_vbar";
             }
-        }
-        program { name: "sb_vbar_show";
-           signal: "do-show-vbar";
-           source: "";
-           action:  STATE_SET "default" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_vbar_clip";
-        }
-        program { name: "sb_vbar_hide";
-           signal: "do-hide-vbar";
-           source: "";
-           action:  STATE_SET "hidden" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_vbar_clip";
-        }
-
-        program { name: "hbar_show";
-           signal: "elm,action,show,hbar";
-           source: "elm";
-            action:  STATE_SET "default" 0.0;
-            target: "sb_hbar_clip_master";
-        }
-        program { name: "hbar_hide";
-           signal: "elm,action,hide,hbar";
-           source: "elm";
-            action:  STATE_SET "hidden" 0.0;
-            target: "sb_hbar_clip_master";
-        }
-        program { name: "hbar_show_always";
-           signal: "elm,action,show_always,hbar";
-           source: "elm";
-            script {
-               new v;
-               v = get_int(sbvis_h);
-               v |= get_int(sbalways_h);
-               if (!v) {
-                  set_int(sbalways_h, 1);
-                  emit("do-show-hbar", "");
-                  set_int(sbvis_h, 1);
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 10 17;
+               max: 10 99999;
+               rel1 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_vbar";
                }
-            }
-        }
-        program { name: "hbar_show_notalways";
-           signal: "elm,action,show_notalways,hbar";
-           source: "elm";
-            script {
-               new v;
-               v = get_int(sbalways_h);
-               if (v) {
-                  set_int(sbalways_h, 0);
-                  v = get_int(sbvis_h);
-                  if (!v) {
-                     emit("do-hide-hbar", "");
-                     set_int(sbvis_h, 0);
-                  }
+               rel2 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_vbar";
+               }
+               image {
+                  normal: "bt_sm_base2.png";
+                  border: 6 6 6 6;
+                  middle: SOLID;
                }
             }
-        }
-        program { name: "sb_hbar_show";
-           signal: "do-show-hbar";
-           source: "";
-           action:  STATE_SET "default" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_hbar_clip";
-        }
-        program { name: "sb_hbar_hide";
-           signal: "do-hide-hbar";
-           source: "";
-           action:  STATE_SET "hidden" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_hbar_clip";
-        }
-
-        program { name: "scroll";
-           signal: "elm,action,scroll";
-           source: "elm";
-           script {
-              new v;
-              v = get_int(sbvis_v);
-               v |= get_int(sbalways_v);
-              if (!v) {
-                  emit("do-show-vbar", "");
-                  set_int(sbvis_v, 1);
-              }
-              v = get_int(sbvis_h);
-               v |= get_int(sbalways_h);
-              if (!v) {
-                  emit("do-show-hbar", "");
-                  set_int(sbvis_h, 1);
-              }
-              v = get_int(sbvis_timer);
-              if (v > 0) cancel_timer(v);
-              v = timer(1.0, "timer0", 0);
-              set_int(sbvis_timer, v);
-           }
-        }
-
-         program { name: "highlight_show";
-            signal: "elm,action,focus_highlight,show";
-            source: "elm";
-            action: STATE_SET "enabled" 0.0;
-            transition: ACCELERATE 0.3;
-            target: "focus_highlight";
-            target: "conf_over";
          }
-         program { name: "highlight_hide";
-            signal: "elm,action,focus_highlight,hide";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            transition: DECELERATE 0.3;
-            target: "focus_highlight";
-            target: "conf_over";
+         part { name: "sb_vbar_over1";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "elm.dragable.vbar";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
+               }
+            }
          }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "disabler";
+         part { name: "sb_vbar_over2";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.to: "elm.dragable.vbar";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
          }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "disabler";
-        }
-      }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/scroller/entry/default";
 
-      data {
-         item: "focus_highlight" "on";
-      }
-
-      script {
-        public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
-        public timer0(val) {
-           new v;
-           v = get_int(sbvis_v);
-           if (v) {
-               v = get_int(sbalways_v);
-               if (!v) {
-                  emit("do-hide-vbar", "");
-                  set_int(sbvis_v, 0);
+         part { name: "sb_hbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_hbar_clip";
+            clip_to: "sb_hbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_hbar";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               min: 17 10;
+               align: 0.0 1.0;
+               rel1 {
+                  relative: 0.0 1.0;
+                  offset:   2 0;
+                  to_x:     "elm.swallow.content";
+                  to_y:     "elm.swallow.content";
                }
-           }
-           v = get_int(sbvis_h);
-           if (v) {
-               v = get_int(sbalways_h);
-               if (!v) {
-                  emit("do-hide-hbar", "");
-                  set_int(sbvis_h, 0);
+               rel2 {
+                  relative: 0.0 1.0;
+                  offset:   -1 -1;
+                  to_x:     "sb_vbar";
+                  to_y:     "elm.swallow.content";
                }
-           }
-           set_int(sbvis_timer, 0);
-           return 0;
-        }
-      }
-      images {
-        image: "shelf_inset.png" COMP;
-        image: "bt_sm_base2.png" COMP;
-        image: "bt_sm_shine.png" COMP;
-        image: "bt_sm_hilight.png" COMP;
-         image: "sl_bt2_2.png" COMP;
-      }
-      parts {
-         part { name: "bg";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel1.offset: 2 2;
-              rel2.offset: -3 -3;
-           }
-        }
-        part { name: "clipper";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              rel1.offset: 2 2;
-              rel2.offset: -3 -3;
-           }
-        }
-        part { name: "contentclipper";
-           type: RECT;
-           mouse_events: 0;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.icon";
-              rel1.relative: 1.0 0.0;
-              rel2.to: "elm.swallow.end";
-              rel2.relative: 0.0 1.0;
-           }
-        }
-        part { name: "elm.swallow.icon";
-           type: SWALLOW;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              rel1 {
-                 to: "bg";
-                 relative: 0.0 0.0;
-                 offset: 0 0;
-              }
-              rel2 {
-                 to: "bg";
-                 relative: 0.0 1.0;
-                 offset: -1 -1;
-              }
-              visible: 0;
-           }
-           description { state: "visible" 0.0;
-              fixed: 1 1;
-              align: 0.0 1.0;
-              rel1 {
-                 to: "bg";
-                 relative: 0.0 0.0;
-                 offset: 0 0;
-              }
-              rel2 {
-                 to: "bg";
-                 relative: 0.0 1.0;
-                 offset: -1 -1;
-              }
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.end";
-           type: SWALLOW;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              rel1 {
-                 to: "bg";
-                 relative: 1.0 0.0;
-                 offset: 0 0;
-              }
-              rel2 {
-                 to: "bg";
-                 relative: 1.0 1.0;
-                 offset: -1 -1;
-              }
-              visible: 0;
-           }
-           description { state: "visible" 0.0;
-              fixed: 1 1;
-              align: 1.0 1.0;
-              rel1 {
-                 to: "bg";
-                 relative: 1.0 0.0;
-                 offset: 0 0;
-              }
-              rel2 {
-                 to: "bg";
-                 relative: 1.0 1.0;
-                 offset: -1 -1;
-              }
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.content";
-           clip_to: "contentclipper";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1 {
-               to: "elm.swallow.icon";
-               relative: 1.0 0.0;
-               offset: 4 4;
-              }
-              rel2 {
-               to: "elm.swallow.end";
-               relative: 0.0 1.0;
-               offset: -5 -5;
-              }
-           }
-        }
-        part { name: "conf_over";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              image {
-                 normal: "shelf_inset.png";
-                 border: 7 7 7 7;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-            description { state: "enabled" 0.0;
-               inherit: "default" 0.0;
-               color: 200 155 0 255;
             }
          }
-         part { name: "focus_highlight";
+         part { name: "elm.dragable.hbar";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            dragable {
+               x: 1 1 0;
+               y: 0 0 0;
+               confine: "sb_hbar";
+            }
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 17 10;
+               max: 99999 10;
+               rel1 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_hbar";
+               }
+               rel2 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_hbar";
+               }
+               image {
+                  normal: "bt_sm_base2.png";
+                  border: 4 4 4 4;
+                  middle: SOLID;
+               }
+            }
+         }
+         part { name: "sb_hbar_over1";
+            clip_to: "sb_hbar_clip";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.offset: -1 -1;
-               rel2.offset: 0 0;
+               rel1.to: "elm.dragable.hbar";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "elm.dragable.hbar";
                image {
-                  normal: "sl_bt2_2.png";
-                  border: 7 7 7 7;
-                  middle: 0;
+                  normal: "bt_sm_hilight.png";
+                  border: 4 4 4 0;
                }
-               fill.smooth : 0;
-               color: 200 155 0 0;
             }
-            description { state: "enabled" 0.0;
+         }
+         part { name: "sb_hbar_over2";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.hbar";
+               rel2.to: "elm.dragable.hbar";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to: "clipper";
+               rel2.to: "clipper";
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
                inherit: "default" 0.0;
-               color: 200 155 0 255;
+               visible: 1;
+               color: 128 128 128 128;
             }
-        }
-        part { name: "sb_vbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_vbar_clip";
-            clip_to: "sb_vbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_vbar";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              visible: 0;
-              min: 10 17;
-              align: 1.0 0.0;
-              rel1 {
-                 relative: 0.0 0.0;
-                 offset:   -2 2;
-                 to_y:     "elm.swallow.content";
-                 to_x:     "elm.swallow.end";
-              }
-              rel2 {
-                 relative: 0.0 0.0;
-                 offset:   -2 -1;
-                 to_y:     "sb_hbar";
-                 to_x:     "elm.swallow.end";
-              }
-           }
-        }
-        part { name: "elm.dragable.vbar";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           dragable {
-              x: 0 0 0;
-              y: 1 1 0;
-              confine: "sb_vbar";
-           }
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              min: 10 17;
-               max: 10 99999;
-              rel1 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_vbar";
-              }
-              rel2 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_vbar";
-              }
-              image {
-                 normal: "bt_sm_base2.png";
-                 border: 6 6 6 6;
-                  middle: SOLID;
-              }
-           }
-        }
-        part { name: "sb_vbar_over1";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.vbar";
-              rel2.relative: 1.0 0.5;
-              rel2.to: "elm.dragable.vbar";
-              image {
-                 normal: "bt_sm_hilight.png";
-                 border: 6 6 6 0;
-              }
-           }
-        }
-        part { name: "sb_vbar_over2";
-           clip_to: "sb_vbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.vbar";
-              rel2.to: "elm.dragable.vbar";
-              image {
-                 normal: "bt_sm_shine.png";
-                 border: 6 6 6 0;
-              }
-           }
-        }
-
-        part { name: "sb_hbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_hbar_clip";
-            clip_to: "sb_hbar_clip_master";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              visible: 0;
-              color: 255 255 255 0;
-           }
-        }
-        part { name: "sb_hbar";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              visible: 0;
-              min: 17 10;
-              align: 0.0 1.0;
-              rel1 {
-                 relative: 0.0 1.0;
-                 offset:   2 0;
-                 to_x:     "elm.swallow.content";
-                  to_y:     "elm.swallow.content";
-              }
-              rel2 {
-                 relative: 0.0 1.0;
-                 offset:   -1 -1;
-                 to_x:     "sb_vbar";
-                  to_y:     "elm.swallow.content";
-              }
-           }
-        }
-        part { name: "elm.dragable.hbar";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           dragable {
-              x: 1 1 0;
-              y: 0 0 0;
-              confine: "sb_hbar";
-           }
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              min: 17 10;
-               max: 99999 10;
-              rel1 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_hbar";
-              }
-              rel2 {
-                 relative: 0.5  0.5;
-                 offset:   0    0;
-                 to: "sb_hbar";
-              }
-              image {
-                 normal: "bt_sm_base2.png";
-                 border: 4 4 4 4;
-                  middle: SOLID;
-              }
-           }
-        }
-        part { name: "sb_hbar_over1";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.hbar";
-              rel2.relative: 1.0 0.5;
-              rel2.to: "elm.dragable.hbar";
-              image {
-                 normal: "bt_sm_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "sb_hbar_over2";
-           clip_to: "sb_hbar_clip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "elm.dragable.hbar";
-              rel2.to: "elm.dragable.hbar";
-              image {
-                 normal: "bt_sm_shine.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
+         }
       }
       programs {
-        program { name: "load";
-           signal: "load";
-           source: "";
-           script {
-              set_state(PART:"sb_hbar_clip", "hidden", 0.0);
-              set_state(PART:"sb_vbar_clip", "hidden", 0.0);
-              set_int(sbvis_h, 0);
-              set_int(sbvis_v, 0);
-              set_int(sbalways_v, 0);
-              set_int(sbalways_h, 0);
-              set_int(sbvis_timer, 0);
-           }
-        }
-        program { name: "icon_show";
-           signal: "elm,action,show,icon";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "icon_hide";
-           signal: "elm,action,hide,icon";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "end_show";
-           signal: "elm,action,show,end";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "end_hide";
-           signal: "elm,action,hide,end";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "vbar_show";
-           signal: "elm,action,show,vbar";
-           source: "elm";
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               set_state(PART:"sb_hbar_clip", "hidden", 0.0);
+               set_state(PART:"sb_vbar_clip", "hidden", 0.0);
+               set_int(sbvis_h, 0);
+               set_int(sbvis_v, 0);
+               set_int(sbalways_v, 0);
+               set_int(sbalways_h, 0);
+               set_int(sbvis_timer, 0);
+            }
+         }
+
+         program { name: "vbar_show";
+            signal: "elm,action,show,vbar";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
             target: "sb_vbar_clip_master";
-        }
-        program { name: "vbar_hide";
-           signal: "elm,action,hide,vbar";
-           source: "elm";
+         }
+         program { name: "vbar_hide";
+            signal: "elm,action,hide,vbar";
+            source: "elm";
             action:  STATE_SET "hidden" 0.0;
             target: "sb_vbar_clip_master";
-        }
-        program { name: "vbar_show_always";
-           signal: "elm,action,show_always,vbar";
-           source: "elm";
+         }
+         program { name: "vbar_show_always";
+            signal: "elm,action,show_always,vbar";
+            source: "elm";
             script {
                new v;
                v = get_int(sbvis_v);
@@ -1255,10 +669,10 @@ collections {
                   set_int(sbvis_v, 1);
                }
             }
-        }
-        program { name: "vbar_show_notalways";
-           signal: "elm,action,show_notalways,vbar";
-           source: "elm";
+         }
+         program { name: "vbar_show_notalways";
+            signal: "elm,action,show_notalways,vbar";
+            source: "elm";
             script {
                new v;
                v = get_int(sbalways_v);
@@ -1271,37 +685,37 @@ collections {
                   }
                }
             }
-        }
-        program { name: "sb_vbar_show";
-           signal: "do-show-vbar";
-           source: "";
-           action:  STATE_SET "default" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_vbar_clip";
-        }
-        program { name: "sb_vbar_hide";
-           signal: "do-hide-vbar";
-           source: "";
-           action:  STATE_SET "hidden" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_vbar_clip";
-        }
-
-        program { name: "hbar_show";
-           signal: "elm,action,show,hbar";
-           source: "elm";
+         }
+         program { name: "sb_vbar_show";
+            signal: "do-show-vbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_vbar_clip";
+         }
+         program { name: "sb_vbar_hide";
+            signal: "do-hide-vbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_vbar_clip";
+         }
+
+         program { name: "hbar_show";
+            signal: "elm,action,show,hbar";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
             target: "sb_hbar_clip_master";
-        }
-        program { name: "hbar_hide";
-           signal: "elm,action,hide,hbar";
-           source: "elm";
+         }
+         program { name: "hbar_hide";
+            signal: "elm,action,hide,hbar";
+            source: "elm";
             action:  STATE_SET "hidden" 0.0;
             target: "sb_hbar_clip_master";
-        }
-        program { name: "hbar_show_always";
-           signal: "elm,action,show_always,hbar";
-           source: "elm";
+         }
+         program { name: "hbar_show_always";
+            signal: "elm,action,show_always,hbar";
+            source: "elm";
             script {
                new v;
                v = get_int(sbvis_h);
@@ -1312,10 +726,10 @@ collections {
                   set_int(sbvis_h, 1);
                }
             }
-        }
-        program { name: "hbar_show_notalways";
-           signal: "elm,action,show_notalways,hbar";
-           source: "elm";
+         }
+         program { name: "hbar_show_notalways";
+            signal: "elm,action,show_notalways,hbar";
+            source: "elm";
             script {
                new v;
                v = get_int(sbalways_h);
@@ -1328,45 +742,45 @@ collections {
                   }
                }
             }
-        }
-        program { name: "sb_hbar_show";
-           signal: "do-show-hbar";
-           source: "";
-           action:  STATE_SET "default" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_hbar_clip";
-        }
-        program { name: "sb_hbar_hide";
-           signal: "do-hide-hbar";
-           source: "";
-           action:  STATE_SET "hidden" 0.0;
-           transition: LINEAR 0.5;
-           target: "sb_hbar_clip";
-        }
-
-        program { name: "scroll";
-           signal: "elm,action,scroll";
-           source: "elm";
-           script {
-              new v;
-              v = get_int(sbvis_v);
+         }
+         program { name: "sb_hbar_show";
+            signal: "do-show-hbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_hbar_clip";
+         }
+         program { name: "sb_hbar_hide";
+            signal: "do-hide-hbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_hbar_clip";
+         }
+
+         program { name: "scroll";
+            signal: "elm,action,scroll";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_v);
                v |= get_int(sbalways_v);
-              if (!v) {
+               if (!v) {
                   emit("do-show-vbar", "");
                   set_int(sbvis_v, 1);
-              }
-              v = get_int(sbvis_h);
+               }
+               v = get_int(sbvis_h);
                v |= get_int(sbalways_h);
-              if (!v) {
+               if (!v) {
                   emit("do-show-hbar", "");
                   set_int(sbvis_h, 1);
-              }
-              v = get_int(sbvis_timer);
-              if (v > 0) cancel_timer(v);
-              v = timer(1.0, "timer0", 0);
-              set_int(sbvis_timer, v);
-           }
-        }
+               }
+               v = get_int(sbvis_timer);
+               if (v > 0) cancel_timer(v);
+               v = timer(1.0, "timer0", 0);
+               set_int(sbvis_timer, v);
+            }
+         }
 
          program { name: "highlight_show";
             signal: "elm,action,focus_highlight,show";
@@ -1384,12026 +798,11719 @@ collections {
             target: "focus_highlight";
             target: "conf_over";
          }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "disabler";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "disabler";
+         }
       }
    }
 
 ///////////////////////////////////////////////////////////////////////////////
-#define TEXT_SLIDE_DURATION     10
+   group { name: "elm/scroller/entry/default";
 
-   group { name: "elm/label/base/default";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      styles {
-         style { name: "textblock_style";
-            base: "font=Sans font_size=10 color=#000 wrap=word text_class=label";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "tab" "\t";
-          }
-       }
-      parts {
-        part { name: "label.swallow.background";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               visible: 1;
-           }
-         }
-        part { name: "label.text.clip";
-            type: RECT;
-           description { state: "default" 0.0;
-               rel1 { relative: 0 0; to: "label.swallow.background"; }
-               rel2 { relative: 1 1; to: "label.swallow.background"; }
-           }
-        }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           clip_to: "label.text.clip";
-           description { state: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 1.0 1.0;
-               text {
-                  style: "textblock_style";
-                  min: 1 1;
-               }
-           }
-        }
+      data {
+         item: "focus_highlight" "on";
       }
-   }
 
-   group { name: "elm/label/base_wrap/default";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      parts {
-         part { name: "label.swallow.background";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               visible: 1;
-               rel1 { relative: 0 0; to: "elm.text"; }
-               rel2 { relative: 1 1; to: "elm.text"; }
+      script {
+         public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
+         public timer0(val) {
+            new v;
+            v = get_int(sbvis_v);
+            if (v) {
+               v = get_int(sbalways_v);
+               if (!v) {
+                  emit("do-hide-vbar", "");
+                  set_int(sbvis_v, 0);
+               }
+            }
+            v = get_int(sbvis_h);
+            if (v) {
+               v = get_int(sbalways_h);
+               if (!v) {
+                  emit("do-hide-hbar", "");
+                  set_int(sbvis_h, 0);
+               }
             }
+            set_int(sbvis_timer, 0);
+            return 0;
          }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              text {
-                 style: "textblock_style";
-                 min: 0 1;
-              }
-           } 
-        }
-      }
-   } 
-
-   group { name: "elm/label/base_wrap_ellipsis/default";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      parts {
-        part { name: "label.swallow.background";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               visible: 1;
-               rel1 { relative: 0 0; to: "elm.text"; }
-               rel2 { relative: 1 1; to: "elm.text"; }
-           }
-         }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           multiline: 1;
-           description { state: "default" 0.0;
-              fixed: 0 1; 
-              text {
-                 style: "textblock_style";
-                 min: 0 1;
-              }
-           }
-        }
       }
-   }
-
-   group { name: "elm/label/base/marker";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      styles {
-         style { name: "textblock_style2";
-          base: "font=Sans:style=Bold font_size=10 align=center color=#fff wrap=word text_class=label";
-           tag:  "br" "\n";
-           tag:  "ps" "ps";
-          tag:  "hilight" "+ color=#ffff";
-          tag:  "b" "+ color=#ffff";
-          tag:  "tab" "\t";
-        }
+      images {
+         image: "shelf_inset.png" COMP;
+         image: "bt_sm_base2.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "sl_bt2_2.png" COMP;
       }
       parts {
-         part { name: "label.swallow.background";
-            type: SWALLOW;
+         part { name: "bg";
+            type: RECT;
             description { state: "default" 0.0;
-               visible: 1;
-               rel1 { relative: 0 0; to: "elm.text"; }
-               rel2 { relative: 1 1; to: "elm.text"; }
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
             }
          }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              text {
-                 style: "textblock_style2";
-                 min: 1 1;
-              }
-           }
-        }
-      }
-   }
-
-   group { name: "elm/label/base_wrap/marker";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      parts {
-         part { name: "label.swallow.background";
-            type: SWALLOW;
+         part { name: "clipper";
+            type: RECT;
+            mouse_events: 0;
             description { state: "default" 0.0;
-               visible: 1;
-               rel1 { relative: 0 0; to: "elm.text"; }
-               rel2 { relative: 1 1; to: "elm.text"; }
+               rel1.to: "bg";
+               rel2.to: "bg";
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
             }
          }
-         part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              text {
-                 style: "textblock_style2";
-                 min: 0 1;
-              }
-           }
-        }
-      }
-   }
-
-   group { name: "elm/label/base/slide_long";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      
-      script {
-        public g_duration, g_stopslide, g_timer_id, g_anim_id;
-          
-        public message(Msg_Type:type, id, ...) {
-           if ((type == MSG_FLOAT_SET) && (id == 0)) {
-              new Float:duration;
-              duration = getarg(2);
-              set_float(g_duration, duration);
-           }
-        }
-        public slide_to_end_anim(val, Float:pos) {
-           new stopflag;
-           new id;
-           stopflag = get_int(g_stopslide);
-           if (stopflag == 1) return;
-           set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
-           if (pos >= 1.0) {
-              id = timer(0.5, "slide_to_begin", 1);
-              set_int(g_timer_id, id);
-           }
-        }
-        public slide_to_end() {
-           new stopflag;
-           new id;
-           new Float:duration;
-           stopflag = get_int(g_stopslide);
-           if (stopflag == 1) return;
-           duration = get_float(g_duration);
-           id = anim(duration, "slide_to_end_anim", 1);
-           set_int(g_anim_id, id);
-        }
-        public slide_to_begin() {
-           new stopflag;
-           new id;
-           stopflag = get_int(g_stopslide);
-           if (stopflag == 1) return;
-           set_state(PART:"elm.text", "slide_begin", 0.0);
-           id = timer(0.5, "slide_to_end", 1);
-           set_int(g_timer_id, id);
-        }
-        public start_slide() {
-           set_int(g_stopslide, 0);
-           set_state(PART:"elm.text", "slide_begin", 0.0);
-           slide_to_end();
-        }
-        public stop_slide() {
-           new id;
-           set_int(g_stopslide, 1);
-           id = get_int(g_anim_id);
-           cancel_anim(id);
-           id = get_int(g_timer_id);
-           cancel_timer(id);
-           set_state(PART:"elm.text", "default", 0.0);
-        }
-      }
-       
-      parts {
-        part { name: "label.swallow.background";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               visible: 1;
-           }
-         }
-        part { name: "label.text.clip";
+         part { name: "contentclipper";
             type: RECT;
-           description { state: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 { relative: 0 0; to: "label.swallow.background"; }
-               rel2 { relative: 1 1; to: "label.swallow.background"; }
-           }
-        }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           clip_to: "label.text.clip";
-           description { state: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 0.0 0.0;
-               text {
-                  style: "textblock_style";
-                  min: 1 1;
-               }
-           }
-            description { state: "slide_end" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 0.0 1.0;
-               align: 1.0 0.0;
-            }
-            description { state: "slide_begin" 0.0;
-               inherit: "default" 0.0;
+            mouse_events: 0;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.icon";
                rel1.relative: 1.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 0.0 0.0;
+               rel2.to: "elm.swallow.end";
+               rel2.relative: 0.0 1.0;
             }
-        }
-       }
-       programs {
-          program { name: "start_slide";
-             source: "elm";
-             signal: "elm,state,slide,start";
-             script
-               {
-                  start_slide();
+         }
+         part { name: "elm.swallow.icon";
+            type: SWALLOW;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1 {
+                  to: "bg";
+                  relative: 0.0 0.0;
+                  offset: 0 0;
                }
-          }
-          program { name: "stop_slide";
-             source: "elm";
-             signal: "elm,state,slide,stop";
-             script
-               {
-                  stop_slide();
+               rel2 {
+                  to: "bg";
+                  relative: 0.0 1.0;
+                  offset: -1 -1;
                }
-          }
-       }
-   }
-   
-
-   group { name: "elm/label/base/slide_short";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-
-      script {
-         public g_duration, g_stopslide, g_timer_id, g_anim_id;
-         
-         public message(Msg_Type:type, id, ...) {
-            if ((type == MSG_FLOAT_SET) && (id == 0)) {
-               new Float:duration;
-               duration = getarg(2);
-               set_float(g_duration, duration);
+               visible: 0;
             }
-         }
-         public slide_to_end_anim(val, Float:pos) {
-            new stopflag;
-            new id;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
-            if (pos >= 1.0) {
-               id = timer(0.5, "slide_to_begin", 1);
-               set_int(g_timer_id, id);
+            description { state: "visible" 0.0;
+               fixed: 1 1;
+               align: 0.0 1.0;
+               rel1 {
+                         to: "bg";
+                         relative: 0.0 0.0;
+                         offset: 0 0;
+               }
+               rel2 {
+                  to: "bg";
+                  relative: 0.0 1.0;
+                  offset: -1 -1;
+               }
+               visible: 1;
             }
          }
-         public slide_to_end() {
-            new stopflag;
-            new id;
-            new Float:duration;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            duration = get_float(g_duration);
-            id = anim(duration, "slide_to_end_anim", 1);
-            set_int(g_anim_id, id);
-         }
-         public slide_to_begin() {
-            new stopflag;
-            new id;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            set_state(PART:"elm.text", "slide_begin", 0.0);
-            id = timer(0.5, "slide_to_end", 1);
-            set_int(g_timer_id, id);
-         }
-         public start_slide() {
-            set_int(g_stopslide, 0);
-            set_state(PART:"elm.text", "slide_begin", 0.0);
-            slide_to_end();
-         }
-         public stop_slide() {
-            new id;
-            set_int(g_stopslide, 1);
-            id = get_int(g_anim_id);
-            cancel_anim(id);
-            id = get_int(g_timer_id);
-            cancel_timer(id);
-            set_state(PART:"elm.text", "default", 0.0);
-         }
-      }
-
-      parts {
-        part { name: "label.swallow.background";
-           type: SWALLOW;
-           description { state: "default" 0.0;
+         part { name: "elm.swallow.end";
+            type: SWALLOW;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1 {
+                  to: "bg";
+                  relative: 1.0 0.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "bg";
+                  relative: 1.0 1.0;
+                  offset: -1 -1;
+               }
+               visible: 0;
+            }
+            description { state: "visible" 0.0;
+               fixed: 1 1;
+               align: 1.0 1.0;
+               rel1 {
+                  to: "bg";
+                  relative: 1.0 0.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "bg";
+                  relative: 1.0 1.0;
+                  offset: -1 -1;
+               }
                visible: 1;
-           }
+            }
          }
-        part { name: "label.text.clip";
-            type: RECT;
-           description { state: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 { relative: 0 0; to: "label.swallow.background"; }
-               rel2 { relative: 1 1; to: "label.swallow.background"; }
-           }
-        }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           clip_to: "label.text.clip";
-           description { state: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 0.0 0.0;
-               text {
-                  style: "textblock_style";
-                  min: 1 1;
+         part { name: "elm.swallow.content";
+            clip_to: "contentclipper";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 {
+                       to: "elm.swallow.icon";
+                       relative: 1.0 0.0;
+                       offset: 4 4;
+               }
+               rel2 {
+                to: "elm.swallow.end";
+                relative: 0.0 1.0;
+                offset: -5 -5;
                }
-           }
-            description { state: "slide_end" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 1.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 1.0 0.0;
             }
-            description { state: "slide_begin" 0.0;
+         }
+         part { name: "conf_over";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "shelf_inset.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+            description { state: "enabled" 0.0;
                inherit: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 0.0 1.0;
-               align: 0.0 0.0;
+               color: 200 155 0 255;
             }
-        }
-      }
-      programs {
-         program { name: "start_slide";
-            source: "elm";
-            signal: "elm,state,slide,start";
-            script
-              {
-                 start_slide();
-              }
-         }
-         program { name: "stop_slide";
-            source: "elm";
-            signal: "elm,state,slide,stop";
-            script
-              {
-                 stop_slide();
-              }
          }
-      }
-   }
-
-   group { name: "elm/label/base/slide_bounce";
-      data.item: "default_font_size" "10";
-      data.item: "min_font_size" "6";
-      data.item: "max_font_size" "60";
-      
-      script {
-         public g_duration, g_stopslide, g_timer_id, g_anim_id;
-         
-         public message(Msg_Type:type, id, ...) {
-            if ((type == MSG_FLOAT_SET) && (id == 0)) {
-               new Float:duration;
-               duration = getarg(2);
-               set_float(g_duration, duration);
+         part { name: "focus_highlight";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.offset: -1 -1;
+               rel2.offset: 0 0;
+               image {
+                  normal: "sl_bt2_2.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+               color: 200 155 0 0;
             }
-         }
-         public slide_to_end_anim(val, Float:pos) {
-            new stopflag;
-            new id;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
-            if (pos >= 1.0) {
-               id = timer(0.5, "slide_to_begin", 1);
-               set_int(g_timer_id, id);
+            description { state: "enabled" 0.0;
+               inherit: "default" 0.0;
+               color: 200 155 0 255;
             }
          }
-         public slide_to_end() {
-            new stopflag;
-            new id;
-            new Float:duration;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            duration = get_float(g_duration);
-            id = anim(duration, "slide_to_end_anim", 1);
-            set_int(g_anim_id, id);
-         }
-         public slide_to_begin_anim(val, Float:pos) {
-            new stopflag;
-            new id;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            set_tween_state(PART:"elm.text", pos, "slide_end", 0.0, "slide_begin", 0.0);
-            if (pos >= 1.0) {
-               id = timer(0.5, "slide_to_end", 1);
-               set_int(g_timer_id, id);
+         part { name: "sb_vbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
             }
          }
-         public slide_to_begin() {
-            new stopflag;
-            new id;
-            new Float:duration;
-            stopflag = get_int(g_stopslide);
-            if (stopflag == 1) return;
-            duration = get_float(g_duration);
-            id = anim(duration, "slide_to_begin_anim", 1);
-            set_int(g_anim_id, id);
-         }
-         public start_slide() {
-            set_int(g_stopslide, 0);
-            set_state(PART:"elm.text", "slide_begin", 0.0);
-            slide_to_end();
-         }
-         public stop_slide() {
-            new id;
-            set_int(g_stopslide, 1);
-            id = get_int(g_anim_id);
-            cancel_anim(id);
-            id = get_int(g_timer_id);
-            cancel_timer(id);
-            set_state(PART:"elm.text", "default", 0.0);
-         }
-      }
-
-      parts {
-        part { name: "label.swallow.background";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-               visible: 1;
-           }
-         }
-        part { name: "label.text.clip";
+         part { name: "sb_vbar_clip";
+            clip_to: "sb_vbar_clip_master";
             type: RECT;
-           description { state: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 { relative: 0 0; to: "label.swallow.background"; }
-               rel2 { relative: 1 1; to: "label.swallow.background"; }
-           }
-        }
-        part { name: "elm.text";
-           type: TEXTBLOCK;
-           mouse_events: 0;
-           scale: 1;
-           clip_to: "label.text.clip";
-           description { state: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 0.0 0.0;
-               text {
-                  style: "textblock_style";
-                  min: 1 1;
-               }
-           }
-            description { state: "slide_end" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 1.0 0.0;
-               rel2.relative: 1.0 1.0;
-               align: 1.0 0.0;
+            mouse_events: 0;
+            description { state: "default" 0.0;
             }
-            description { state: "slide_begin" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 0.0 1.0;
-               align: 0.0 0.0;
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
             }
-        }
-      }
-      programs {
-         program { name: "start_slide";
-            source: "elm";
-            signal: "elm,state,slide,start";
-            script
-              {
-                 start_slide();
-              }
          }
-         program { name: "stop_slide";
-            source: "elm";
-            signal: "elm,state,slide,stop";
-            script
-              {
-                 stop_slide();
-              }
-         }
-      }
-   }
-
-
-///////////////////////////////////////////////////////////////////////////////
-
-   group { name: "elm/button/base/default";
-      images {
-        image: "bt_base1.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "bt_glow.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "button_image";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-          min: 15 15;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "bt_base1.png";
-               image.middle: SOLID;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1.offset: 4 4;
-              rel2.offset: 3 -5;
-              rel2.relative: 0.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-               fixed: 1 0;
-              visible: 1;
-              aspect: 1.0 1.0;
-//            aspect_preference: VERTICAL;
-              rel2.offset: 4 -5;
-           }
-           description { state: "icononly" 0.0;
-              inherit: "default" 0.0;
-               fixed: 0 0;
-              visible: 1;
-              align: 0.5 0.5;
-//            aspect: 1.0 1.0;
-              rel2.offset: -5 -5;
-              rel2.relative: 1.0 1.0;
-//            aspect_preference: VERTICAL;
-           }
-        }
-         part {
-           name:          "elm.text";
-           type:          TEXT;
-           effect:        SOFT_SHADOW;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 0 4;
-              rel2.offset: -5 -5;
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-                  text_class: "button";
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              visible: 0;
-           }
-        }
-         part { name: "over3";
-            mouse_events: 1;
-            repeat_events: 1;
+         part { name: "sb_vbar";
+            type: RECT;
+            mouse_events: 0;
             description { state: "default" 0.0;
-               color: 255 255 255 0;
-               image {
-                  normal: "bt_glow.png";
-                  border: 12 12 12 12;
+               fixed: 1 1;
+               visible: 0;
+               min: 10 17;
+               align: 1.0 0.0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset:   -2 2;
+                  to_y:     "elm.swallow.content";
+                  to_x:     "elm.swallow.end";
+               }
+               rel2 {
+                  relative: 0.0 0.0;
+                  offset:   -2 -1;
+                  to_y:     "sb_hbar";
+                  to_x:     "elm.swallow.end";
                }
-              fill.smooth : 0;
-            }
-            description { state: "clicked" 0.0;
-               inherit:  "default" 0.0;
-               color: 255 255 255 255;
             }
          }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program {
-           name:   "button_click";
-           signal: "mouse,down,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,press" "";
-           after: "button_click_anim";
-        }
-        program {
-           name:   "button_click_anim";
-           action: STATE_SET "clicked" 0.0;
-           target: "button_image";
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: SIGNAL_EMIT "elm,action,unpress" "";
-           after: "button_unclick_anim";
-        }
-        program {
-           name:   "button_pressed_anim";
-           signal: "elm,anim,activate";
-           source: "elm";
-           action: STATE_SET "clicked" 0.0;
-           target: "button_image";
-           target: "over3";
-           after: "button_unpressed_anim";
-        }
-        program {
-           name:   "button_unpressed_anim";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "button_image";
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick_anim";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-        }
-        program {
-           name:   "button_click2";
-           signal: "mouse,down,1";
-           source: "over3";
-           action: STATE_SET "clicked" 0.0;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick2";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: STATE_SET "default" 0.0;
-            transition: DECELERATE 0.5;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,clicked,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "icononly"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              set_state(PART:"elm.text", "visible", 0.0);
-           }
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-              set_state(PART:"elm.text", "default", 0.0);
-           }
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-           }
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
-           }
-         }
-      }
-   }
-
-   group { name: "elm/button/base/hoversel_vertical/default";
-      alias: "elm/button/base/hoversel_vertical/entry";
-      alias: "elm/button/base/hoversel_horizontal/default";
-      alias: "elm/button/base/hoversel_horizontal/entry";
-      images {
-        image: "bt_base1.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "bt_glow.png" COMP;
-        image: "updown.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "button_image";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "bt_base1.png";
-               image.middle: SOLID;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-           }
-        }
-        part { name: "arrow";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              image.normal: "updown.png";
-               aspect: 0.6666666666 0.6666666666;
-               aspect_preference: VERTICAL;
-               rel1.offset: 6 7;
-               rel2.offset: 6 -7;
-               rel2.relative: 0.0 1.0;
-               align: 0.0 0.5;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1 {
-                  to_x: "arrow";
-                  offset: 2 4;
-                  relative: 1.0 0.0;
+         part { name: "elm.dragable.vbar";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            dragable {
+               x: 0 0 0;
+               y: 1 1 0;
+               confine: "sb_vbar";
+            }
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 10 17;
+               max: 10 99999;
+               rel1 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_vbar";
                }
-              rel2 {
-                  to_x: "arrow";
-                  offset: 1 -5;
-                  relative: 1.0 1.0;
+               rel2 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_vbar";
                }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-               fixed: 0 0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              rel2.offset: 2 -5;
-           }
-           description { state: "icononly" 0.0;
-              inherit: "default" 0.0;
-               fixed: 0 0;
-              visible: 1;
-              align: 0.5 0.5;
-              aspect: 1.0 1.0;
-               rel1 {
-                  to_x: "button_image";
-                  offset: -5 -5;
-                  relative: 1.0 1.0;
+               image {
+                  normal: "bt_sm_base2.png";
+                  border: 6 6 6 6;
+                  middle: SOLID;
                }
-              aspect_preference: VERTICAL;
-           }
-        }
-         part {
-           name:          "elm.text";
-           type:          TEXT;
-           effect:        SOFT_SHADOW;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 0 4;
-              rel2.offset: -5 -5;
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-                  text_class: "button";
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              visible: 0;
-           }
-        }
-         part { name: "over3";
-            mouse_events: 1;
-            repeat_events: 1;
+            }
+         }
+         part { name: "sb_vbar_over1";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
             description { state: "default" 0.0;
-               color: 255 255 255 0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "elm.dragable.vbar";
                image {
-                  normal: "bt_glow.png";
-                  border: 12 12 12 12;
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-              fill.smooth : 0;
-            }
-            description { state: "clicked" 0.0;
-               inherit:  "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
             }
          }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program {
-           name:   "button_click";
-           signal: "mouse,down,1";
-           source: "over2";
-           action: STATE_SET "clicked" 0.0;
-           target: "button_image";
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-        }
-        program {
-           name:   "button_click2";
-           signal: "mouse,down,1";
-           source: "over3";
-           action: STATE_SET "clicked" 0.0;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick2";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: STATE_SET "default" 0.0;
-            transition: DECELERATE 0.5;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "icononly"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              set_state(PART:"elm.text", "visible", 0.0);
-           }
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-              set_state(PART:"elm.text", "default", 0.0);
-           }
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-           }
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
-           }
+         part { name: "sb_vbar_over2";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.to: "elm.dragable.vbar";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
          }
-      }
-   }
 
-   group { name: "elm/button/base/hoversel_vertical_entry/default";
-      alias: "elm/button/base/hoversel_vertical_entry/entry";
-      alias: "elm/button/base/hoversel_horizontal_entry/default";
-      alias: "elm/button/base/hoversel_horizontal_entry/entry";
-      images {
-         image: "hoversel_entry_bg.png" COMP;
-      }
-      parts {
-        part { name: "button_image";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-               color: 255 255 255 0;
-               image.normal: "hoversel_entry_bg.png";
-               image.border: 0 0 2 2;
-               fill.smooth: 0;
-           }
-           description { state: "clicked" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1.offset: 4 4;
-              rel2.offset: 3 -5;
-              rel2.relative: 0.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              rel2.offset: 4 -5;
-           }
-           description { state: "icononly" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              align: 0.5 0.5;
-              aspect: 1.0 1.0;
-              rel2.offset: -5 -5;
-              rel2.relative: 1.0 1.0;
-              aspect_preference: VERTICAL;
-           }
-        }
-        part { name: "textvis";
+         part { name: "sb_hbar_clip_master";
             type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
                visible: 0;
-           }
-           description { state: "visible" 0.0;
-               visible: 1;
-           }
-        }
-         part {
-           name:          "elm.text";
-           type:          TEXT;
-           effect:        SOFT_SHADOW;
-           mouse_events:  0;
-           scale: 1;
-            clip_to:       "textvis";
-           description { state: "default" 0.0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 0 4;
-              rel2.offset: -5 -5;
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-                  text_class: "button";
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              text.min: 1 1;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-              text.min: 1 1;
-              color: 0 0 0 255;
-              color3: 0 0 0 0;
-           }
-        }
-        part { name: "over2";
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_hbar_clip";
+            clip_to: "sb_hbar_clip_master";
             type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-               color: 0 0 0 0;
-           }
-        }
-      }
-      programs {
-        program {
-           name:   "button_click";
-           signal: "mouse,down,1";
-           source: "over2";
-           action: STATE_SET "clicked" 0.0;
-           target: "button_image";
-           target: "elm.text";
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-           target: "elm.text";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "icononly"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              set_state(PART:"textvis", "visible", 0.0);
-              set_state(PART:"elm.text", "visible", 0.0);
-           }
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-              set_state(PART:"textvis", "default", 0.0);
-              set_state(PART:"elm.text", "default", 0.0);
-           }
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"textvis", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-           }
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-      }
-   }
-
-   group { name: "elm/button/base/anchor";
-      images {
-        image: "bt_base1.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "bt_glow.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "button_image";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-          min: 15 15;
-           color: 255 255 255 0;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-       description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-          color: 255 255 255 255;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-          inherit: "visible" 0.0;
-              image.normal: "bt_base1.png";
-               image.middle: SOLID;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-          inherit: "visible" 0.0;
-              image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1.offset: 4 4;
-              rel2.offset: 3 -5;
-              rel2.relative: 0.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-               fixed: 1 0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              rel2.offset: 4 -5;
-           }
-           description { state: "icononly" 0.0;
-              inherit: "default" 0.0;
-               fixed: 0 0;
-              visible: 1;
-              align: 0.5 0.5;
-              aspect: 1.0 1.0;
-              rel2.offset: -5 -5;
-              rel2.relative: 1.0 1.0;
-              aspect_preference: VERTICAL;
-           }
-        }
-         part {
-           name:          "elm.text";
-           type:          TEXT;
-           effect:        SOFT_SHADOW;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 0 4;
-              rel2.offset: -5 -5;
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-                  text_class: "button";
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-           color: 255 255 255 0;
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-       description { state: "visible" 0.0;
-              inherit:  "default" 0.0;
-          color: 255 255 255 255;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-          inherit:  "visible" 0.0;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              visible: 0;
-           }
-        }
-         part { name: "over3";
-            mouse_events: 1;
-            repeat_events: 1;
+            mouse_events: 0;
             description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
                color: 255 255 255 0;
-               image {
-                  normal: "bt_glow.png";
-                  border: 12 12 12 12;
-               }
-              fill.smooth : 0;
             }
-            description { state: "clicked" 0.0;
-               inherit:  "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+         }
+         part { name: "sb_hbar";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               min: 17 10;
+               align: 0.0 1.0;
+               rel1 {
+                  relative: 0.0 1.0;
+                  offset:   2 0;
+                  to_x:     "elm.swallow.content";
+                  to_y:     "elm.swallow.content";
+               }
+               rel2 {
+                  relative: 0.0 1.0;
+                  offset:   -1 -1;
+                  to_x:     "sb_vbar";
+                  to_y:     "elm.swallow.content";
+               }
             }
          }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-    program {
-           name:   "button_mouse_in";
-           signal: "mouse,in";
-           source: "over2";
-           action: STATE_SET "visible" 0.0;
-           target: "button_image";
-       target: "over1";
-       transition: DECELERATE 0.5;
-        }
-        program {
-           name:   "button_mouse_out";
-           signal: "mouse,out";
-           source: "over2";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-       target: "over1";
-       transition: DECELERATE 0.5;
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: STATE_SET "visible" 0.0;
-           target: "button_image";
-        }
-        program {
-           name:   "button_click2";
-           signal: "mouse,down,1";
-           source: "over3";
-           action: STATE_SET "clicked" 0.0;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick2";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: STATE_SET "default" 0.0;
-            transition: DECELERATE 0.5;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "icononly"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              set_state(PART:"elm.text", "visible", 0.0);
-           }
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-              set_state(PART:"elm.text", "default", 0.0);
-           }
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "icononly", 0.0);
-           }
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-           target: "over1";
-           target: "over2";
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
-           }
-         }
-      }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/toggle/base/default";
-      images {
-         image: "shelf_inset.png" COMP;
-        image: "bt_basew.png" COMP;
-        image: "bt_bases.png" COMP;
-        image: "bt_hilightw.png" COMP;
-        image: "tog_base.png" COMP;
-        image: "tog_dis_base.png" COMP;
-      }
-      parts {
-         part { name: "bg";
-           type: RECT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 1.0 0.0;
-              rel1.offset: -4 3;
-              rel2.offset: -4 -4;
-              align: 1.0 0.5;
-              min: 96 16;
-              max: 96 16;
-              aspect: 4.0 4.0;
-              aspect_preference: VERTICAL;
-              color: 255 255 255 255;
-           }
-        }
-         part { name: "clipper";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              color: 255 255 255 255;
-           }
-        }
-         part { name: "button";
-           type: RECT;
-           scale: 1;
-           clip_to: "clipper";
-           mouse_events: 1;
-           dragable {
-              x: 1 1 0;
-              y: 0 0 0;
-              confine: "bg";
-           }
-           description { state: "default" 0.0;
-              fixed: 1 1;
-              rel1.to: "bg";
-              rel2.to: "bg";
-              min: 16 16;
-              max: 16 16;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              color: 0 0 0 0;
-           }
-        }
-         part { name: "button_events";
-           type: RECT;
-           dragable {
-              events: "button";
-           }
-           description { state: "default" 0.0;
-              rel1.to_x: "bg";
-              rel1.offset: 0 0;
-              rel1.relative: 0.0 0.0;
-              rel2.to_x: "bg";
-              rel2.offset: -1 -1;
-              rel2.relative: 1.0 1.0;
-              color: 0 0 0 0;
-           }
-        }
-         part { name: "onrect";
-           type: RECT;
-           scale: 1;
-           clip_to: "clipper";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "button";
-              rel1.relative: -5.0 0.0;
-              rel2.to: "button";
-              rel2.relative: 0.0 1.0;
-              color: 0 0 0 0;
-           }
-        }
-         part { name: "offrect";
-           type: RECT;
-           scale: 1;
-           clip_to: "clipper";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "button";
-              rel1.relative: 1.0 0.0;
-              rel2.to: "button";
-              rel2.relative: 6.0 1.0;
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "togbase";
-           mouse_events:  0;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              rel1.to: "onrect";
-              rel2.to: "offrect";
-              image.normal: "tog_base.png";
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "tog_dis_base.png";
-           }
-        }
-         part { name: "elm.offtext";
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-               fixed: 1 1;
-              rel1.to_x: "offrect";
-              rel2.to_x: "offrect";
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 1;
-                 align:    0.5 0.5;
-                 text:     "OFF";
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-           }
-        }
-         part { name: "elm.ontext";
-           type: TEXT;
-           effect: SOFT_SHADOW;
-           mouse_events:  0;
-           scale: 1;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
+         part { name: "elm.dragable.hbar";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            dragable {
+               x: 1 1 0;
+               y: 0 0 0;
+               confine: "sb_hbar";
+            }
+            description { state: "default" 0.0;
                fixed: 1 1;
-              rel1.to_x: "onrect";
-              rel1.offset: 1 1;
-              rel2.to_x: "onrect";
-              rel2.offset: 0 0;
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 1;
-                 align:    0.5 0.5;
-                 text:     "ON";
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-              color3: 0 0 0 24;
-           }
-        }
-        part { name: "conf_over";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              rel1.offset: -1 -1;
-              rel1.to: "bg";
-              rel2.offset: 0 0;
-              rel2.to: "bg";
-              image {
-                 normal: "shelf_inset.png";
-                 border: 7 7 7 7;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-        }
-        part { name: "button0";
-           mouse_events:  0;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              rel1.to: "button2";
-              rel1.offset: -4 -4;
-              rel2.to: "button2";
-              rel2.offset: 3 3;
-              image {
-                 normal: "bt_bases.png";
-                 border: 11 11 11 11;
-              }
-               image.middle: SOLID;
-              color: 255 255 255 128;
-           }
-        }
-        part { name: "button2";
-           mouse_events:  0;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              rel1.to: "button";
-              rel1.offset: -2 -2;
-              rel2.to: "button";
-              rel2.offset: 1 1;
-              image {
-                 normal: "bt_basew.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-        }
-        part { name: "button3";
-           mouse_events:  0;
-           clip_to: "clipper";
-           description { state: "default" 0.0;
-              rel1.to: "button2";
-              rel2.to: "button2";
+               min: 17 10;
+               max: 99999 10;
+               rel1 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_hbar";
+               }
+               rel2 {
+                  relative: 0.5  0.5;
+                  offset:   0    0;
+                  to: "sb_hbar";
+               }
+               image {
+                  normal: "bt_sm_base2.png";
+                  border: 4 4 4 4;
+                  middle: SOLID;
+               }
+            }
+         }
+         part { name: "sb_hbar_over1";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.hbar";
                rel2.relative: 1.0 0.5;
-              image {
-                  normal: "bt_hilightw.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1.offset: 4 4;
-              rel2.relative: 0.0 1.0;
-              rel2.offset: 3 -5;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              rel2.offset: 4 -5;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-              visible: 1;
-              aspect: 1.0 1.0;
-           }
-        }
-         part { name: "elm.text";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 0 4;
-              rel2.to_x: "bg";
-              rel2.relative: 0.0 1.0;
-              rel2.offset: -5 -5;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.0 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
+               rel2.to: "elm.dragable.hbar";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "sb_hbar_over2";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.hbar";
+               rel2.to: "elm.dragable.hbar";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
       }
       programs {
-        program { name:   "drag_end";
-           signal: "mouse,up,1";
-           source: "button";
-           script {
-              new Float:dx, Float:dy;
-              get_drag(PART:"button", dx, dy);
-              if (dx > 0.5)
-                {
-                   set_drag(PART:"button", 1.0, 0.0);
-                   emit("elm,action,toggle,on", "");
-                }
-              else
-                {
-                   set_drag(PART:"button", 0.0, 0.0);
-                   emit("elm,action,toggle,off", "");
-                }
-           }
-        }
-        program { name: "toggle_on";
-           signal: "elm,state,toggle,on";
-           source: "elm";
-           script {
-              set_drag(PART:"button", 100.0, 0.0);
-           }
-        }
-        program { name: "toggle_off";
-           signal: "elm,state,toggle,off";
-           source: "elm";
-           script {
-              set_drag(PART:"button", 0.0, 0.0);
-           }
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.text";
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.text";
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "togbase";
-           target: "elm.offtext";
-           target: "elm.ontext";
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               set_state(PART:"sb_hbar_clip", "hidden", 0.0);
+               set_state(PART:"sb_vbar_clip", "hidden", 0.0);
+               set_int(sbvis_h, 0);
+               set_int(sbvis_v, 0);
+               set_int(sbalways_v, 0);
+               set_int(sbalways_h, 0);
+               set_int(sbvis_timer, 0);
+            }
+         }
+         program { name: "icon_show";
+            signal: "elm,action,show,icon";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "elm.swallow.icon";
+         }
+         program { name: "icon_hide";
+            signal: "elm,action,hide,icon";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.swallow.icon";
+         }
+         program { name: "end_show";
+            signal: "elm,action,show,end";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "end_hide";
+            signal: "elm,action,hide,end";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "vbar_show";
+            signal: "elm,action,show,vbar";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "sb_vbar_clip_master";
+         }
+         program { name: "vbar_hide";
+            signal: "elm,action,hide,vbar";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "sb_vbar_clip_master";
+         }
+         program { name: "vbar_show_always";
+            signal: "elm,action,show_always,vbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_v);
+               v |= get_int(sbalways_v);
+               if (!v) {
+                  set_int(sbalways_v, 1);
+                  emit("do-show-vbar", "");
+                  set_int(sbvis_v, 1);
+               }
+            }
+         }
+         program { name: "vbar_show_notalways";
+            signal: "elm,action,show_notalways,vbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbalways_v);
+               if (v) {
+                  set_int(sbalways_v, 0);
+                  v = get_int(sbvis_v);
+                  if (!v) {
+                     emit("do-hide-vbar", "");
+                     set_int(sbvis_v, 0);
+                  }
+               }
+            }
+         }
+         program { name: "sb_vbar_show";
+            signal: "do-show-vbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_vbar_clip";
+         }
+         program { name: "sb_vbar_hide";
+            signal: "do-hide-vbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_vbar_clip";
+         }
 
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
+         program { name: "hbar_show";
+            signal: "elm,action,show,hbar";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "sb_hbar_clip_master";
+         }
+         program { name: "hbar_hide";
+            signal: "elm,action,hide,hbar";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "sb_hbar_clip_master";
+         }
+         program { name: "hbar_show_always";
+            signal: "elm,action,show_always,hbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_h);
+               v |= get_int(sbalways_h);
+               if (!v) {
+                  set_int(sbalways_h, 1);
+                  emit("do-show-hbar", "");
+                  set_int(sbvis_h, 1);
+               }
+            }
+         }
+         program { name: "hbar_show_notalways";
+            signal: "elm,action,show_notalways,hbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbalways_h);
+               if (v) {
+                  set_int(sbalways_h, 0);
+                  v = get_int(sbvis_h);
+                  if (!v) {
+                     emit("do-hide-hbar", "");
+                     set_int(sbvis_h, 0);
+                  }
+               }
+            }
+         }
+         program { name: "sb_hbar_show";
+            signal: "do-show-hbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_hbar_clip";
+         }
+         program { name: "sb_hbar_hide";
+            signal: "do-hide-hbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 0.5;
+            target: "sb_hbar_clip";
+         }
 
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "default", 0.0);
-           }
+         program { name: "scroll";
+            signal: "elm,action,scroll";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_v);
+               v |= get_int(sbalways_v);
+               if (!v) {
+                  emit("do-show-vbar", "");
+                  set_int(sbvis_v, 1);
+               }
+               v = get_int(sbvis_h);
+               v |= get_int(sbalways_h);
+               if (!v) {
+                  emit("do-show-hbar", "");
+                  set_int(sbvis_h, 1);
+               }
+               v = get_int(sbvis_timer);
+               if (v > 0) cancel_timer(v);
+               v = timer(1.0, "timer0", 0);
+               set_int(sbvis_timer, v);
+            }
          }
-      }
-   }
 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/flipdigit/default";
-      images {
-         image: "flip_base.png" COMP;
-         image: "flip_base_shad.png" COMP;
-         image: "flip_shad.png" COMP;
-         image: "flip_0t.png" COMP;
-         image: "flip_0b.png" COMP;
-         image: "flip_1t.png" COMP;
-         image: "flip_1b.png" COMP;
-         image: "flip_2t.png" COMP;
-         image: "flip_2b.png" COMP;
-         image: "flip_3t.png" COMP;
-         image: "flip_3b.png" COMP;
-         image: "flip_4t.png" COMP;
-         image: "flip_4b.png" COMP;
-         image: "flip_5t.png" COMP;
-         image: "flip_5b.png" COMP;
-         image: "flip_6t.png" COMP;
-         image: "flip_6b.png" COMP;
-         image: "flip_7t.png" COMP;
-         image: "flip_7b.png" COMP;
-         image: "flip_8t.png" COMP;
-         image: "flip_8b.png" COMP;
-         image: "flip_9t.png" COMP;
-         image: "flip_9b.png" COMP;
-        image: "arrow_up.png" COMP;
-        image: "arrow_down.png" COMP;
-      }
-      script {
-        public v0_cur, v0_pre, v0_lock, v0_next;
-
-       public animator2(val, Float:pos) {
-         new st1[11], st2[11], v;
-
-         v = get_int(v0_cur);
-         snprintf(st1, 10, "%ih", v);
-         snprintf(st2, 10, "%i", v);
-         set_tween_state(PART:"bot", pos, st1, 0.0, st2, 0.0);
-         set_tween_state(PART:"sh", pos, "half", 0.0, "full", 0.0);
-         if (pos >= 1.0) {
-            set_state(PART:"sh", "default", 0.0);
-            set_int(v0_lock, 0);
-            v = get_int(v0_next);
-            if (v >= 0) {
-               set_int(v0_next, -1);
-               message(MSG_INT, 1, v);
-            }
-         }
-       }
-       public animator1(val, Float:pos) {
-         new st1[11], st2[11], v;
-
-         v = get_int(v0_pre);
-         snprintf(st1, 10, "%i", v);
-         snprintf(st2, 10, "%ih", v);
-         set_tween_state(PART:"top", pos, st1, 0.0, st2, 0.0);
-         set_tween_state(PART:"sh", pos, "default", 0.0, "half", 0.0);
-         if (pos >= 1.0) anim(0.2, "animator2", val);
-       }
-       public message(Msg_Type:type, id, ...) {
-         if ((type == MSG_INT) && (id == 1)) {
-            new value, v, buf[11];
-
-            value = getarg(2);
-            if (get_int(v0_lock) == 1) {
-               set_int(v0_next, value);
-               return;
-            }
-            v = get_int(v0_cur);
-            set_int(v0_pre, v);
-            set_int(v0_cur, value);
-            set_int(v0_lock, 1);
-            snprintf(buf, 10, "%i", get_int(v0_pre));
-            set_state(PART:"bot0", buf, 0.0);
-            snprintf(buf, 10, "%ih", get_int(v0_cur));
-            set_state(PART:"bot", buf, 0.0);
-            snprintf(buf, 10, "%i", get_int(v0_cur));
-            set_state(PART:"top0", buf, 0.0);
-            snprintf(buf, 10, "%i", get_int(v0_pre));
-            set_state(PART:"top", buf, 0.0);
-            set_state(PART:"sh", "default", 0.0);
-            anim(0.2, "animator1", 1);
-         }
-       }
-      }
-      parts {
-        part { name: "shad";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.offset: -4 -4;
-              rel1.to: "base";
-              rel2.offset: 3 3;
-              rel2.to: "base";
-              image {
-                  normal: "flip_base_shad.png";
-                 border: 8 8 8 8;
-              }
-           }
-        }
-        part { name: "base";
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              // FIXME 48x96 should be the native pixel design, right now
-              // its 80x160. fix int he artwork later
-              min: 24 48;
-               aspect: 0.5 0.5;
-//            max: 24 48;
-              image.normal: "flip_base.png";
-           }
-        }
-        part { name: "b";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "base";
-              rel1.relative: 0.0 0.5;
-              rel2.to: "base";
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "t";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "base";
-              rel2.to: "base";
-              rel2.relative: 1.0 0.5;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "bot0";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_0b.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_0b.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_1b.png";
-           }
-           description { state: "2" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_2b.png";
-           }
-           description { state: "3" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_3b.png";
-           }
-           description { state: "4" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_4b.png";
-           }
-           description { state: "5" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_5b.png";
-           }
-           description { state: "6" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_6b.png";
-           }
-           description { state: "7" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_7b.png";
-           }
-           description { state: "8" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_8b.png";
-           }
-           description { state: "9" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_9b.png";
-           }
-        }
-        part { name: "sh";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_shad.png";
-           }
-           description { state: "half" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 0.5;
-           }
-           description { state: "full" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "bot";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_0b.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_0b.png";
-           }
-           description { state: "0h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_0b.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_1b.png";
-           }
-           description { state: "1h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_1b.png";
-           }
-           description { state: "2" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_2b.png";
-           }
-           description { state: "2h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_2b.png";
-           }
-           description { state: "3" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_3b.png";
-           }
-           description { state: "3h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_3b.png";
-           }
-           description { state: "4" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_4b.png";
-           }
-           description { state: "4h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_4b.png";
-           }
-           description { state: "5" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_5b.png";
-           }
-           description { state: "5h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_5b.png";
-           }
-           description { state: "6" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_6b.png";
-           }
-           description { state: "6h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_6b.png";
-           }
-           description { state: "7" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_7b.png";
-           }
-           description { state: "7h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_7b.png";
-           }
-           description { state: "8" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_8b.png";
-           }
-           description { state: "8h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_8b.png";
-           }
-           description { state: "9" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_9b.png";
-           }
-           description { state: "9h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_9b.png";
-           }
-        }
-        part { name: "top0";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_0t.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_0t.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_1t.png";
-           }
-           description { state: "2" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_2t.png";
-           }
-           description { state: "3" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_3t.png";
-           }
-           description { state: "4" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_4t.png";
-           }
-           description { state: "5" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_5t.png";
-           }
-           description { state: "6" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_6t.png";
-           }
-           description { state: "7" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_7t.png";
-           }
-           description { state: "8" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_8t.png";
-           }
-           description { state: "9" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_9t.png";
-           }
-        }
-        part { name: "top";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_0t.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_0t.png";
-           }
-           description { state: "0h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_0t.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_1t.png";
-           }
-           description { state: "1h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_1t.png";
-           }
-           description { state: "2" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_2t.png";
-           }
-           description { state: "2h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_2t.png";
-           }
-           description { state: "3" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_3t.png";
-           }
-           description { state: "3h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_3t.png";
-           }
-           description { state: "4" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_4t.png";
-           }
-           description { state: "4h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_4t.png";
-           }
-           description { state: "5" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_5t.png";
-           }
-           description { state: "5h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_5t.png";
-           }
-           description { state: "6" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_6t.png";
-           }
-           description { state: "6h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_6t.png";
-           }
-           description { state: "7" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_7t.png";
-           }
-           description { state: "7h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_7t.png";
-           }
-           description { state: "8" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_8t.png";
-           }
-           description { state: "8h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_8t.png";
-           }
-           description { state: "9" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_9t.png";
-           }
-           description { state: "9h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_9t.png";
-           }
-        }
-        part { name: "atop";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 0.0;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "arrow_up.png";
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "abot";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 1.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "arrow_down.png";
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program { name: "load";
-           signal: "load";
-           source: "";
-           script {
-              set_int(v0_cur, 0);
-              set_int(v0_pre, 0);
-              set_int(v0_lock, 0);
-              set_int(v0_next, -1);
-           }
-        }
-        program { name: "edit_on";
-            signal: "elm,state,edit,on";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "atop";
-           target: "abot";
-           target: "t";
-           target: "b";
-        }
-        program { name: "edit_off";
-            signal: "elm,state,edit,off";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "atop";
-           target: "abot";
-           target: "t";
-           target: "b";
-        }
-        program { name: "up";
-           signal: "mouse,down,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,start" "";
-        }
-        program { name: "up,stop";
-           signal: "mouse,up,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,stop" "";
-        }
-        program { name: "down";
-           signal: "mouse,down,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,start" "";
-        }
-        program { name: "down,stop";
-           signal: "mouse,up,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,stop" "";
-        }
+         program { name: "highlight_show";
+            signal: "elm,action,focus_highlight,show";
+            source: "elm";
+            action: STATE_SET "enabled" 0.0;
+            transition: ACCELERATE 0.3;
+            target: "focus_highlight";
+            target: "conf_over";
+         }
+         program { name: "highlight_hide";
+            signal: "elm,action,focus_highlight,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.3;
+            target: "focus_highlight";
+            target: "conf_over";
+         }
       }
    }
 
 ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/flipampm/default";
-      images {
-         image: "flip_base.png" COMP;
-         image: "flip_base_shad.png" COMP;
-         image: "flip_shad.png" COMP;
-         image: "flip_amt.png" COMP;
-         image: "flip_amb.png" COMP;
-         image: "flip_pmt.png" COMP;
-         image: "flip_pmb.png" COMP;
-        image: "arrow_up.png" COMP;
-        image: "arrow_down.png" COMP;
+#define TEXT_SLIDE_DURATION     10
+
+   group { name: "elm/label/base/default";
+      data.item: "default_font_size" "10";
+      data.item: "min_font_size" "6";
+      data.item: "max_font_size" "60";
+      styles {
+         style { name: "textblock_style";
+            base: "font=Sans font_size=10 color=#000 text_class=label";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "tab" "\t";
+           }
+        }
+      parts {
+         part { name: "label.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "label.text.clip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1 { relative: 0 0; to: "label.swallow.background"; }
+               rel2 { relative: 1 1; to: "label.swallow.background"; }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 0;
+            scale: 1;
+            clip_to: "label.text.clip";
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+               text {
+                  style: "textblock_style";
+                  min: 0 1;
+               }
+            }
+         }
       }
-      script {
-        public v0_cur, v0_pre, v0_lock, v0_next;
+   }
 
-       public animator2(val, Float:pos) {
-         new st1[11], st2[11], v;
-
-         v = get_int(v0_cur);
-         snprintf(st1, 10, "%ih", v);
-         snprintf(st2, 10, "%i", v);
-         set_tween_state(PART:"bot", pos, st1, 0.0, st2, 0.0);
-         set_tween_state(PART:"sh", pos, "half", 0.0, "full", 0.0);
-         if (pos >= 1.0) {
-            set_state(PART:"sh", "default", 0.0);
-            set_int(v0_lock, 0);
-            v = get_int(v0_next);
-            if (v >= 0) {
-               set_int(v0_next, -1);
-               message(MSG_INT, 1, v);
-            }
-         }
-       }
-       public animator1(val, Float:pos) {
-         new st1[11], st2[11], v;
-
-         v = get_int(v0_pre);
-         snprintf(st1, 10, "%i", v);
-         snprintf(st2, 10, "%ih", v);
-         set_tween_state(PART:"top", pos, st1, 0.0, st2, 0.0);
-         set_tween_state(PART:"sh", pos, "default", 0.0, "half", 0.0);
-         if (pos >= 1.0) anim(0.2, "animator2", val);
-       }
-       public message(Msg_Type:type, id, ...) {
-         if ((type == MSG_INT) && (id == 1)) {
-            new value, v, buf[11];
-
-            value = getarg(2);
-            if (get_int(v0_lock) == 1) {
-               set_int(v0_next, value);
-               return;
-            }
-            v = get_int(v0_cur);
-            set_int(v0_pre, v);
-            set_int(v0_cur, value);
-            set_int(v0_lock, 1);
-            snprintf(buf, 10, "%i", get_int(v0_pre));
-            set_state(PART:"bot0", buf, 0.0);
-            snprintf(buf, 10, "%ih", get_int(v0_cur));
-            set_state(PART:"bot", buf, 0.0);
-            snprintf(buf, 10, "%i", get_int(v0_cur));
-            set_state(PART:"top0", buf, 0.0);
-            snprintf(buf, 10, "%i", get_int(v0_pre));
-            set_state(PART:"top", buf, 0.0);
-            set_state(PART:"sh", "default", 0.0);
-            anim(0.2, "animator1", 1);
-         }
-       }
+   group { name: "elm/label/base/marker";
+      data.item: "default_font_size" "10";
+      data.item: "min_font_size" "6";
+      data.item: "max_font_size" "60";
+      styles {
+         style { name: "textblock_style2";
+           base: "font=Sans:style=Bold font_size=10 align=center color=#fff wrap=word text_class=label";
+           tag:  "br" "\n";
+           tag:  "ps" "ps";
+           tag:  "hilight" "+ color=#ffff";
+           tag:  "b" "+ color=#ffff";
+           tag:  "tab" "\t";
+         }
       }
       parts {
-        part { name: "shad";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.offset: -4 -4;
-              rel1.to: "base";
-              rel2.offset: 3 3;
-              rel2.to: "base";
-              image {
-                  normal: "flip_base_shad.png";
-                 border: 8 8 8 8;
-              }
-           }
-        }
-        part { name: "base";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              // FIXME 48x96 should be the native pixel design, right now
-              // its 80x160. fix int he artwork later
-               aspect: 0.5 0.5;
-              min: 24 48;
-//            max: 24 48;
-              image.normal: "flip_base.png";
-           }
-        }
-        part { name: "b";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "base";
-              rel1.relative: 0.0 0.5;
-              rel2.to: "base";
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "t";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "base";
-              rel2.to: "base";
-              rel2.relative: 1.0 0.5;
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "bot0";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_amb.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_amb.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_pmb.png";
-           }
-        }
-        part { name: "sh";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_shad.png";
-           }
-           description { state: "half" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 0.5;
-           }
-           description { state: "full" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "bot";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_amb.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_amb.png";
-           }
-           description { state: "0h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_amb.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel2.relative: 1.0 1.0;
-              image.normal: "flip_pmb.png";
-           }
-           description { state: "1h" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_pmb.png";
-           }
-        }
-        part { name: "top0";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_amt.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_amt.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "flip_pmt.png";
-           }
-        }
-        part { name: "top";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_amt.png";
-           }
-           description { state: "0" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_amt.png";
-           }
-           description { state: "0h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_amt.png";
-           }
-           description { state: "1" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              rel1.relative: 0.0 0.0;
-              image.normal: "flip_pmt.png";
-           }
-           description { state: "1h" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-              image.normal: "flip_pmt.png";
-           }
-        }
-        part { name: "atop";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 0.0;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "arrow_up.png";
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "abot";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 1.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "arrow_down.png";
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program { name: "load";
-           signal: "load";
-           source: "";
-           script {
-              set_int(v0_cur, 0);
-              set_int(v0_pre, 0);
-              set_int(v0_lock, 0);
-              set_int(v0_next, -1);
-           }
-        }
-        program { name: "edit_on";
-            signal: "elm,state,edit,on";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "atop";
-           target: "abot";
-        }
-/*
-        program { name: "edit_off";
-            signal: "elm,state,edit,off";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "atop";
-           target: "abot";
-        }
- */
-        program { name: "up";
-           signal: "mouse,down,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,start" "";
-        }
-        program { name: "up,stop";
-           signal: "mouse,up,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,stop" "";
-        }
-        program { name: "down";
-           signal: "mouse,down,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,start" "";
-        }
-        program { name: "down,stop";
-           signal: "mouse,up,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,stop" "";
-        }
+         part { name: "label.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1 { relative: 0 0; to: "elm.text"; }
+               rel2 { relative: 1 1; to: "elm.text"; }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               text {
+                  style: "textblock_style2";
+                  min: 1 1;
+               }
+            }
+         }
       }
    }
 
-   ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/menu/item/default";
-       images {
-           image: "bt_base1.png" COMP;
-           image: "bt_base2.png" COMP;
-           image: "bt_hilight.png" COMP;
-           image: "bt_shine.png" COMP;
-           image: "bt_glow.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       script {
-            public menu_text_visible; //0:hide (default), 1:visible
-            public menu_disable; //0:enable, 1:disable
-       }
-       parts {
-           part { name: "item_image";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_base2.png";
-                       border: 7 7 7 7;
-                   }
-                   image.middle: SOLID;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 255;
-               }
-               description { state: "clicked" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   image.normal: "bt_base1.png";
-                   image.middle: SOLID;
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-               }
-           }
-           part { name: "item_image_disabled";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
-               }
+   group { name: "elm/label/base/slide_long";
+      data.item: "default_font_size" "10";
+      data.item: "min_font_size" "6";
+      data.item: "max_font_size" "60";
+
+      script {
+        public g_duration, g_stopslide, g_timer_id, g_anim_id;
+
+        public message(Msg_Type:type, id, ...) {
+           if ((type == MSG_FLOAT_SET) && (id == 0)) {
+              new Float:duration;
+              duration = getfarg(2);
+              set_float(g_duration, duration);
            }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   visible: 1;
-                   align: 0.0 0.5;
-                   rel1.offset: 4 4;
-                   rel2.offset: 3 -5;
-                   rel2.relative: 0.0 1.0;
-                   aspect: 1.0 1.0;
-                   aspect_preference: VERTICAL;
-                   rel2.offset: 4 -5;
-               }
+        }
+        public slide_to_end_anim(val, Float:pos) {
+           new stopflag;
+           new id;
+           stopflag = get_int(g_stopslide);
+           if (stopflag == 1) return;
+           set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
+           if (pos >= 1.0) {
+              id = timer(0.5, "slide_to_begin", 1);
+              set_int(g_timer_id, id);
            }
-           part {
-               name:          "elm.text";
-               type:          TEXT;
-               mouse_events:  0;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   rel1.to_x: "elm.swallow.content";
-                   rel1.relative: 1.0 0.0;
-                   rel1.offset: 5 7;
-                   rel2.offset: -10 -8;
-                   color: 0 0 0 255;
-                   text {
-                       font:     "Sans,Edje-Vera";
-                       size:     10;
-                       min:      1 1;
-                       align:    0.0 0.5;
-                       text_class: "menu_item";
-                   }
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   text.min: 1 1;
-               }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   color: 254 254 254 255;
-               }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-               }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   color: 0 0 0 128;
-               }
-           }
-           part {        name: "over1";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_hilight.png";
-                       border: 7 7 7 0;
-                   }
-               }
-               description { state: "visible" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-               }
-           }
-           part {        name: "over_disabled";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
-               }
-           }
-           part { name: "over2";
-               mouse_events: 1;
-               repeat_events: 1;
-               ignore_flags: ON_HOLD;
-               description { state: "default" 0.0;
-                   image {
-                       normal: "bt_shine.png";
-                       border: 7 7 7 7;
-                   }
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   visible: 0;
-               }
-           }
-           part { name: "over3";
-               mouse_events: 1;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_glow.png";
-                       border: 12 12 12 12;
-                   }
-                   fill.smooth : 0;
-               }
-               description { state: "clicked" 0.0;
-                   inherit:  "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+        }
+        public slide_to_end() {
+           new stopflag;
+           new id;
+           new Float:duration;
+           stopflag = get_int(g_stopslide);
+           if (stopflag == 1) return;
+           duration = get_float(g_duration);
+           id = anim(duration, "slide_to_end_anim", 1);
+           set_int(g_anim_id, id);
+        }
+        public slide_to_begin() {
+           new stopflag;
+           new id;
+           stopflag = get_int(g_stopslide);
+           if (stopflag == 1) return;
+           set_state(PART:"elm.text", "slide_begin", 0.0);
+           id = timer(0.5, "slide_to_end", 1);
+           set_int(g_timer_id, id);
+        }
+        public start_slide() {
+           set_int(g_stopslide, 0);
+           set_state(PART:"elm.text", "slide_begin", 0.0);
+           slide_to_end();
+        }
+        public stop_slide() {
+           new id;
+           set_int(g_stopslide, 1);
+           id = get_int(g_anim_id);
+           cancel_anim(id);
+           id = get_int(g_timer_id);
+           cancel_timer(id);
+           set_state(PART:"elm.text", "default", 0.0);
+        }
+      }
+
+      parts {
+         part { name: "label.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "label.text.clip";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 { relative: 0 0; to: "label.swallow.background"; }
+               rel2 { relative: 1 1; to: "label.swallow.background"; }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 0;
+            scale: 1;
+            clip_to: "label.text.clip";
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 0.0 0.0;
+               text {
+                  style: "textblock_style";
+                  min: 1 1;
                }
-           }
-           part { name: "disabler";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   visible: 0;
+            }
+            description { state: "slide_end" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 1.0;
+               align: 1.0 0.0;
+            }
+            description { state: "slide_begin" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 0.0 0.0;
+            }
+         }
+       }
+       programs {
+          program { name: "start_slide";
+             source: "elm";
+             signal: "elm,state,slide,start";
+             script
+               {
+                  start_slide();
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
+          }
+          program { name: "stop_slide";
+             source: "elm";
+             signal: "elm,state,slide,stop";
+             script
+               {
+                  stop_slide();
                }
-           }
+          }
        }
-       programs {
-          //
-           program {
-               name:   "item_mouse_in";
-               signal: "mouse,in";
-               source: "over2";
-               action: SIGNAL_EMIT "elm,action,activate" "";
-               after: "item_mouse_in_2";
-               after: "item_mouse_in_3";
-           }
-           program {
-               name:   "item_mouse_in_2";
-               transition: DECELERATE 0.5;
-               script {
-                   new v, d;
-                   v = get_int(menu_text_visible);
-                   d = get_int(menu_disable);
+   }
 
-                   if (v==1 && d==0)
-                        run_program(PROGRAM:"selected_text");
-               }
-           }
-           program {
-               name:   "item_mouse_in_3";
-               action : STATE_SET "visible" 0.0;
-               target: "item_image";
-               target: "over1";
-               transition: DECELERATE 0.5;
-           }
-           program {
-               name:   "selected_text";
-               action: STATE_SET "selected" 0.0;
-               target: "elm.text";
-               transition: DECELERATE 0.5;
-           }
-           //
 
-           //
-           program {
-               name:   "item_mouse_out";
-               signal: "mouse,out";
-               source: "over2";
-               after: "item_mouse_out_2";
-               after: "item_mouse_out_3";
-           }
-           program {
-               name:   "item_mouse_out_2";
-               transition: DECELERATE 0.5;
-               script {
-                   new v, d;
-                   v = get_int(menu_text_visible);
-                   d = get_int(menu_disable);
+   group { name: "elm/label/base/slide_short";
+      data.item: "default_font_size" "10";
+      data.item: "min_font_size" "6";
+      data.item: "max_font_size" "60";
 
-                   if (v==1 && d==0)
-                        run_program(PROGRAM:"visible_text");
-               }
-           }
-           program {
-               name:   "item_mouse_out_3";
-               action: STATE_SET "default" 0.0;
-               target: "item_image";
-               target: "over1";
-               transition: DECELERATE 0.5;
-           }
-           program {
-               name:   "visible_text";
-               action: STATE_SET "visible" 0.0;
-               target: "elm.text";
-               transition: DECELERATE 0.5;
-           }
-           //
+      script {
+         public g_duration, g_stopslide, g_timer_id, g_anim_id;
 
-           program {
-               name:   "item_unclick";
-               signal: "mouse,up,1";
-               source: "over2";
-               action: STATE_SET "visible" 0.0;
-               target: "item_image";
-           }
-           program {
-               name:   "item_click2";
-               signal: "mouse,down,1";
-               source: "over3";
-               action: STATE_SET "clicked" 0.0;
-               target: "over3";
-           }
-           program {
-               name:   "item_unclick2";
-               signal: "mouse,up,1";
-               source: "over3";
-               action: STATE_SET "default" 0.0;
-               transition: DECELERATE 0.5;
-               target: "over3";
-           }
-           program {
-               name:   "item_unclick3";
-               signal: "mouse,up,1";
-               source: "over2";
-               action: SIGNAL_EMIT "elm,action,click" "";
-           }
-           program { name: "text_show";
-               signal: "elm,state,text,visible";
-               source: "elm";
-               script {
-                   set_int(menu_text_visible, 1);
-                   set_state(PART:"elm.text", "visible", 0.0);
-               }
-           }
-           program { name: "text_hide";
-               signal: "elm,state,text,hidden";
-               source: "elm";
-               script {
-                   set_int(menu_text_visible, 0);
-                   set_state(PART:"elm.text", "default", 0.0);
-               }
-           }
-           program { name: "disable";
-               signal: "elm,state,disabled";
-               source: "elm";
-               action: STATE_SET "disabled" 0.0;
-               target: "item_image";
-               target: "item_image_disabled";
-               target: "over1";
-               target: "over2";
-               target: "over_disabled";
-               target: "disabler";
-               after: "disable_text";
-           }
-           program { name: "disable_text";
-               script {
-                   new v;
-                   v = get_int(menu_text_visible);
-                   if (v==1)
-                    set_state(PART:"elm.text", "disabled_visible", 0.0);
-                   else if (v==0)
-                    set_state(PART:"elm.text", "disabled", 0.0);
-                   set_int(menu_disable, 1);
-               }
-           }
-           program { name: "enable";
-               signal: "elm,state,enabled";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "item_image";
-               target: "item_image_disabled";
-               target: "over1";
-               target: "over2";
-               target: "over_disabled";
-               target: "disabler";
-               after: "enable_text";
-           }
-           program { name: "enable_text";
-               script {
-                   new v;
-                   v = get_int(menu_text_visible);
-                   if (v==1)
-                    set_state(PART:"elm.text", "visible", 0.0);
-                   else  if (v==0)
-                    set_state(PART:"elm.text", "default", 0.0);
-                   set_int(menu_disable, 0);
+         public message(Msg_Type:type, id, ...) {
+            if ((type == MSG_FLOAT_SET) && (id == 0)) {
+               new Float:duration;
+               duration = getfarg(2);
+               set_float(g_duration, duration);
+            }
+         }
+         public slide_to_end_anim(val, Float:pos) {
+            new stopflag;
+            new id;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
+            if (pos >= 1.0) {
+               id = timer(0.5, "slide_to_begin", 1);
+               set_int(g_timer_id, id);
+            }
+         }
+         public slide_to_end() {
+            new stopflag;
+            new id;
+            new Float:duration;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            duration = get_float(g_duration);
+            id = anim(duration, "slide_to_end_anim", 1);
+            set_int(g_anim_id, id);
+         }
+         public slide_to_begin() {
+            new stopflag;
+            new id;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            set_state(PART:"elm.text", "slide_begin", 0.0);
+            id = timer(0.5, "slide_to_end", 1);
+            set_int(g_timer_id, id);
+         }
+         public start_slide() {
+            set_int(g_stopslide, 0);
+            set_state(PART:"elm.text", "slide_begin", 0.0);
+            slide_to_end();
+         }
+         public stop_slide() {
+            new id;
+            set_int(g_stopslide, 1);
+            id = get_int(g_anim_id);
+            cancel_anim(id);
+            id = get_int(g_timer_id);
+            cancel_timer(id);
+            set_state(PART:"elm.text", "default", 0.0);
+         }
+      }
+
+      parts {
+         part { name: "label.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "label.text.clip";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 { relative: 0 0; to: "label.swallow.background"; }
+               rel2 { relative: 1 1; to: "label.swallow.background"; }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 0;
+            scale: 1;
+            clip_to: "label.text.clip";
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 0.0 0.0;
+               text {
+                  style: "textblock_style";
+                  min: 1 1;
                }
-           }
-       }
+            }
+            description { state: "slide_end" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 1.0 0.0;
+            }
+            description { state: "slide_begin" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 1.0;
+               align: 0.0 0.0;
+            }
+         }
+      }
+      programs {
+         program { name: "start_slide";
+            source: "elm";
+            signal: "elm,state,slide,start";
+            script
+              {
+                 start_slide();
+              }
+         }
+         program { name: "stop_slide";
+            source: "elm";
+            signal: "elm,state,slide,stop";
+            script
+              {
+                 stop_slide();
+              }
+         }
+      }
    }
 
-   group { name: "elm/menu/item_with_submenu/default";
-       images {
-           image: "bt_base1.png" COMP;
-           image: "bt_base2.png" COMP;
-           image: "bt_hilight.png" COMP;
-           image: "bt_shine.png" COMP;
-           image: "bt_glow.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-           image: "arrow_right.png" COMP;
-       }
-       script {
-            public menu_text_visible; //0:hide (default), 1:visible
-            public menu_disable; //0:enable, 1:disable
-       }
-       parts {
-           part { name: "item_image";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_base2.png";
-                       border: 7 7 7 7;
-                   }
-                   image.middle: SOLID;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 255;
-               }
-               description { state: "clicked" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   image.normal: "bt_base1.png";
-                   image.middle: SOLID;
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-               }
-           }
-           part { name: "item_image_disabled";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
-               }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
-               }
-           }
-           part { name: "arrow";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 255;
-                   align: 1.0 0.5;
-                   aspect: 1 1;
-                   aspect_preference: BOTH;
-                   image {
-                       normal: "arrow_right.png";
-                   }
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   visible: 1;
-                   align: 0.0 0.5;
-                   rel1.offset: 4 4;
-                   rel2.offset: 3 -5;
-                   rel2.relative: 0.0 1.0;
-                   aspect: 1.0 1.0;
-                   aspect_preference: VERTICAL;
-                   rel2.offset: 4 -5;
-               }
-           }
-           part {
-               name:          "elm.text";
-               type:          TEXT;
-               mouse_events:  0;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   rel1.to_x: "elm.swallow.content";
-                   rel1.relative: 1.0 0.0;
-                   rel1.offset: 5 7;
-                   rel2.offset: -10 -8;
-                   color: 0 0 0 255;
-                   text {
-                       font:     "Sans,Edje-Vera";
-                       size:     10;
-                       min:      1 1;
-                       align:    0.0 0.5;
-                       text_class: "menu_item";
-                   }
+   group { name: "elm/label/base/slide_bounce";
+      data.item: "default_font_size" "10";
+      data.item: "min_font_size" "6";
+      data.item: "max_font_size" "60";
+
+      script {
+         public g_duration, g_stopslide, g_timer_id, g_anim_id;
+
+         public message(Msg_Type:type, id, ...) {
+            if ((type == MSG_FLOAT_SET) && (id == 0)) {
+               new Float:duration;
+               duration = getfarg(2);
+               set_float(g_duration, duration);
+            }
+         }
+         public slide_to_end_anim(val, Float:pos) {
+            new stopflag;
+            new id;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0);
+            if (pos >= 1.0) {
+               id = timer(0.5, "slide_to_begin", 1);
+               set_int(g_timer_id, id);
+            }
+         }
+         public slide_to_end() {
+            new stopflag;
+            new id;
+            new Float:duration;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            duration = get_float(g_duration);
+            id = anim(duration, "slide_to_end_anim", 1);
+            set_int(g_anim_id, id);
+         }
+         public slide_to_begin_anim(val, Float:pos) {
+            new stopflag;
+            new id;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            set_tween_state(PART:"elm.text", pos, "slide_end", 0.0, "slide_begin", 0.0);
+            if (pos >= 1.0) {
+               id = timer(0.5, "slide_to_end", 1);
+               set_int(g_timer_id, id);
+            }
+         }
+         public slide_to_begin() {
+            new stopflag;
+            new id;
+            new Float:duration;
+            stopflag = get_int(g_stopslide);
+            if (stopflag == 1) return;
+            duration = get_float(g_duration);
+            id = anim(duration, "slide_to_begin_anim", 1);
+            set_int(g_anim_id, id);
+         }
+         public start_slide() {
+            set_int(g_stopslide, 0);
+            set_state(PART:"elm.text", "slide_begin", 0.0);
+            slide_to_end();
+         }
+         public stop_slide() {
+            new id;
+            set_int(g_stopslide, 1);
+            id = get_int(g_anim_id);
+            cancel_anim(id);
+            id = get_int(g_timer_id);
+            cancel_timer(id);
+            set_state(PART:"elm.text", "default", 0.0);
+         }
+      }
+
+      parts {
+         part { name: "label.swallow.background";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "label.text.clip";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 { relative: 0 0; to: "label.swallow.background"; }
+               rel2 { relative: 1 1; to: "label.swallow.background"; }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 0;
+            scale: 1;
+            clip_to: "label.text.clip";
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 0.0 0.0;
+               text {
+                  style: "textblock_style";
+                  min: 1 1;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   text.min: 1 1;
+            }
+            description { state: "slide_end" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 1.0 1.0;
+               align: 1.0 0.0;
+            }
+            description { state: "slide_begin" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 1.0;
+               align: 0.0 0.0;
+            }
+         }
+      }
+      programs {
+         program { name: "start_slide";
+            source: "elm";
+            signal: "elm,state,slide,start";
+            script
+              {
+                 start_slide();
+              }
+         }
+         program { name: "stop_slide";
+            source: "elm";
+            signal: "elm,state,slide,stop";
+            script
+              {
+                 stop_slide();
+              }
+         }
+      }
+   }
+
+
+///////////////////////////////////////////////////////////////////////////////
+
+   group { name: "elm/button/base/default";
+      images {
+         image: "bt_base1.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "bt_glow.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "button_image";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               min: 15 15;
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   color: 254 254 254 255;
+               image.middle: SOLID;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "bt_base1.png";
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1.offset: 4 4;
+               rel2.offset: 3 -5;
+               rel2.relative: 0.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               fixed: 1 0;
+               visible: 1;
+               aspect: 1.0 1.0;
+//               aspect_preference: VERTICAL;
+               rel2.offset: 4 -5;
+            }
+            description { state: "icononly" 0.0;
+               inherit: "default" 0.0;
+               fixed: 0 0;
+               visible: 1;
+               align: 0.5 0.5;
+//               aspect: 1.0 1.0;
+               rel2.offset: -5 -5;
+               rel2.relative: 1.0 1.0;
+//               aspect_preference: VERTICAL;
+            }
+         }
+         part {
+            name:          "elm.text";
+            type:          TEXT;
+            effect:        SOFT_SHADOW;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 4;
+               rel2.offset: -5 -5;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 0;
+                  align:    0.5 0.5;
+                  text_class: "button";
                }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   inherit: "visible" 0.0;
-                   color: 0 0 0 128;
-               }
-           }
-           part {        name: "over1";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_hilight.png";
-                       border: 7 7 7 0;
-                   }
-               }
-               description { state: "visible" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
+            }
+         }
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
                }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
-           }
-           part { name: "over_disabled";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
+            ignore_flags: ON_HOLD;
+            description { state: "default" 0.0;
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
                }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   color: 255 255 255 255;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "over3";
+            mouse_events: 1;
+            repeat_events: 1;
+            description { state: "default" 0.0;
+               color: 255 255 255 0;
+               image {
+                  normal: "bt_glow.png";
+                  border: 12 12 12 12;
                }
-           }
-           part { name: "over2";
-               mouse_events: 1;
-               repeat_events: 1;
-               ignore_flags: ON_HOLD;
-               description { state: "default" 0.0;
-                   image {
-                       normal: "bt_shine.png";
-                       border: 7 7 7 7;
-                   }
+               fill.smooth : 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit:  "default" 0.0;
+               color: 255 255 255 255;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+      }
+      programs {
+         program {
+            name:   "button_click";
+            signal: "mouse,down,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,press" "";
+            after: "button_click_anim";
+         }
+         program {
+            name:   "button_click_anim";
+            action: STATE_SET "clicked" 0.0;
+            target: "button_image";
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: SIGNAL_EMIT "elm,action,unpress" "";
+            after: "button_unclick_anim";
+         }
+         program {
+            name:   "button_pressed_anim";
+            signal: "elm,anim,activate";
+            source: "elm";
+            action: STATE_SET "clicked" 0.0;
+            target: "button_image";
+            target: "over3";
+            after: "button_unpressed_anim";
+         }
+         program {
+            name:   "button_unpressed_anim";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "button_image";
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick_anim";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+         }
+         program {
+            name:   "button_click2";
+            signal: "mouse,down,1";
+            source: "over3";
+            action: STATE_SET "clicked" 0.0;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick2";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,clicked,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "icononly"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               set_state(PART:"elm.text", "visible", 0.0);
+            }
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+               set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+            }
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
+      }
+   }
+
+   group { name: "elm/button/base/hoversel_vertical/default";
+      alias: "elm/button/base/hoversel_vertical/entry";
+      alias: "elm/button/base/hoversel_horizontal/default";
+      alias: "elm/button/base/hoversel_horizontal/entry";
+      images {
+         image: "bt_base1.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "bt_glow.png" COMP;
+         image: "updown.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "button_image";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
                }
-               description { state: "disabled" 0.0;
-                   inherit:  "default" 0.0;
-                   visible: 0;
+               image.middle: SOLID;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "bt_base1.png";
+               image.middle: SOLID;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-           }
-           part { name: "over3";
-               mouse_events: 1;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "bt_glow.png";
-                       border: 12 12 12 12;
-                   }
-                   fill.smooth : 0;
+            }
+         }
+         part { name: "arrow";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               image.normal: "updown.png";
+               aspect: 0.6666666666 0.6666666666;
+               aspect_preference: VERTICAL;
+               rel1.offset: 6 7;
+               rel2.offset: 6 -7;
+               rel2.relative: 0.0 1.0;
+               align: 0.0 0.5;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "arrow";
+                  offset: 2 4;
+                  relative: 1.0 0.0;
                }
-               description { state: "clicked" 0.0;
-                   inherit:  "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+               rel2 {
+                  to_x: "arrow";
+                  offset: 1 -5;
+                  relative: 1.0 1.0;
                }
-           }
-           part { name: "disabler";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   visible: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               fixed: 0 0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel2.offset: 2 -5;
+            }
+            description { state: "icononly" 0.0;
+               inherit: "default" 0.0;
+               fixed: 0 0;
+               visible: 1;
+               align: 0.5 0.5;
+               aspect: 1.0 1.0;
+               rel1 {
+                  to_x: "button_image";
+                  offset: -5 -5;
+                  relative: 1.0 1.0;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
+               aspect_preference: VERTICAL;
+            }
+         }
+         part {
+            name:          "elm.text";
+            type:          TEXT;
+            effect:        SOFT_SHADOW;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 4;
+               rel2.offset: -5 -5;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 0;
+                  align:    0.5 0.5;
+                  text_class: "button";
                }
-           }
-       }
-       programs {
-           //
-           program {
-               name:   "item_mouse_in";
-               signal: "mouse,in";
-               source: "over2";
-               action: SIGNAL_EMIT "elm,action,activate" "";
-               after: "item_mouse_in_2";
-               after: "item_mouse_in_3";
-           }
-           program {
-               name:   "item_mouse_in_2";
-               transition: DECELERATE 0.5;
-               script {
-                   new v, d;
-                   v = get_int(menu_text_visible);
-                   d = get_int(menu_disable);
-
-                   if (v==1 && d==0)
-                        run_program(PROGRAM:"selected_text");
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
+            }
+         }
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
                }
-           }
-           program {
-               name:   "item_mouse_in_3";
-               action : STATE_SET "visible" 0.0;
-               target: "item_image";
-               target: "over1";
-               transition: DECELERATE 0.5;
-           }
-           program {
-               name:   "selected_text";
-               action: STATE_SET "selected" 0.0;
-               target: "elm.text";
-               transition: DECELERATE 0.5;
-           }
-           //
-
-           //
-           program {
-               name:   "item_mouse_out";
-               signal: "mouse,out";
-               source: "over2";
-               after: "item_mouse_out_2";
-               after: "item_mouse_out_3";
-           }
-           program {
-               name:   "item_mouse_out_2";
-               transition: DECELERATE 0.5;
-               script {
-                   new v, d;
-                   v = get_int(menu_text_visible);
-                   d = get_int(menu_disable);
-
-                   if (v==1 && d==0)
-                        run_program(PROGRAM:"visible_text");
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
-           }
-           program {
-               name:   "item_mouse_out_3";
-               action: STATE_SET "default" 0.0;
-               target: "item_image";
-               target: "over1";
-               transition: DECELERATE 0.5;
-           }
-           program {
-               name:   "visible_text";
-               action: STATE_SET "visible" 0.0;
-               target: "elm.text";
-               transition: DECELERATE 0.5;
-           }
-           //
-
-           program {
-               name:   "item_unclick";
-               signal: "mouse,up,1";
-               source: "over2";
-               action: STATE_SET "visible" 0.0;
-               target: "item_image";
-           }
-           program {
-               name:   "item_click2";
-               signal: "mouse,down,1";
-               source: "over3";
-               action: STATE_SET "clicked" 0.0;
-               target: "over3";
-           }
-           program {
-               name:   "item_unclick2";
-               signal: "mouse,up,1";
-               source: "over3";
-               action: STATE_SET "default" 0.0;
-               transition: DECELERATE 0.5;
-               target: "over3";
-           }
-           program {
-               name:   "item_unclick3";
-               signal: "mouse,up,1";
-               source: "over2";
-               action: SIGNAL_EMIT "elm,action,click" "";
-           }
-           program {
-               name:   "menu_open";
-               signal: "mouse,in";
-               source: "over2";
-               action: SIGNAL_EMIT "elm,action,open" "";
-           }
-            program { name: "text_show";
-               signal: "elm,state,text,visible";
-               source: "elm";
-               script {
-                   set_int(menu_text_visible, 1);
-                   set_state(PART:"elm.text", "visible", 0.0);
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
+            ignore_flags: ON_HOLD;
+            description { state: "default" 0.0;
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
                }
-           }
-           program { name: "text_hide";
-               signal: "elm,state,text,hidden";
-               source: "elm";
-               script {
-                   set_int(menu_text_visible, 0);
-                   set_state(PART:"elm.text", "default", 0.0);
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "over3";
+            mouse_events: 1;
+            repeat_events: 1;
+            description { state: "default" 0.0;
+               color: 255 255 255 0;
+               image {
+                  normal: "bt_glow.png";
+                  border: 12 12 12 12;
                }
-           }
-           program { name: "disable";
-               signal: "elm,state,disabled";
-               source: "elm";
-               action: STATE_SET "disabled" 0.0;
-               target: "item_image";
-               target: "item_image_disabled";
-               target: "over1";
-               target: "over2";
-               target: "over_disabled";
-               target: "disabler";
-               after: "disable_text";
-           }
-           program { name: "disable_text";
-               script {
-                   new st[31];
-                   new Float:vl;
-                   get_state(PART:"elm.text", st, 30, vl);
-                   if (!strcmp(st, "visible"))
-                   set_state(PART:"elm.text", "disabled_visible", 0.0);
-                   else if (!strcmp(st, "default"))
-                   set_state(PART:"elm.text", "disabled", 0.0);
-               }
-           }
-           program { name: "enable";
-               signal: "elm,state,enabled";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "item_image";
-               target: "item_image_disabled";
-               target: "over1";
-               target: "over2";
-               target: "over_disabled";
-               target: "disabler";
-               after: "enable_text";
-           }
-           program { name: "enable_text";
-               script {
-                   new v;
-                   v = get_int(menu_text_visible);
-                   if (v==1)
-                    set_state(PART:"elm.text", "visible", 0.0);
-                   else  if (v==0)
-                    set_state(PART:"elm.text", "default", 0.0);
-                   set_int(menu_disable, 0);
-               }
-           }
-       }
-   }
-
-   group { name: "elm/menu/separator/default";
-       images {
-           image: "separator_h.png" COMP;
-       }
-       parts {
-           part { name: "separator"; // separator group
-               description { state: "default" 0.0;
-                   min: 2 2;
-                   rel1.offset: 4 4;
-                   rel2.offset: -5 -5;
-                   image {
-                       normal: "separator_h.png";
-                   }
-                   fill {
-                       smooth: 0;
-                   }
-               }
-           }
-       }
-   }
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/base-all/default";
-      parts {
-        part { name: "d0";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.0000000 0.0;
-              rel2.relative: 0.1250000 1.0;
-           }
-        }
-        part { name: "d1";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.1250000 0.0;
-              rel2.relative: 0.2500000 1.0;
-           }
-        }
-        part { name: "c0";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.2500000 0.0;
-              rel2.relative: 0.3125000 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        part { name: "d2";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.3125000 0.0;
-              rel2.relative: 0.4375000 1.0;
-           }
-        }
-        part { name: "d3";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.4375000 0.0;
-              rel2.relative: 0.5625000 1.0;
-           }
-        }
-        // (if seconds)
-        part { name: "c1";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.5625000 0.0;
-              rel2.relative: 0.6250000 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        // (if seconds)
-        part { name: "d4";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.6250000 0.0;
-              rel2.relative: 0.7500000 1.0;
-           }
-        }
-        // (if seconds)
-        part { name: "d5";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.7500000 0.0;
-              rel2.relative: 0.8750000 1.0;
-           }
-        }
-        // (if am_pm)
-        part { name: "ampm";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.8750000 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
+               fill.smooth : 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit:  "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
       }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/base-seconds/default";
-      parts {
-        part { name: "d0";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.000000000 0.0;
-              rel2.relative: 0.142857143 1.0;
-           }
-        }
-        part { name: "d1";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.142857143 0.0;
-              rel2.relative: 0.285714286 1.0;
-           }
-        }
-        part { name: "c0";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.285714286 0.0;
-              rel2.relative: 0.357142857 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        part { name: "d2";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.357142857 0.0;
-              rel2.relative: 0.500000000 1.0;
-           }
-        }
-        part { name: "d3";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.500000000 0.0;
-              rel2.relative: 0.642857143 1.0;
-           }
-        }
-        // (if seconds)
-        part { name: "c1";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.642857143 0.0;
-              rel2.relative: 0.714285714 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        // (if seconds)
-        part { name: "d4";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.714285714 0.0;
-              rel2.relative: 0.857142857 1.0;
-           }
-        }
-        // (if seconds)
-        part { name: "d5";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.857142857 0.0;
-              rel2.relative: 1.000000000 1.0;
-           }
-        }
+      programs {
+         program {
+            name:   "button_click";
+            signal: "mouse,down,1";
+            source: "over2";
+            action: STATE_SET "clicked" 0.0;
+            target: "button_image";
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+         }
+         program {
+            name:   "button_click2";
+            signal: "mouse,down,1";
+            source: "over3";
+            action: STATE_SET "clicked" 0.0;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick2";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "icononly"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               set_state(PART:"elm.text", "visible", 0.0);
+            }
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+               set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+            }
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
       }
    }
 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/base-am_pm/default";
-      parts {
-        part { name: "d0";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.000000000 0.0;
-              rel2.relative: 0.181818182 1.0;
-           }
-        }
-        part { name: "d1";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.181818182 0.0;
-              rel2.relative: 0.363636364 1.0;
-           }
-        }
-        part { name: "c0";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.363636364 0.0;
-              rel2.relative: 0.454545455 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        part { name: "d2";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.454545455 0.0;
-              rel2.relative: 0.636363636 1.0;
-           }
-        }
-        part { name: "d3";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.636363636 0.0;
-              rel2.relative: 0.818181818 1.0;
-           }
-        }
-        // (if am_pm)
-        part { name: "ampm";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.818181818 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
+   group { name: "elm/button/base/hoversel_vertical_entry/default";
+      alias: "elm/button/base/hoversel_vertical_entry/entry";
+      alias: "elm/button/base/hoversel_horizontal_entry/default";
+      alias: "elm/button/base/hoversel_horizontal_entry/entry";
+      images {
+         image: "hoversel_entry_bg.png" COMP;
       }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/clock/base/default";
       parts {
-        part { name: "d0";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.000000000 0.0;
-              rel2.relative: 0.222222222 1.0;
-           }
-        }
-        part { name: "d1";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.222222222 0.0;
-              rel2.relative: 0.444444444 1.0;
-           }
-        }
-        part { name: "c0";
-           type: SWALLOW;
-           type: TEXT;
-           mouse_events:  0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.relative: 0.444444444 0.0;
-              rel2.relative: 0.555555556 1.0;
-              color: 0 0 0 255;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 text:     ":";
-                 size:     10;
-                 min:      1 1;
-                 align:    0.5 0.5;
-              }
-           }
-        }
-        part { name: "d2";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.555555556 0.0;
-              rel2.relative: 0.777777778 1.0;
-           }
-        }
-        part { name: "d3";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.relative: 0.777777778 0.0;
-              rel2.relative: 1.000000000 1.0;
-           }
-        }
-      }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/frame/base/default";
-       images {
-           image: "frame_1.png" COMP;
-           image: "frame_2.png" COMP;
-           image: "dia_grad.png" COMP;
-       }
-       parts {
-           part { name: "base0";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "dia_grad.png";
-                   rel1.to: "over";
-                   rel2.to: "over";
-                   fill {
-                       smooth: 0;
-                       size {
-                           relative: 0.0 1.0;
-                           offset: 64 0;
-                       }
-                   }
-               }
-           }
-           part { name: "base";
-               mouse_events:  0;
-               description { state:    "default" 0.0;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 9 9;
-                   image {
-                       normal: "frame_2.png";
-                       border: 5 5 32 26;
-                       middle: 0;
-                   }
-                   fill.smooth : 0;
-               }
-           }
-           part { name: "elm.text";
-               type: TEXT;
-               mouse_events:   0;
-               scale: 1;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   fixed: 0 1;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: 6 6;
-                   }
-                   rel2 {
-                       relative: 1.0 0.0;
-                       offset: -7 6;
-                   }
-                   color: 0 0 0 64;
-                   text {
-                       font: "Sans:style=Bold,Edje-Vera-Bold";
-                       size: 10;
-                       min: 1 1;
-                       max: 1 1;
-                       align: 0.0 0.0;
-                   }
-               }
-           }
-           part { name: "over";
-               mouse_events:  0;
-               description { state:    "default" 0.0;
-                   rel1.offset: 4 4;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 5 5;
-                   image {
-                       normal: "frame_1.png";
-                       border: 2 2 28 22;
-                       middle: 0;
-                   }
-                   fill.smooth : 0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   rel1 {
-                       to_y: "elm.text";
-                       relative: 0.0 1.0;
-                       offset: 8 2;
-                   }
-                   rel2.offset: -9 -9;
+         part { name: "button_image";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 255 255 255 0;
+               image.normal: "hoversel_entry_bg.png";
+               image.border: 0 0 2 2;
+               fill.smooth: 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1.offset: 4 4;
+               rel2.offset: 3 -5;
+               rel2.relative: 0.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel2.offset: 4 -5;
+            }
+            description { state: "icononly" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               align: 0.5 0.5;
+               aspect: 1.0 1.0;
+               rel2.offset: -5 -5;
+               rel2.relative: 1.0 1.0;
+               aspect_preference: VERTICAL;
+            }
+         }
+         part { name: "textvis";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+            }
+            description { state: "visible" 0.0;
+               visible: 1;
+            }
+         }
+         part {
+            name:          "elm.text";
+            type:          TEXT;
+            effect:        SOFT_SHADOW;
+            mouse_events:  0;
+            scale: 1;
+            clip_to:       "textvis";
+            description { state: "default" 0.0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 4;
+               rel2.offset: -5 -5;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 0;
+                  align:    0.5 0.5;
+                  text_class: "button";
                }
-           }
-       }
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               text.min: 1 1;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               text.min: 1 1;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+            }
+         }
+         part { name: "over2";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+      }
+      programs {
+         program {
+            name:   "button_click";
+            signal: "mouse,down,1";
+            source: "over2";
+            action: STATE_SET "clicked" 0.0;
+            target: "button_image";
+            target: "elm.text";
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+            target: "elm.text";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "icononly"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               set_state(PART:"textvis", "visible", 0.0);
+               set_state(PART:"elm.text", "visible", 0.0);
+            }
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+               set_state(PART:"textvis", "default", 0.0);
+               set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"textvis", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+            }
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+      }
    }
 
-   group { name: "elm/frame/base/pad_small";
-       parts {
-           part { name: "b0";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 4 4;
-                   max: 4 4;
-                   align: 0.0 0.0;
-               }
-           }
-           part { name: "b1";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 4 4;
-                   max: 4 4;
-                   align: 1.0 1.0;
+   group { name: "elm/button/base/anchor";
+      images {
+         image: "bt_base1.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "bt_glow.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "button_image";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+          min: 15 15;
+           color: 255 255 255 0;
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1 {
-                       to: "b0";
-                       relative: 1.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "b1";
-                       relative: 0.0 0.0;
-                       offset: -1 -1;
-                   }
+               image.middle: SOLID;
+            }
+       description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+          color: 255 255 255 255;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+          inherit: "visible" 0.0;
+               image.normal: "bt_base1.png";
+               image.middle: SOLID;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+          inherit: "visible" 0.0;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-           }
-       }
-   }
-
-   group { name: "elm/frame/base/pad_medium";
-       parts {
-           part { name: "b0";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 8 8;
-                   max: 8 8;
-                   align: 0.0 0.0;
-               }
-           }
-           part { name: "b1";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 8 8;
-                   max: 8 8;
-                   align: 1.0 1.0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1 {
-                       to: "b0";
-                       relative: 1.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "b1";
-                       relative: 0.0 0.0;
-                       offset: -1 -1;
-                   }
-               }
-           }
-       }
-   }
-
-   group { name: "elm/frame/base/pad_large";
-       parts {
-           part { name: "b0";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 16 16;
-                   max: 16 16;
-                   align: 0.0 0.0;
-               }
-           }
-           part { name: "b1";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 16 16;
-                   max: 16 16;
-                   align: 1.0 1.0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1 {
-                       to: "b0";
-                       relative: 1.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "b1";
-                       relative: 0.0 0.0;
-                       offset: -1 -1;
-                   }
-               }
-           }
-       }
-   }
-
-   group { name: "elm/frame/base/pad_huge";
-       parts {
-           part { name: "b0";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 32 32;
-                   max: 32 32;
-                   align: 0.0 0.0;
-               }
-           }
-           part { name: "b1";
-               mouse_events:  0;
-               type: RECT;
-               scale: 1;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   min: 32 32;
-                   max: 32 32;
-                   align: 1.0 1.0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1 {
-                       to: "b0";
-                       relative: 1.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "b1";
-                       relative: 0.0 0.0;
-                       offset: -1 -1;
-                   }
-               }
-           }
-       }
-   }
-
-   group { name: "elm/frame/base/outdent_top";
-       images {
-           image: "outdent-top.png" COMP;
-       }
-       parts {
-           part { name: "base0";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "outdent-top.png";
-                   image.border: 0 0 0 13;
-                   fill.smooth: 0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.offset: 2 2;
-                   rel2.offset: -3 -13;
-               }
-           }
-       }
-   }
-
-   group { name: "elm/frame/base/outdent_bottom";
-       images {
-           image: "outdent-bottom.png" COMP;
-       }
-       parts {
-           part { name: "base0";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "outdent-bottom.png";
-                   image.border: 0 0 13 0;
-                   fill.smooth: 0;
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.offset: 2 12;
-                   rel2.offset: -3 -3;
-               }
-           }
-       }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   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=Sans:style=Bold";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "tab" "\t";
+            }
          }
-      }
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 0;
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1.offset: 4 4;
+               rel2.offset: 3 -5;
+               rel2.relative: 0.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               fixed: 1 0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel2.offset: 4 -5;
+            }
+            description { state: "icononly" 0.0;
+               inherit: "default" 0.0;
+               fixed: 0 0;
+               visible: 1;
+               align: 0.5 0.5;
+               aspect: 1.0 1.0;
+               rel2.offset: -5 -5;
+               rel2.relative: 1.0 1.0;
+               aspect_preference: VERTICAL;
+            }
+         }
+         part {
+            name:          "elm.text";
+            type:          TEXT;
+            effect:        SOFT_SHADOW;
+            mouse_events:  0;
             scale: 1;
             description { state: "default" 0.0;
+               visible: 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 4;
+               rel2.offset: -5 -5;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
                text {
-                  style: "tooltip_style";
-                  min: 1 1;
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 0;
+                  align:    0.5 0.5;
+                  text_class: "button";
                }
             }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.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;
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+           color: 255 255 255 0;
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 255;
+            }
+       description { state: "visible" 0.0;
+               inherit:  "default" 0.0;
+          color: 255 255 255 255;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+          inherit:  "visible" 0.0;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
-           }
-           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;
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
+            ignore_flags: ON_HOLD;
+            description { state: "default" 0.0;
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
                }
-           }
-
-#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";
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "over3";
+            mouse_events: 1;
+            repeat_events: 1;
+            description { state: "default" 0.0;
+               color: 255 255 255 0;
+               image {
+                  normal: "bt_glow.png";
+                  border: 12 12 12 12;
                }
-           }
-       }
-   }
-   group { name: "elm/tooltip/base/transparent";
-      parts {
-         part { name: "elm.swallow.content";
-            type: SWALLOW;
-            mouse_events:   0;
-            scale: 1;
-            description { state: "default" 0.0; }
+               fill.smooth : 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit:  "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
          }
-      }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-
-   /* TODO: replicate diagonal swallow slots to the other hover styles */
-   group { name: "elm/hover/base/default";
-      images {
-        image: "shad_circ.png" COMP;
-      }
-      parts {
-        part { name: "elm.swallow.offset";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.relative: 0.0 0.0;
-              rel2.relative: 0.0 0.0;
-           }
-        }
-        part { name: "elm.swallow.size";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.to: "elm.swallow.offset";
-              rel1.relative: 1.0 1.0;
-              rel2.to: "elm.swallow.offset";
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 64;
-           }
-        }
-         part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "elm.swallow.size";
-              rel1.offset: -32 -32;
-              rel2.to: "elm.swallow.size";
-              rel2.offset: 31 31;
-               fill.smooth: 0;
-           }
-        }
-        part { name: "box";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              rel1.to: "elm.swallow.size";
-              rel1.offset: -2 -2;
-              rel2.to: "elm.swallow.size";
-              rel2.offset: 1 1;
-           }
-        }
-        part { name: "elm.swallow.slot.left";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 1.0 0.5;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: -1 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 0.0 1.0;
-              rel2.offset: -1 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.top-left";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 1.0 1.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 0.0 0.0;
-              rel2.offset: -1 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.top";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.5 1.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: 0 -1;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 0.0;
-              rel2.offset: -1 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.top-right";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 1.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 1.0 0.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 0.0;
-              rel2.offset: -1 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.right";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.5;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 1.0 0.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: 0 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.bottom-right";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 1.0 1.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 -1;
-           }
-        }
-        part { name: "elm.swallow.slot.bottom";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.5 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 1.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 0;
-           }
-        }
-        part { name: "elm.swallow.slot.bottom-left";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 1.0 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 1.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 0.0 1.0;
-              rel2.offset: -1 0;
-           }
-        }
-        part { name: "elm.swallow.slot.middle";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.size";
-              rel2.to: "elm.swallow.size";
-           }
-        }
       }
       programs {
-        program { name: "end";
-           signal: "mouse,up,1";
-           source: "base";
-           action: SIGNAL_EMIT "elm,action,dismiss" "";
-        }
+    program {
+            name:   "button_mouse_in";
+            signal: "mouse,in";
+            source: "over2";
+            action: STATE_SET "visible" 0.0;
+            target: "button_image";
+       target: "over1";
+       transition: DECELERATE 0.5;
+         }
+         program {
+            name:   "button_mouse_out";
+            signal: "mouse,out";
+            source: "over2";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+       target: "over1";
+       transition: DECELERATE 0.5;
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: STATE_SET "visible" 0.0;
+            target: "button_image";
+         }
+         program {
+            name:   "button_click2";
+            signal: "mouse,down,1";
+            source: "over3";
+            action: STATE_SET "clicked" 0.0;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick2";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "icononly"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               set_state(PART:"elm.text", "visible", 0.0);
+            }
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+               set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "icononly", 0.0);
+            }
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+            target: "over1";
+            target: "over2";
+            target: "disabler";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+            }
+         }
       }
    }
 
-   group { name: "elm/hover/base/popout";
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/toggle/base/default";
       images {
-        image: "shad_circ.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
+         image: "shelf_inset.png" COMP;
+         image: "bt_basew.png" COMP;
+         image: "bt_bases.png" COMP;
+         image: "bt_hilightw.png" COMP;
+         image: "tog_base_on.png" COMP;
+         image: "tog_base_off.png" COMP;
+         image: "tog_dis_base_on.png" COMP;
+         image: "tog_dis_base_off.png" COMP;
+      }
+      script {
+         public is_rtl;
       }
       parts {
-        part { name: "elm.swallow.offset";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.relative: 0.0 0.0;
-              rel2.relative: 0.0 0.0;
-           }
-        }
-        part { name: "elm.swallow.size";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.to: "elm.swallow.offset";
-              rel1.relative: 1.0 1.0;
-              rel2.to: "elm.swallow.offset";
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 1.0;
-              color: 0 0 0 64;
-           }
-        }
-        part { name: "leftclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel2.to_x: "pop";
-              rel2.relative: 0.0 1.0;
-               rel2.offset: 1 -1;
-           }
-        }
-        part { name: "left";
-           clip_to: "leftclip";
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "elm.swallow.slot.left";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.slot.left";
-               rel2.offset: 4 4;
-               image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.slot.left";
-            type: SWALLOW;
-           clip_to: "leftclip";
-           description { state: "default" 0.0;
-              align: 0.0 0.5;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: -1 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 0.0 1.0;
-              rel2.offset: -1 -1;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: -7 0;
-              rel2.offset: -7 -1;
-              align: 1.0 0.5;
-           }
-        }
-         part { name: "leftover";
-           clip_to: "leftclip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "left";
-              rel2.to: "left";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "rightclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel1.to_x: "pop";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: -2 0;
-           }
-        }
-        part { name: "right";
-           clip_to: "rightclip";
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "elm.swallow.slot.right";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.slot.right";
-               rel2.offset: 4 4;
+         part { name: "bg";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel1.offset: -4 3;
+               rel2.offset: -4 -4;
+               align: 1.0 0.5;
+               min: 96 16;
+               max: 96 16;
+               aspect: 4.0 4.0;
+               aspect_preference: VERTICAL;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "clipper";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "button";
+            type: RECT;
+            scale: 1;
+            clip_to: "clipper";
+            mouse_events: 1;
+             dragable {
+               x: 1 1 0;
+               y: 0 0 0;
+               confine: "bg";
+            }
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               min: 16 16;
+               max: 16 16;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               color: 0 0 0 0;
+            }
+         }
+         part { name: "button_events";
+            type: RECT;
+             dragable {
+               events: "button";
+            }
+            description { state: "default" 0.0;
+               rel1.to_x: "bg";
+               rel1.offset: 0 0;
+               rel1.relative: 0.0 0.0;
+               rel2.to_x: "bg";
+               rel2.offset: -1 -1;
+               rel2.relative: 1.0 1.0;
+               color: 0 0 0 0;
+            }
+         }
+         part { name: "onrect";
+            type: IMAGE;
+            scale: 1;
+            clip_to: "clipper";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "button";
+               rel1.relative: -5.0 0.0;
+               rel2.to: "button";
+               rel2.relative: 0.5 1.0;
+               image.normal: "tog_base_on.png";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "tog_dis_base_on.png";
+            }
+         }
+         part { name: "offrect";
+            type: IMAGE;
+            scale: 1;
+            clip_to: "clipper";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "button";
+               rel1.relative: 0.5 0.0;
+               rel2.to: "button";
+               rel2.relative: 6.0 1.0;
+               image.normal: "tog_base_off.png";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "tog_dis_base_off.png";
+            }
+         }
+         part { name: "elm.offtext";
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1.to_x: "button";
+               rel1.relative: 1.0 0.0;
+               rel2.to_x: "offrect";
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 1;
+                  align:    0.5 0.5;
+                  text:     "OFF";
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+            }
+         }
+         part { name: "elm.ontext";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            mouse_events:  0;
+            scale: 1;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1.to_x: "onrect";
+               rel1.offset: 1 1;
+               rel2.to_x: "button";
+               rel2.offset: 0 0;
+               rel2.relative: 0.0 1.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 1;
+                  align:    0.5 0.5;
+                  text:     "ON";
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+               color3: 0 0 0 24;
+            }
+         }
+         part { name: "conf_over";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel1.offset: -1 -1;
+               rel1.to: "bg";
+               rel2.offset: 0 0;
+               rel2.to: "bg";
                image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.slot.right";
-            type: SWALLOW;
-           clip_to: "rightclip";
-           description { state: "default" 0.0;
-              align: 1.0 0.5;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 1.0 0.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: 0 -1;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: 6 0;
-              rel2.offset: 6 -1;
-              align: 0.0 0.5;
-           }
-        }
-         part { name: "rightover";
-           clip_to: "rightclip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "right";
-              rel2.to: "right";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "topclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel2.to_y: "pop";
-              rel2.relative: 1.0 0.0;
-               rel2.offset: -1 1;
-           }
-        }
-        part { name: "top";
-           clip_to: "topclip";
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "elm.swallow.slot.top";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.slot.top";
-               rel2.offset: 4 4;
+                  normal: "shelf_inset.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "button0";
+            mouse_events:  0;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               rel1.to: "button2";
+               rel1.offset: -4 -4;
+               rel2.to: "button2";
+               rel2.offset: 3 3;
                image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
+                  normal: "bt_bases.png";
+                  border: 11 11 11 11;
+               }
                image.middle: SOLID;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.slot.top";
-            type: SWALLOW;
-           clip_to: "topclip";
-           description { state: "default" 0.0;
-              visible: 1;
-              align: 0.5 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: 0 -1;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 0.0;
-              rel2.offset: -1 -1;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: 0 -7;
-              rel2.offset: -1 -7;
-              align: 0.5 1.0;
-           }
-        }
-         part { name: "topover";
-           clip_to: "topclip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "top";
-              rel2.to: "top";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "bottomclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel1.to_y: "pop";
-              rel1.relative: 0.0 1.0;
-               rel1.offset: -1 -2;
-           }
-        }
-        part { name: "bottom";
-           clip_to: "bottomclip";
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to: "elm.swallow.slot.bottom";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.slot.bottom";
-               rel2.offset: 4 4;
+               color: 255 255 255 128;
+            }
+         }
+         part { name: "button2";
+            mouse_events:  0;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               rel1.to: "button";
+               rel1.offset: -2 -2;
+               rel2.to: "button";
+               rel2.offset: 1 1;
                image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
+                  normal: "bt_basew.png";
+                  border: 7 7 7 7;
+               }
                image.middle: SOLID;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.slot.bottom";
-            type: SWALLOW;
-           clip_to: "bottomclip";
-           description { state: "default" 0.0;
-              align: 0.5 1.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 1.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: 0 6;
-              rel2.offset: -1 6;
-              align: 0.5 0.0;
-           }
-        }
-         part { name: "bottomover";
-           clip_to: "bottomclip";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "bottom";
-              rel2.to: "bottom";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-         part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "elm.swallow.size";
-              rel1.offset: -64 -64;
-              rel2.to: "elm.swallow.size";
-              rel2.offset: 63 63;
-               fill.smooth: 0;
-           }
-        }
-        part { name: "pop";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.slot.middle";
-               rel2.offset: 4 4;
+            }
+         }
+         part { name: "button3";
+            mouse_events:  0;
+            clip_to: "clipper";
+            description { state: "default" 0.0;
+               rel1.to: "button2";
+               rel2.to: "button2";
+               rel2.relative: 1.0 0.5;
                image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-        }
-        part { name: "elm.swallow.slot.middle";
+                  normal: "bt_hilightw.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "elm.swallow.content";
             type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.size";
-              rel2.to: "elm.swallow.size";
-           }
-        }
-         part { name: "popover";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "pop";
-              rel2.to: "pop";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1.offset: 4 4;
+               rel2.relative: 0.0 1.0;
+               rel2.offset: 3 -5;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               rel2.offset: 4 -5;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+               visible: 1;
+               aspect: 1.0 1.0;
+            }
+         }
+         part { name: "elm.text";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 4;
+               rel2.to_x: "bg";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: -5 -5;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  min: 0 0;
+                  align: 0.0 0.5;
+               }
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+               visible: 1;
+               text.min: 1 1;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
       }
       programs {
-        program { name: "end";
-           signal: "mouse,up,1";
-           source: "base";
-           action: SIGNAL_EMIT "elm,action,dismiss" "";
-        }
-
-        program { name: "show";
-            signal: "elm,action,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "hide";
-            signal: "elm,action,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-
-        program { name: "leftshow";
-            signal: "elm,action,slot,left,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "left";
-           target: "elm.swallow.slot.left";
-        }
-        program { name: "lefthide";
-            signal: "elm,action,slot,left,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "left";
-           target: "elm.swallow.slot.left";
-        }
-        program { name: "rightshow";
-            signal: "elm,action,slot,right,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "right";
-           target: "elm.swallow.slot.right";
-        }
-        program { name: "righthide";
-            signal: "elm,action,slot,right,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "right";
-           target: "elm.swallow.slot.right";
-        }
-        program { name: "topshow";
-            signal: "elm,action,slot,top,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "top";
-           target: "elm.swallow.slot.top";
-        }
-        program { name: "tophide";
-            signal: "elm,action,slot,top,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "top";
-           target: "elm.swallow.slot.top";
-        }
-        program { name: "bottomshow";
-            signal: "elm,action,slot,bottom,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "bottom";
-           target: "elm.swallow.slot.bottom";
-        }
-        program { name: "bottomhide";
-            signal: "elm,action,slot,bottom,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "bottom";
-           target: "elm.swallow.slot.bottom";
-        }
-      }
-   }
-
-   //In the hover used by the menu only the bottom part is used.
-   group { name: "elm/hover/base/menu";
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-       }
-       parts {
-           part { name: "elm.swallow.offset";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 0.0 0.0;
-               }
-           }
-           part { name: "elm.swallow.size";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   rel1.to: "elm.swallow.offset";
-                   rel1.relative: 1.0 1.0;
-                   rel2.to: "elm.swallow.offset";
-                   rel2.relative: 1.0 1.0;
-               }
-           }
-           part { name: "base";
-               type: RECT;
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 1.0;
-                   color: 0 0 0 64;
-               }
-           }
-           part { name: "elm.swallow.slot.left";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-           }
-           part { name: "elm.swallow.slot.right";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-           }
-           part { name: "elm.swallow.slot.top";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
+         program { name:   "drag_end";
+            signal: "mouse,up,1";
+            source: "button";
+            script {
+               new Float:dx, Float:dy;
+               get_drag(PART:"button", dx, dy);
+               if (dx > 0.5)
+                 {
+                    set_drag(PART:"button", 1.0, 0.0);
+                 }
+               else
+                 {
+                    set_drag(PART:"button", 0.0, 0.0);
+                 }
+               if (((get_int(is_rtl) == 1) && (dx <= 0.5)) ||
+                   (get_int(is_rtl) == 0) && (dx > 0.5)) {
+                  emit("elm,action,toggle,on", "");
                }
-           }
-           part { name: "bottomclip";
-               type: RECT;
-               description { state: "default" 0.0;
-                   rel1.to_y: "pop";
-                   rel1.relative: 0.0 1.0;
-                   rel1.offset: -1 -2;
+               else {
+                  emit("elm,action,toggle,off", "");
                }
-           }
-           part { name: "bottom";
-               clip_to: "bottomclip";
-               description { state: "default" 0.0;
-                   visible: 0;
-                   rel1.to: "elm.swallow.slot.bottom";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.slot.bottom";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
+
+            }
+         }
+         program { name: "toggle_on";
+            signal: "elm,state,toggle,on";
+            source: "elm";
+            script {
+               new Float:drag;
+               if (get_int(is_rtl) == 0) {
+                  drag = 100.0;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
+               else {
+                  drag = 0.0;
                }
-           }
-           part { name: "elm.swallow.slot.bottom";
-               type: SWALLOW;
-               clip_to: "bottomclip";
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   rel1.to: "elm.swallow.slot.middle";
-                   rel1.relative: 0.0 1.0;
-                   rel1.offset: 0 0;
-                   rel2.to: "elm.swallow.slot.middle";
-                   rel2.relative: 1.0 1.0;
-                   rel2.offset: -1 0;
+               set_drag(PART:"button", drag, 0.0);
+            }
+         }
+         program { name: "toggle_off";
+            signal: "elm,state,toggle,off";
+            source: "elm";
+            script {
+               new Float:drag;
+               if (get_int(is_rtl) == 0) {
+                  drag = 0.0;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   rel1.offset: 0 6;
-                   rel2.offset: -1 6;
-                   align: 0.5 0.0;
+               else {
+                  drag = 100.0;
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               repeat_events:1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.slot.middle";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.slot.middle";
-                   rel2.offset: 4 4;
-               }
-           }
-           part { name: "elm.swallow.slot.middle";
-               type: SWALLOW;
-               repeat_events:1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.size";
-                   rel2.to: "elm.swallow.size";
-               }
-           }
+               set_drag(PART:"button", drag, 0.0);
+            }
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.text";
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.offtext";
+            target: "elm.ontext";
+            target: "onrect";
+            target: "offrect";
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "disabler";
+            target: "onrect";
+            target: "offrect";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "default", 0.0);
+            }
+         }
+         program { name: "to_rtl";
+            signal: "edje,state,rtl";
+            source: "edje";
+            script {
+               set_int(is_rtl, 1);
+            }
+         }
+         program { name: "to_ltr";
+            signal: "edje,state,ltr";
+            source: "edje";
+            script {
+               set_int(is_rtl, 0);
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/clock/flipdigit/default";
+      images {
+         image: "flip_base.png" COMP;
+         image: "flip_base_shad.png" COMP;
+         image: "flip_shad.png" COMP;
+         image: "flip_0t.png" COMP;
+         image: "flip_0b.png" COMP;
+         image: "flip_1t.png" COMP;
+         image: "flip_1b.png" COMP;
+         image: "flip_2t.png" COMP;
+         image: "flip_2b.png" COMP;
+         image: "flip_3t.png" COMP;
+         image: "flip_3b.png" COMP;
+         image: "flip_4t.png" COMP;
+         image: "flip_4b.png" COMP;
+         image: "flip_5t.png" COMP;
+         image: "flip_5b.png" COMP;
+         image: "flip_6t.png" COMP;
+         image: "flip_6b.png" COMP;
+         image: "flip_7t.png" COMP;
+         image: "flip_7b.png" COMP;
+         image: "flip_8t.png" COMP;
+         image: "flip_8b.png" COMP;
+         image: "flip_9t.png" COMP;
+         image: "flip_9b.png" COMP;
+         image: "arrow_up.png" COMP;
+         image: "arrow_down.png" COMP;
+      }
+      script {
+         public v0_cur, v0_pre, v0_lock, v0_next;
+
+       public animator2(val, Float:pos) {
+          new st1[11], st2[11], v;
+
+          v = get_int(v0_cur);
+          snprintf(st1, 10, "%ih", v);
+          snprintf(st2, 10, "%i", v);
+          set_tween_state(PART:"bot", pos, st1, 0.0, st2, 0.0);
+          set_tween_state(PART:"sh", pos, "half", 0.0, "full", 0.0);
+          if (pos >= 1.0) {
+             set_state(PART:"sh", "default", 0.0);
+             set_int(v0_lock, 0);
+             v = get_int(v0_next);
+             if (v >= 0) {
+                set_int(v0_next, -1);
+                message(MSG_INT, 1, v);
+             }
+          }
        }
-       programs {
-           program { name: "end";
-               signal: "mouse,up,1";
-               source: "base";
-               action: SIGNAL_EMIT "elm,action,dismiss" "";
-           }
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-                       //          transition: DECELERATE 0.5;
-               target: "base";
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-                       //          transition: DECELERATE 0.5;
-               target: "base";
-           }
-           program { name: "bottomshow";
-               signal: "elm,action,slot,bottom,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               transition: DECELERATE 0.3;
-               target: "bottom";
-               target: "elm.swallow.slot.bottom";
-           }
-           program { name: "bottomhide";
-               signal: "elm,action,slot,bottom,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               transition: DECELERATE 0.5;
-               target: "bottom";
-               target: "elm.swallow.slot.bottom";
-           }
+       public animator1(val, Float:pos) {
+          new st1[11], st2[11], v;
+
+          v = get_int(v0_pre);
+          snprintf(st1, 10, "%i", v);
+          snprintf(st2, 10, "%ih", v);
+          set_tween_state(PART:"top", pos, st1, 0.0, st2, 0.0);
+          set_tween_state(PART:"sh", pos, "default", 0.0, "half", 0.0);
+          if (pos >= 1.0) anim(0.2, "animator2", val);
        }
-   }
+       public message(Msg_Type:type, id, ...) {
+          if ((type == MSG_INT) && (id == 1)) {
+             new value, v, buf[11];
 
-   //In the hover used by the submenu only the bottom part is used
-   //and no part should interact except the bottom area
-   group { name: "elm/hover/base/submenu";
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
+             value = getarg(2);
+             if (get_int(v0_lock) == 1) {
+                set_int(v0_next, value);
+                return;
+             }
+             v = get_int(v0_cur);
+             set_int(v0_pre, v);
+             set_int(v0_cur, value);
+             set_int(v0_lock, 1);
+             snprintf(buf, 10, "%i", get_int(v0_pre));
+             set_state(PART:"bot0", buf, 0.0);
+             snprintf(buf, 10, "%ih", get_int(v0_cur));
+             set_state(PART:"bot", buf, 0.0);
+             snprintf(buf, 10, "%i", get_int(v0_cur));
+             set_state(PART:"top0", buf, 0.0);
+             snprintf(buf, 10, "%i", get_int(v0_pre));
+             set_state(PART:"top", buf, 0.0);
+             set_state(PART:"sh", "default", 0.0);
+             anim(0.2, "animator1", 1);
+          }
        }
-       parts {
-           part { name: "elm.swallow.offset";
-               type: SWALLOW;
-               repeat_events:1;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 0.0 0.0;
-               }
-           }
-           part { name: "elm.swallow.size";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   align: 0.0 0.0;
-                   rel1.to: "elm.swallow.offset";
-                   rel1.relative: 1.0 1.0;
-                   rel2.to: "elm.swallow.offset";
-                   rel2.relative: 1.0 1.0;
-               }
-           }
-           //here we do non catch events like the hover hover does
-           part { name: "base";
-               type: RECT;
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   visible: 0;
-               }
-           }
-           part { name: "elm.swallow.slot.left";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-           }
-           part { name: "elm.swallow.slot.right";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-           }
-           part { name: "elm.swallow.slot.top";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               }
-           }
-           part { name: "bottomclip";
-               type: RECT;
-               description { state: "default" 0.0;
-                   rel1.to_y: "pop";
-                   rel1.relative: 0.0 1.0;
-                   rel1.offset: -1 -2;
-               }
-           }
-           part { name: "bottom";
-               clip_to: "bottomclip";
-               description { state: "default" 0.0;
-                   visible: 0;
-                   rel1.to: "elm.swallow.slot.bottom";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.slot.bottom";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-               }
-           }
-           part { name: "elm.swallow.slot.bottom";
-               type: SWALLOW;
-               clip_to: "bottomclip";
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   rel1.to: "elm.swallow.slot.middle";
-                   rel1.relative: 0.0 1.0;
-                   rel1.offset: 0 0;
-                   rel2.to: "elm.swallow.slot.middle";
-                   rel2.relative: 1.0 1.0;
-                   rel2.offset: -1 0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   rel1.offset: 0 6;
-                   rel2.offset: -1 6;
-                   align: 0.5 0.0;
-               }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               repeat_events:1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.slot.middle";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.slot.middle";
-                   rel2.offset: 4 4;
-               }
-           }
-           part { name: "elm.swallow.slot.middle";
-               type: SWALLOW;
-               repeat_events:1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.size";
-                   rel2.to: "elm.swallow.size";
-               }
-           }
-       }
-       programs {
-           program { name: "end";
-               signal: "mouse,up,1";
-               source: "base";
-               action: SIGNAL_EMIT "elm,action,dismiss" "";
-           }
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-                       //          transition: DECELERATE 0.5;
-               target: "base";
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-                       //          transition: DECELERATE 0.5;
-               target: "base";
-           }
-           program { name: "bottomshow";
-               signal: "elm,action,slot,bottom,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               transition: DECELERATE 0.3;
-               target: "bottom";
-               target: "elm.swallow.slot.bottom";
-           }
-           program { name: "bottomhide";
-               signal: "elm,action,slot,bottom,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               transition: DECELERATE 0.5;
-               target: "bottom";
-               target: "elm.swallow.slot.bottom";
-           }
-       }
-   }
-
-   group { name: "elm/hover/base/hoversel_vertical/default";
-      alias: "elm/hover/base/hoversel_vertical/entry";
-      images {
-//      image: "shad_circ.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "outdent-top.png" COMP;
-        image: "outdent-bottom.png" COMP;
-      }
-      parts {
-        part { name: "elm.swallow.offset";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.relative: 0.0 0.0;
-              rel2.relative: 0.0 0.0;
-           }
-        }
-        part { name: "elm.swallow.size";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              align: 0.0 0.0;
-              rel1.to: "elm.swallow.offset";
-              rel1.relative: 1.0 1.0;
-              rel2.to: "elm.swallow.offset";
-              rel2.relative: 1.0 1.0;
-           }
-        }
-/*
-        part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "button_image";
-              rel1.offset: -64 -64;
-              rel2.to: "button_image";
-              rel2.offset: 63 63;
-               fill.smooth: 0;
-           }
-        }
- */
-        part { name: "button_image";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to_x: "elm.swallow.slot.top";
-              rel1.to_y: "elm.swallow.slot.top";
-               rel1.offset: -2 -6;
-              rel2.to_x: "elm.swallow.slot.top";
-              rel2.to_y: "elm.swallow.slot.bottom";
-               rel2.offset: 1 5;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-           description { state: "bottom" 0.0;
-              rel1.to_x: "elm.swallow.slot.bottom";
-              rel1.to_y: "elm.swallow.slot.top";
-               rel1.offset: -2 -6;
-              rel2.to_x: "elm.swallow.slot.bottom";
-              rel2.to_y: "elm.swallow.slot.bottom";
-               rel2.offset: 1 5;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
-               image.middle: SOLID;
-           }
-        }
-
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 1.0;
-              color: 0 0 0 64;
-           }
-        }
-
-        part { name: "topclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel2.to_y: "edge_top";
-              rel2.relative: 1.0 0.0;
-               rel2.offset: -1 7;
-           }
-        }
-        part { name: "elm.swallow.slot.top";
-            type: SWALLOW;
-           clip_to: "topclip";
-           description { state: "default" 0.0;
-              visible: 1;
-              align: 0.5 0.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 0.0;
-              rel1.offset: 0 -1;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 0.0;
-              rel2.offset: -1 -1;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: 0 -7;
-              rel2.offset: -1 -7;
-              align: 0.5 1.0;
-           }
-        }
-
-        part { name: "bottomclip";
-           type: RECT;
-           description { state: "default" 0.0;
-              rel1.to_y: "edge_bottom";
-              rel1.relative: 0.0 1.0;
-               rel1.offset: -1 -8;
-           }
-        }
-        part { name: "elm.swallow.slot.bottom";
-            type: SWALLOW;
-           clip_to: "bottomclip";
-           description { state: "default" 0.0;
-              align: 0.5 1.0;
-              rel1.to: "elm.swallow.slot.middle";
-              rel1.relative: 0.0 1.0;
-              rel1.offset: 0 0;
-              rel2.to: "elm.swallow.slot.middle";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.offset: 0 6;
-              rel2.offset: -1 6;
-              align: 0.5 0.0;
-           }
-        }
-
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-               rel1.to: "button_image";
-               rel2.to: "button_image";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-               rel1.to: "button_image";
-               rel2.to: "button_image";
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-        }
-         part { name: "edge_top";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-               visible: 0;
-              rel1 {
-                  to: "elm.swallow.size";
-                  offset: 0 -10;
-               }
-              rel2 {
-                  to: "elm.swallow.size";
-               }
-              image.normal: "outdent-bottom.png";
-               image.border: 0 0 13 0;
-               fill.smooth: 0;
-           }
-           description { state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-           }
-        }
-         part { name: "edge_bottom";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-               visible: 0;
-              rel1 {
-                  to: "elm.swallow.size";
-               }
-              rel2 {
-                  to: "elm.swallow.size";
-                  offset: -1 9;
-               }
-              image.normal: "outdent-top.png";
-               image.border: 0 0 0 13;
-               fill.smooth: 0;
-           }
-           description { state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-           }
-        }
-        part { name: "elm.swallow.slot.middle";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.size";
-              rel2.to: "elm.swallow.size";
-           }
-        }
-      }
-      programs {
-        program { name: "end";
-           signal: "mouse,up,1";
-           source: "base";
-           action: SIGNAL_EMIT "elm,action,dismiss" "";
-        }
-
-        program { name: "show";
-            signal: "elm,action,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "hide";
-            signal: "elm,action,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "topshow";
-            signal: "elm,action,slot,top,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "edge_top";
-            after: "topshow2";
-        }
-        program { name: "topshow2";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "elm.swallow.slot.top";
-        }
-        program { name: "topshow3";
-            signal: "elm,action,slot,top,show";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "button_image";
-        }
-        program { name: "tophide";
-            signal: "elm,action,slot,top,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "elm.swallow.slot.top";
-            after: "tophide2";
-        }
-        program { name: "tophide2";
-           action: STATE_SET "default" 0.0;
-           target: "edge_top";
-        }
-        program { name: "bottomshow";
-            signal: "elm,action,slot,bottom,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-           target: "edge_bottom";
-            after: "bottomshow2";
-        }
-        program { name: "bottomshow2";
-           action: STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "elm.swallow.slot.bottom";
-        }
-        program { name: "bottomshow3";
-            signal: "elm,action,slot,bottom,show";
-           source: "elm";
-           action: STATE_SET "bottom" 0.0;
-           target: "button_image";
-        }
-        program { name: "bottomhide";
-            signal: "elm,action,slot,bottom,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           transition: DECELERATE 0.5;
-           target: "elm.swallow.slot.bottom";
-            after: "bottomhide2";
-        }
-        program { name: "bottomhide2";
-           action: STATE_SET "default" 0.0;
-           target: "edge_bottom";
-        }
-      }
-   }
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/scroller/base/ctxpopup";
-      data {
-         item: "focus_highlight" "on";
-      }
-      script {
-         public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
-         public timer0(val) {
-            new v;
-            v = get_int(sbvis_v);
-            if (v) {
-               v = get_int(sbalways_v);
-               if(!v) {
-                  emit("do-hide-vbar", "");
-                  set_int(sbvis_v, 0);
-               }
-            }
-            v = get_int(sbvis_h);
-            if (v) {
-               v = get_int(sbalways_h);
-               if(!v) {
-                  emit("do-hide-hbar", "");
-                  set_int(sbvis_h, 0);
+      }
+      parts {
+         part { name: "shad";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.offset: -4 -4;
+               rel1.to: "base";
+               rel2.offset: 3 3;
+               rel2.to: "base";
+               image {
+                  normal: "flip_base_shad.png";
+                  border: 8 8 8 8;
                }
             }
-            set_int(sbvis_timer, 0);
-            return 0;
          }
-      }
-      images {
-         image: "bt_sm_base2.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "sl_bt2_2.png" COMP;
-      }
-      parts {
-         part { name: "clipper";
-            type: RECT;
-            mouse_events: 0;
+         part { name: "base";
             scale: 1;
             description { state: "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               // FIXME 48x96 should be the native pixel design, right now
+               // its 80x160. fix int he artwork later
+               min: 24 48;
+               aspect: 0.5 0.5;
+//               max: 24 48;
+               image.normal: "flip_base.png";
             }
          }
-         part { name: "elm.swallow.content";
-            clip_to: "clipper";
-            type: SWALLOW;
-            scale: 1;
+         part { name: "b";
+            type: RECT;
+            mouse_events: 1;
             description { state: "default" 0.0;
-               align: 0.5 0.5;
+               visible: 0;
+               rel1.to: "base";
+               rel1.relative: 0.0 0.5;
+               rel2.to: "base";
+               color: 0 0 0 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "focus_highlight";
-            mouse_events: 0;
+         part { name: "t";
+            type: RECT;
+            mouse_events: 1;
             description { state: "default" 0.0;
-               rel1.offset: -1 -1;
-               rel2.offset: 0 0;
-               image { normal: "sl_bt2_2.png";
-                  border: 7 7 7 7;
-                  middle: 0;
-               }
-               fill.smooth : 0;
-               color: 200 155 0 0;
+               visible: 0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               color: 0 0 0 0;
             }
-            description { state: "enabled" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               color: 200 155 0 255;
+               visible: 1;
             }
          }
-         part { name: "sb_vbar_clip_master";
-            type: RECT;
+         part { name: "bot0";
             mouse_events: 0;
             description { state: "default" 0.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_0b.png";
             }
-            description { state: "hidden" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_0b.png";
             }
-         }       
-         part { name: "sb_vbar_clip";
-            clip_to:"sb_vbar_clip_master";
-            type: RECT;
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_1b.png";
+            }
+            description { state: "2" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_2b.png";
+            }
+            description { state: "3" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_3b.png";
+            }
+            description { state: "4" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_4b.png";
+            }
+            description { state: "5" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_5b.png";
+            }
+            description { state: "6" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_6b.png";
+            }
+            description { state: "7" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_7b.png";
+            }
+            description { state: "8" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_8b.png";
+            }
+            description { state: "9" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_9b.png";
+            }
+         }
+         part { name: "sh";
             mouse_events: 0;
-            scale: 1;
             description { state: "default" 0.0;
-               align: 0.0 0.0;
-               rel2{ to:"clipper"; relative: 1.0 1.0;}
+               rel1.to: "b";
+               rel2.to: "b";
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_shad.png";
             }
-            description { state: "hidden" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
+            description { state: "half" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 0.5;
+            }
+            description { state: "full" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 1.0;
             }
          }
-         part { name: "sb_vbar";
-            type: RECT;
+         part { name: "bot";
             mouse_events: 0;
-            scale: 1;
             description { state: "default" 0.0;
-               fixed: 1 1;
-               visible: 0;
-               align: 1.0 0.0;
-               rel1{ to:"clipper"; relative: 1.0 0.0; }
-               rel2{ to:"clipper"; relative: 1.0 1.0; }
+               visible: 1;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_0b.png";
             }
-         }
-         part { name: "elm.dragable.vbar";
-            clip_to: "sb_vbar_clip";
-            mouse_events: 0;    
-            scale: 1;
-            dragable {
-               x: 0 0 0;
-               y: 1 1 0;
-               confine: "sb_vbar";
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_0b.png";
             }
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               min: 10 17;
-               max: 10 99999;
-               rel1 { relative: 0.5 0.5; to: "sb_vbar"; }
-               rel2 { relative: 0.5  0.5; to: "sb_vbar"; }
-               image { normal: "bt_sm_base2.png";
-                  border: 6 6 6 6;
-                  middle: SOLID;
-               }
+            description { state: "0h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_0b.png";
             }
-         }
-         part { name: "sb_vbar_over1";
-            clip_to: "sb_vbar_clip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "elm.dragable.vbar";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "elm.dragable.vbar";
-               image { normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_1b.png";
             }
-         }
-         part { name: "sb_vbar_over2";
-            clip_to: "sb_vbar_clip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "elm.dragable.vbar";
-               rel2.to: "elm.dragable.vbar";
-               image { normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
-               }
+            description { state: "1h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_1b.png";
             }
-         }
-         part { name: "sb_hbar_clip_master";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
+            description { state: "2" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_2b.png";
             }
-            description { state: "hidden" 0.0;
+            description { state: "2h" 0.0;
+               inherit: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_2b.png";
             }
-         }       
-         part { name: "sb_hbar_clip";
-            clip_to: "sb_hbar_clip_master";
-            type: RECT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               align: 0.0 0.0;
-               rel2{ to:"clipper"; relative: 1.0 1.0;}
+            description { state: "3" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_3b.png";
             }
-            description { state: "hidden" 0.0;
+            description { state: "3h" 0.0;
+               inherit: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_3b.png";
             }
-         }
-         part { name: "sb_hbar";
-            type: RECT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0; 
-               fixed: 1 1;
+            description { state: "4" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_4b.png";
+            }
+            description { state: "4h" 0.0;
+               inherit: "default" 0.0;
                visible: 0;
-               align: 0.0 1.0;
-               rel1 { to:"clipper"; relative: 0.0 1.0; }
-               rel2 { to:"clipper"; relative: 1.0 1.0; }       
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_4b.png";
             }
-         }
-         part { name: "elm.dragable.hbar";
-            clip_to: "sb_hbar_clip";
-            mouse_events: 0;   
-            scale: 1;
-            dragable {
-               x: 1 1 0;
-               y: 0 0 0;
-               confine: "sb_hbar";
+            description { state: "5" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_5b.png";
             }
-            description { state: "default" 0.0;
-               min: 17 10;
-               max: 99999 10;
-               fixed: 1 1;
-               rel1 { relative: 0.5  0.5; to: "sb_hbar"; }
-               rel2 { relative: 0.5  0.5; to: "sb_hbar"; }
-               image { normal: "bt_sm_base2.png";
-                  border: 4 4 4 4;
-                  middle: SOLID;
-               }
+            description { state: "5h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_5b.png";
+            }
+            description { state: "6" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_6b.png";
+            }
+            description { state: "6h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_6b.png";
+            }
+            description { state: "7" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_7b.png";
+            }
+            description { state: "7h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_7b.png";
+            }
+            description { state: "8" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_8b.png";
+            }
+            description { state: "8h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_8b.png";
+            }
+            description { state: "9" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_9b.png";
+            }
+            description { state: "9h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_9b.png";
             }
          }
-         part { name: "sb_hbar_over1";
-            clip_to: "sb_hbar_clip";
+         part { name: "top0";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "elm.dragable.hbar";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "elm.dragable.hbar";
-               image { normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_0t.png";
+            }
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_0t.png";
+            }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_1t.png";
+            }
+            description { state: "2" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_2t.png";
+            }
+            description { state: "3" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_3t.png";
+            }
+            description { state: "4" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_4t.png";
+            }
+            description { state: "5" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_5t.png";
+            }
+            description { state: "6" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_6t.png";
+            }
+            description { state: "7" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_7t.png";
+            }
+            description { state: "8" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_8t.png";
+            }
+            description { state: "9" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_9t.png";
             }
          }
-         part { name: "sb_hbar_over2";
-            clip_to: "sb_hbar_clip";
+         part { name: "top";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "elm.dragable.hbar";
-               rel2.to: "elm.dragable.hbar";
-               image { normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
-               }
+               visible: 1;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_0t.png";
             }
-         }
-      }   
-      programs {
-         program { name: "load";
-            signal: "load";
-            source: "";
-            script {
-               set_state(PART:"sb_vbar_clip", "hidden", 0.0);
-               set_state(PART:"sb_hbar_clip", "hidden", 0.0);
-               set_int(sbvis_v, 0);
-               set_int(sbvis_h, 0);
-               set_int(sbalways_v, 0);
-                                  set_int(sbalways_h, 0);
-               set_int(sbvis_timer, 0);
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_0t.png";
             }
-         } 
-         program { name: "vbar_show";
-            signal: "elm,action,show,vbar";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "sb_vbar_clip_master";
-         }
-         program { name: "vbar_hide";
-            signal: "elm,action,hide,vbar";
-            source: "elm";
-            action:  STATE_SET "hidden" 0.0;
-            target: "sb_vbar_clip_master";
-         }       
-         program { name: "vbar_show_always";
-            signal: "elm,action,show_always,vbar";
-            source: "elm";
-            script {
-               new v;
-               v = get_int(sbvis_v);
-               v |= get_int(sbalways_v);
-               if (!v) {
-                  set_int(sbalways_v, 1);
-                  emit("do-show-vbar", "");
-                  set_int(sbvis_v, 1);
-               }
+            description { state: "0h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_0t.png";
             }
-         }
-         program { name: "vbar_show_notalways";
-            signal: "elm,action,show_notalways,vbar";
-            source: "elm";
-            script {
-               new v;
-               v = get_int(sbalways_v);
-               if (v) {
-                  set_int(sbalways_v, 0);
-                  v = get_int(sbvis_v);
-                  if (!v) {
-                     emit("do-hide-vbar", "");
-                     set_int(sbvis_v, 0);
-                  }
-               }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_1t.png";
             }
-         }       
-         program { name: "sb_vbar_show";
-            signal: "do-show-vbar";
-            source: "";
-            action:  STATE_SET "default" 0.0;
-            transition: LINEAR 1.0;
-            target: "sb_vbar_clip";
-         }
-         program { name: "sb_vbar_hide";
-            signal: "do-hide-vbar";
-            source: "";
-            action:  STATE_SET "hidden" 0.0;
-            transition: LINEAR 1.0;
-            target: "sb_vbar_clip";
-         }
-         program { name: "hbar_show";
-            signal: "elm,action,show,hbar";
-            source: "elm";
-            action:  STATE_SET "default" 0.0;
-            target: "sb_hbar_clip_master";
-         }
-         program { name: "hbar_hide";
-            signal: "elm,action,hide,hbar";
-            source: "elm";
-            action:  STATE_SET "hidden" 0.0;
-            target: "sb_hbar_clip_master";
-         }
-         program { name: "hbar_show_always";
-            signal: "elm,action,show_always,hbar";
-            source: "elm";
-            script {
-               new v;
-               v = get_int(sbvis_h);
-               v |= get_int(sbalways_h);
-               if (!v) {
-                  set_int(sbalways_h, 1);
-                  emit("do-show-hbar", "");
-                  set_int(sbvis_h, 1);
-               }
+            description { state: "1h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_1t.png";
             }
-         }
-         program { name: "hbar_show_notalways";
-            signal: "elm,action,show_notalways,hbar";
-            source: "elm";
-            script {
-               new v;
-               v = get_int(sbalways_h);
-               if (v) {
-                  set_int(sbalways_h, 0);
-                  v = get_int(sbvis_h);
-                  if (!v) {
-                     emit("do-hide-hbar", "");
-                     set_int(sbvis_h, 0);
-                  }
-               }
+            description { state: "2" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_2t.png";
             }
-         }
-         program { name: "sb_hbar_show";
-            signal: "do-show-hbar";
-            source: "";
-            action:  STATE_SET "default" 0.0;
-            transition: LINEAR 1.0;
-            target: "sb_hbar_clip";
-         }
-         program { name: "sb_hbar_hide";
-            signal: "do-hide-hbar";
-            source: "";
-            action:  STATE_SET "hidden" 0.0;
-            transition: LINEAR 1.0;
-            target: "sb_hbar_clip";
-         }                         
-         program { name: "scroll";
-            signal: "elm,action,scroll";
-            source: "elm";
-            script {
-               new v;
-               v = get_int(sbvis_v);
-               v |= get_int(sbalways_v);
-               if (!v) {
-                  emit("do-show-vbar", "")
-                  set_int(sbvis_v, 1);
-               }
-               v = get_int(sbvis_h);
-               v |= get_int(sbalways_h);
-               if (!v) {
-                  emit("do-show-hbar", "");
-                  set_int(sbvis_h, 1);
-               }
-               v = get_int(sbvis_timer);
-               if (v > 0) cancel_timer(v);
-               v = timer(1.0, "timer0", 0);
-               set_int(sbvis_timer, v);
+            description { state: "2h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_2t.png";
+            }
+            description { state: "3" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_3t.png";
+            }
+            description { state: "3h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_3t.png";
+            }
+            description { state: "4" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_4t.png";
+            }
+            description { state: "4h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_4t.png";
+            }
+            description { state: "5" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_5t.png";
+            }
+            description { state: "5h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_5t.png";
+            }
+            description { state: "6" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_6t.png";
+            }
+            description { state: "6h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_6t.png";
+            }
+            description { state: "7" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_7t.png";
+            }
+            description { state: "7h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_7t.png";
+            }
+            description { state: "8" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_8t.png";
+            }
+            description { state: "8h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_8t.png";
+            }
+            description { state: "9" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_9t.png";
+            }
+            description { state: "9h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_9t.png";
             }
          }
-         program { name: "highlight_show";
-            signal: "elm,action,focus_highlight,show";
-            source: "elm";
-            action: STATE_SET "enabled" 0.0;
-            transition: ACCELERATE 0.3;
-            target: "focus_highlight";
-          }
-         program { name: "highlight_hide";
-            signal: "elm,action,focus_highlight,hide";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            transition: DECELERATE 0.3;
-            target: "focus_highlight";
+         part { name: "atop";
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 0.0;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "arrow_up.png";
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
          }
-      }  
-   }  
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/ctxpopup/bg/default";
-      parts {
-         part { name: "ctxpopup_bg";
-            type: RECT;
-            mouse_events: 1;
+         part { name: "abot";
+            mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
-               color: 0 0 0 0;
+               visible: 0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 1.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "arrow_down.png";
             }
             description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               color: 0 0 0 64;
+               visible: 1;
             }
          }
       }
       programs {
-         program { name: "clicked_event";
-            signal: "mouse,clicked,1";
-            source: "ctxpopup_bg";
-            action: SIGNAL_EMIT "elm,action,click" "";
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               set_int(v0_cur, 0);
+               set_int(v0_pre, 0);
+               set_int(v0_lock, 0);
+               set_int(v0_next, -1);
+            }
          }
-         program { name: "show";
-            signal: "elm,state,show";
+         program { name: "edit_on";
+            signal: "elm,state,edit,on";
             source: "elm";
             action: STATE_SET "visible" 0.0;
-            target: "ctxpopup_bg";
+            target: "atop";
+            target: "abot";
+            target: "t";
+            target: "b";
          }
-         program { name: "hide";
-            signal: "elm,state,hide";
+         program { name: "edit_off";
+            signal: "elm,state,edit,off";
             source: "elm";
             action: STATE_SET "default" 0.0;
-            target: "ctxpopup_bg";
-         }       
+            target: "atop";
+            target: "abot";
+            target: "t";
+            target: "b";
+         }
+         program { name: "up";
+            signal: "mouse,down,1";
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,start" "";
+         }
+         program { name: "up,stop";
+            signal: "mouse,up,1";
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,stop" "";
+         }
+         program { name: "down";
+            signal: "mouse,down,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,start" "";
+         }
+         program { name: "down,stop";
+            signal: "mouse,up,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,stop" "";
+         }
       }
    }
+
 ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/ctxpopup/base/default";
+   group { name: "elm/clock/flipampm/default";
       images {
-         image: "bt_base2.png" COMP;
-         image: "bt_hilight.png" COMP;
-         image: "bt_shine.png" COMP;
+         image: "flip_base.png" COMP;
+         image: "flip_base_shad.png" COMP;
+         image: "flip_shad.png" COMP;
+         image: "flip_amt.png" COMP;
+         image: "flip_amb.png" COMP;
+         image: "flip_pmt.png" COMP;
+         image: "flip_pmb.png" COMP;
+         image: "arrow_up.png" COMP;
+         image: "arrow_down.png" COMP;
       }
-      parts {
-         part { name: "base";
-            scale: 1;
-            description { state: "default" 0.0;
-               rel1.offset: -3 -3;
-               rel2.offset: 3 3;
-               image { normal: "bt_base2.png";
-                  border: 7 7 7 7;
-               }
-            }
-         }
-         part { name: "over1";
-            scale: 1;
+      script {
+         public v0_cur, v0_pre, v0_lock, v0_next;
+
+       public animator2(val, Float:pos) {
+          new st1[11], st2[11], v;
+
+          v = get_int(v0_cur);
+          snprintf(st1, 10, "%ih", v);
+          snprintf(st2, 10, "%i", v);
+          set_tween_state(PART:"bot", pos, st1, 0.0, st2, 0.0);
+          set_tween_state(PART:"sh", pos, "half", 0.0, "full", 0.0);
+          if (pos >= 1.0) {
+             set_state(PART:"sh", "default", 0.0);
+             set_int(v0_lock, 0);
+             v = get_int(v0_next);
+             if (v >= 0) {
+                set_int(v0_next, -1);
+                message(MSG_INT, 1, v);
+             }
+          }
+       }
+       public animator1(val, Float:pos) {
+          new st1[11], st2[11], v;
+
+          v = get_int(v0_pre);
+          snprintf(st1, 10, "%i", v);
+          snprintf(st2, 10, "%ih", v);
+          set_tween_state(PART:"top", pos, st1, 0.0, st2, 0.0);
+          set_tween_state(PART:"sh", pos, "default", 0.0, "half", 0.0);
+          if (pos >= 1.0) anim(0.2, "animator2", val);
+       }
+       public message(Msg_Type:type, id, ...) {
+          if ((type == MSG_INT) && (id == 1)) {
+             new value, v, buf[11];
+
+             value = getarg(2);
+             if (get_int(v0_lock) == 1) {
+                set_int(v0_next, value);
+                return;
+             }
+             v = get_int(v0_cur);
+             set_int(v0_pre, v);
+             set_int(v0_cur, value);
+             set_int(v0_lock, 1);
+             snprintf(buf, 10, "%i", get_int(v0_pre));
+             set_state(PART:"bot0", buf, 0.0);
+             snprintf(buf, 10, "%ih", get_int(v0_cur));
+             set_state(PART:"bot", buf, 0.0);
+             snprintf(buf, 10, "%i", get_int(v0_cur));
+             set_state(PART:"top0", buf, 0.0);
+             snprintf(buf, 10, "%i", get_int(v0_pre));
+             set_state(PART:"top", buf, 0.0);
+             set_state(PART:"sh", "default", 0.0);
+             anim(0.2, "animator1", 1);
+          }
+       }
+      }
+      parts {
+         part { name: "shad";
+            mouse_events: 0;
             description { state: "default" 0.0;
+               rel1.offset: -4 -4;
                rel1.to: "base";
+               rel2.offset: 3 3;
                rel2.to: "base";
-               rel2.relative: 1.0 0.5;
-               image { normal: "bt_hilight.png";
-                  border: 7 7 7 0;
+               image {
+                  normal: "flip_base_shad.png";
+                  border: 8 8 8 8;
                }
             }
          }
-         part { name: "over2";
+         part { name: "base";
+            mouse_events: 0;
             scale: 1;
             description { state: "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               // FIXME 48x96 should be the native pixel design, right now
+               // its 80x160. fix int he artwork later
+               aspect: 0.5 0.5;
+               min: 24 48;
+//               max: 24 48;
+               image.normal: "flip_base.png";
+            }
+         }
+         part { name: "b";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
                rel1.to: "base";
+               rel1.relative: 0.0 0.5;
                rel2.to: "base";
-               image { normal: "bt_shine.png";
-                  border: 7 7 7 7;
-               }
+               color: 0 0 0 0;
             }
          }
-         part { name: "elm.swallow.content";
-            type: SWALLOW;
+         part { name: "t";
+            type: RECT;
+            mouse_events: 1;
             description { state: "default" 0.0;
-               rel1 { to:"base"; offset: 4 4; };
-               rel2 { to:"base"; offset: -5 -5; };
-            }
-         }                      
-      } 
-   } 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/ctxpopup/arrow/default";
-      images {
-         image: "icon_arrow_left.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_up.png" COMP;
-         image: "icon_arrow_down.png" COMP;
-      }
-      parts { 
-                       part { name: "ctxpopup_arrow";
-            type: IMAGE;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               min: 40 40;
-               fixed: 1 1;
-               visible: 0;
-               align: 0.5 0.5;
-            }
-            description {
-               state: "left" 0.0;
-               min: 40 40;
-               fixed: 1 1;
-               align: 0.0 0.5;
-               image { normal: "icon_arrow_left.png";
-               }
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               color: 0 0 0 0;
             }
-            description { state: "right" 0.0;
-               min: 40 40;
-               fixed: 1 1;
-               align: 1.0 0.5;
-               image { normal: "icon_arrow_right.png";                
-                                       }
+         }
+         part { name: "bot0";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_amb.png";
             }
-            description { state: "top" 0.0;
-               min: 40 40;
-               fixed: 1 1;
-               align: 0.5 0.0;
-               image { normal: "icon_arrow_up.png";
-               }
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_amb.png";
             }
-            description { state: "bottom" 0.0;
-               min: 40 40;
-               fixed: 1 1;
-               align: 0.5 1.0;
-               image { normal: "icon_arrow_down.png";
-               }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_pmb.png";
             }
          }
-      }
-      programs {
-         program { name: "enable_left_arrow";
-            signal: "elm,state,left";
-            source: "elm";
-            action: STATE_SET "left" 0.0;
-            target: "ctxpopup_arrow";
-         }
-         program { name: "enable_right_arrow";
-            signal: "elm,state,right";
-            source: "elm";
-            action: STATE_SET "right" 0.0;
-            target: "ctxpopup_arrow";
-         }
-         program { name: "enable_top_arrow";
-            signal: "elm,state,top";
-            source: "elm";
-            action: STATE_SET "top" 0.0;
-            target: "ctxpopup_arrow";
-         }
-         program { name: "enable_bottom_arrow";
-            signal: "elm,state,bottom";
-            source: "elm";
-            action: STATE_SET "bottom" 0.0;
-            target: "ctxpopup_arrow";
-         }
-      }
-   }
-///////////////////////////////////////////////////////////////////////////////
-   group { 
-      name: "elm/ctxpopup/icon_text_style_item/default";
-          alias: "elm/ctxpopup/text_style_item/default";
-          alias: "elm/ctxpopup/icon_style_item/default";
-      images {
-         image: "hoversel_entry_bg.png" COMP;
-      }
-      parts {
-         part { name: "event";
-            mouse_events: 1;
+         part { name: "sh";
+            mouse_events: 0;
             description { state: "default" 0.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_shad.png";
+            }
+            description { state: "half" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 0.5;
+            }
+            description { state: "full" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 1.0;
             }
          }
-         part { name: "bg";
+         part { name: "bot";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.offset: 2 2;
-               rel2.offset: -3 -3;
-               image { normal:"hoversel_entry_bg.png";
-                  border: 0 0 2 2;
-               }
-               fill.smooth: 0;
-               color: 255 255 255 0;
+               visible: 1;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_amb.png";
             }
-            description { state: "clicked" 0.0;
-               inherit: "default" 0.0; 
-               color: 255 255 255 255;
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_amb.png";
+            }
+            description { state: "0h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_amb.png";
+            }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel2.relative: 1.0 1.0;
+               image.normal: "flip_pmb.png";
+            }
+            description { state: "1h" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_pmb.png";
             }
          }
-         part { name: "elm.swallow.icon";
-            type: SWALLOW;
-            scale: 1;
+         part { name: "top0";
+            mouse_events: 0;
             description { state: "default" 0.0;
-               min: 25 25;
-               max: 25 25;              
-               align: 0 0.5;     
-               aspect: 1.0 1.0;
-               rel1 { offset: 10 10; }              
-                                       rel2 { offset: 0 -10; }
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_amt.png";
             }
-         }       
-         part { name: "elm.text";
-            type: TEXT;
+            description { state: "0" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_amt.png";
+            }
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "flip_pmt.png";
+            }
+         }
+         part { name: "top";
             mouse_events: 0;
-            scale: 1;
             description { state: "default" 0.0;
-               min: 1 40;
-               fixed: 0 1;
-               align: 0.5 0.5;
-               rel1 { relative: 1.0 0.0; to: "elm.swallow.icon"; offset: 10 0; }
-               rel2 { relative: 1.0 1.0; offset: -11 -1; }
-               color: 255 255 255 255;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  align: 0.0 0.5;
-                  min: 1 1;
-               }
+               visible: 1;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_amt.png";
             }
-            description { state: "clicked" 0.0;
+            description { state: "0" 0.0;
                inherit: "default" 0.0;
-               color: 0 0 0 255;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_amt.png";
             }
-         } 
-                       part { name: "over1";
-            mouse_events: 1;
-            repeat_events: 1;
-            ignore_flags: ON_HOLD;
-            description { state: "default" 0.0;
-               color: 255 255 255 0;
+            description { state: "0h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_amt.png";
             }
-            description { state: "clicked" 0.0;
-               inherit: "default" 0.0; 
-               color: 255 255 255 255;
+            description { state: "1" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               rel1.relative: 0.0 0.0;
+               image.normal: "flip_pmt.png";
+            }
+            description { state: "1h" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+               image.normal: "flip_pmt.png";
             }
          }
-         part { name: "over2";
-            mouse_events: 1;
-            repeat_events: 1;
+         part { name: "atop";
+            mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
-               color: 255 255 255 0;
+               visible: 0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 0.0;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "arrow_up.png";
             }
-            description { state: "clicked" 0.0;
-               inherit: "default" 0.0; 
-               color: 255 255 255 255;
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "disclip";
-            type: RECT;
+         part { name: "abot";
+            mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
                visible: 0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 1.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "arrow_down.png";
             }
-            description { state: "enabled" 0.0;
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
-               color: 50 50 50 127;
-               rel1.offset: 4 4;
-               rel2.offset: -5 -5;
             }
          }
       }
       programs {
-         program {
-            name: "item_unclick";
-            signal: "mouse,up,1";
-            source: "over1";
-            action: SIGNAL_EMIT "elm,action,click" "";
-         } 
-         program { name: "disable";
-            signal: "elm,state,disabled";
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               set_int(v0_cur, 0);
+               set_int(v0_pre, 0);
+               set_int(v0_lock, 0);
+               set_int(v0_next, -1);
+            }
+         }
+         program { name: "edit_on";
+            signal: "elm,state,edit,on";
             source: "elm";
-            action: STATE_SET "enabled" 0.0;
-            target: "disclip";
+            action: STATE_SET "visible" 0.0;
+            target: "atop";
+            target: "abot";
          }
-         program { name: "enable";
-            signal: "elm,state,enabled";
+/*
+         program { name: "edit_off";
+            signal: "elm,state,edit,off";
             source: "elm";
             action: STATE_SET "default" 0.0;
-            target: "disclip";
+            target: "atop";
+            target: "abot";
          }
-         program { name: "item_click2";
+ */
+         program { name: "up";
             signal: "mouse,down,1";
-            source: "over2";
-            script {
-               set_state(PART:"elm.text", "clicked", 0.0);
-               set_state(PART:"bg", "clicked", 0.0);
-            }
-         }  
-         program { name: "item_unclick2";
-            signal: "mouse,up,1";
-            source: "over2";
-            script { 
-                                       set_state(PART:"elm.text", "default", 0.0);
-               set_state(PART:"bg", "default", 0.0);
-            }  
-         }
-      }   
-   }   
-///////////////////////////////////////////////////////////////////////////////
-// emoticon images from:
-// Tanya - Latvia
-// http://lazycrazy.deviantart.com/
-// http://lazycrazy.deviantart.com/art/Very-Emotional-Emoticons-144461621
-  group { name: "elm/entry/emoticon/angry/default"; images.image:
-     "emo-angry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-angry.png"; } } } }
-  group { name: "elm/entry/emoticon/angry-shout/default"; images.image:
-     "emo-angry-shout.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-angry-shout.png"; } } } }
-  group { name: "elm/entry/emoticon/crazy-laugh/default"; images.image:
-     "emo-crazy-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-crazy-laugh.png"; } } } }
-  group { name: "elm/entry/emoticon/evil-laugh/default"; images.image:
-     "emo-evil-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-evil-laugh.png"; } } } }
-  group { name: "elm/entry/emoticon/evil/default"; images.image:
-     "emo-evil.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-evil.png"; } } } }
-  group { name: "elm/entry/emoticon/goggle-smile/default"; images.image:
-     "emo-goggle-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-goggle-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/grumpy/default"; images.image:
-     "emo-grumpy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-grumpy.png"; } } } }
-  group { name: "elm/entry/emoticon/grumpy-smile/default"; images.image:
-     "emo-grumpy-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-grumpy-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/guilty/default"; images.image:
-     "emo-guilty.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-guilty.png"; } } } }
-  group { name: "elm/entry/emoticon/guilty-smile/default"; images.image:
-     "emo-guilty-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-guilty-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/haha/default"; images.image:
-     "emo-haha.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-haha.png"; } } } }
-  group { name: "elm/entry/emoticon/half-smile/default"; images.image:
-     "emo-half-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-half-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/happy-panting/default"; images.image:
-     "emo-happy-panting.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-happy-panting.png"; } } } }
-  group { name: "elm/entry/emoticon/happy/default"; images.image:
-     "emo-happy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-happy.png"; } } } }
-  group { name: "elm/entry/emoticon/indifferent/default"; images.image:
-     "emo-indifferent.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-indifferent.png"; } } } }
-  group { name: "elm/entry/emoticon/kiss/default"; images.image:
-     "emo-kiss.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-kiss.png"; } } } }
-  group { name: "elm/entry/emoticon/knowing-grin/default"; images.image:
-     "emo-knowing-grin.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-knowing-grin.png"; } } } }
-  group { name: "elm/entry/emoticon/laugh/default"; images.image:
-     "emo-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-laugh.png"; } } } }
-  group { name: "elm/entry/emoticon/little-bit-sorry/default"; images.image:
-     "emo-little-bit-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-little-bit-sorry.png"; } } } }
-  group { name: "elm/entry/emoticon/love-lots/default"; images.image:
-     "emo-love-lots.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-love-lots.png"; } } } }
-  group { name: "elm/entry/emoticon/love/default"; images.image:
-     "emo-love.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-love.png"; } } } }
-  group { name: "elm/entry/emoticon/minimal-smile/default"; images.image:
-     "emo-minimal-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-minimal-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/not-happy/default"; images.image:
-     "emo-not-happy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-not-happy.png"; } } } }
-  group { name: "elm/entry/emoticon/not-impressed/default"; images.image:
-     "emo-not-impressed.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-not-impressed.png"; } } } }
-  group { name: "elm/entry/emoticon/omg/default"; images.image:
-     "emo-omg.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-omg.png"; } } } }
-  group { name: "elm/entry/emoticon/opensmile/default"; images.image:
-     "emo-opensmile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-opensmile.png"; } } } }
-  group { name: "elm/entry/emoticon/smile/default"; images.image:
-     "emo-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-smile.png"; } } } }
-  group { name: "elm/entry/emoticon/sorry/default"; images.image:
-     "emo-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-sorry.png"; } } } }
-  group { name: "elm/entry/emoticon/squint-laugh/default"; images.image:
-     "emo-squint-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-squint-laugh.png"; } } } }
-  group { name: "elm/entry/emoticon/surprised/default"; images.image:
-     "emo-surprised.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-surprised.png"; } } } }
-  group { name: "elm/entry/emoticon/suspicious/default"; images.image:
-     "emo-suspicious.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-suspicious.png"; } } } }
-  group { name: "elm/entry/emoticon/tongue-dangling/default"; images.image:
-     "emo-tongue-dangling.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-tongue-dangling.png"; } } } }
-  group { name: "elm/entry/emoticon/tongue-poke/default"; images.image:
-     "emo-tongue-poke.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-tongue-poke.png"; } } } }
-  group { name: "elm/entry/emoticon/uh/default"; images.image:
-     "emo-uh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-uh.png"; } } } }
-  group { name: "elm/entry/emoticon/unhappy/default"; images.image:
-     "emo-unhappy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-unhappy.png"; } } } }
-  group { name: "elm/entry/emoticon/very-sorry/default"; images.image:
-     "emo-very-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-very-sorry.png"; } } } }
-  group { name: "elm/entry/emoticon/what/default"; images.image:
-     "emo-what.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-what.png"; } } } }
-  group { name: "elm/entry/emoticon/wink/default"; images.image:
-     "emo-wink.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-wink.png"; } } } }
-  group { name: "elm/entry/emoticon/worried/default"; images.image:
-     "emo-worried.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-worried.png"; } } } }
-  group { name: "elm/entry/emoticon/wtf/default"; images.image:
-     "emo-wtf.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
-        "emo-wtf.png"; } } } }
-//------------------------------------------------------------
-   group { name: "elm/entry/base/default";
-      styles
-      {
-         style { name: "entry_textblock_style";
-            base: "font=Sans font_size=10 color=#000 wrap=word text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-         style { name: "entry_textblock_disabled_style";
-            base: "font=Sans font_size=10 color=#00000080 wrap=word text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-      }
-      data {
-//         item: context_menu_orientation "horizontal";
-      }
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: EDITABLE;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-   //       source2: "X"; // selection over
-   //       source3: "X"; // cursor under
-            source4: "elm/entry/cursor/default"; // cursorover
-            source5: "elm/entry/anchor/default"; // anchor under
-   //       source6: "X"; // anchor over
-            description { state: "default" 0.0;
-               /* we gotta use 0 0 here, because of scrolled entries */
-               fixed: 0 0;
-               text {
-                  style: "entry_textblock_style";
-                  min: 0 1;
-               }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style";
-                  min: 0 1;
-               }
-            }
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,start" "";
          }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
+         program { name: "up,stop";
+            signal: "mouse,up,1";
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,stop" "";
          }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
+         program { name: "down";
+            signal: "mouse,down,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,start" "";
          }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
+         program { name: "down,stop";
+            signal: "mouse,up,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,stop" "";
          }
       }
    }
 
-   group { name: "elm/entry/base-charwrap/default";
-      styles
-      {
-         style { name: "entry_textblock_style_charwrap";
-            base: "font=Sans font_size=10 color=#000 wrap=char text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-         style { name: "entry_textblock_disabled_style_charwrap";
-            base: "font=Sans font_size=10 color=#00000080 wrap=char text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-      }
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: EDITABLE;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-//          source2: "X"; // selection over
-//          source3: "X"; // cursor under
-            source4: "elm/entry/cursor/default"; // cursorover
-            source5: "elm/entry/anchor/default"; // anchor under
-//          source6: "X"; // anchor over
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               text {
-                  style: "entry_textblock_style_charwrap";
-                  min: 0 1;
+   ///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/menu/item/default";
+       images {
+           image: "bt_base1.png" COMP;
+           image: "bt_base2.png" COMP;
+           image: "bt_hilight.png" COMP;
+           image: "bt_shine.png" COMP;
+           image: "bt_glow.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       script {
+            public menu_text_visible; //0:hide (default), 1:visible
+            public menu_disable; //0:enable, 1:disable
+       }
+       parts {
+           part { name: "item_image";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_base2.png";
+                       border: 7 7 7 7;
+                   }
+                   image.middle: SOLID;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style_charwrap";
-                  min: 0 1;
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 255 255 255 255;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-nowrap/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: EDITABLE;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-            source4: "elm/entry/cursor/default"; // cursorover
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               text {
-                  style: "entry_textblock_style";
-                  min: 1 1;
+               description { state: "clicked" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   image.normal: "bt_base1.png";
+                   image.middle: SOLID;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style";
-                  min: 0 1;
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
                }
-            }
-         }
-/*
-         part { name: "sel";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               align: 1.0 1.0;
-               max: 16 16;
-               aspect: 1.0 1.0;
-               color: 255 0 0 0;
-            }
-            description { state: "visible" 0.0;
-               inherit: "default" 0.0;
-               color: 255 0 0 50;
-            }
-         }
- */
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-/*
-         program { name: "selmode0";
-            signal: "elm,state,select,on";
-            source: "elm";
-            action: STATE_SET "visible" 0.0;
-            target: "sel";
-         }
-         program { name: "selmode1";
-            signal: "elm,state,select,off";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "sel";
-         }
- */
-      }
-   }
-
-   group { name: "elm/entry/base-single/default";
-      styles
-      {
-         style { name: "entry_single_textblock_style";
-            base: "font=Sans font_size=10 color=#000 wrap=none text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-         style { name: "entry_single_textblock_disabled_style";
-            base: "font=Sans font_size=10 color=#00000080 wrap=none text_class=entry";
-            tag:  "br" "\n";
-            tag:  "ps" "ps";
-            tag:  "tab" "\t";
-            tag:  "em" "+ font=Sans:style=Oblique";
-            tag:  "b" "+ font=Sans:style=Bold";
-            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
-            tag:  "hilight" "+ font=Sans:style=Bold";
-         }
-      }
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: EDITABLE;
-            select_mode: EXPLICIT;
-            multiline: 0;
-            source: "elm/entry/selection/default"; // selection under
-            source4: "elm/entry/cursor/default"; // cursorover
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               text {
-                  style: "entry_single_textblock_style";
-                  min: 1 1;
-                  max: 0 1;
+           }
+           part { name: "item_image_disabled";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_single_textblock_disabled_style";
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-single-noedit/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: PLAIN;
-            select_mode: EXPLICIT;
-            multiline: 0;
-            source: "elm/entry/selection/default"; // selection under
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               text {
-                  style: "entry_single_textblock_style";
-                  min: 1 1;
-                  max: 0 1;
-               }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-               style: "entry_single_textblock_disabled_style";
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   visible: 1;
+                   align: 0.0 0.5;
+                   rel1.offset: 4 4;
+                   rel2.offset: 3 -5;
+                   rel2.relative: 0.0 1.0;
+                   aspect: 1.0 1.0;
+                   aspect_preference: VERTICAL;
+                   rel2.offset: 4 -5;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-noedit/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: PLAIN;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               text {
-                  style: "entry_textblock_style";
-                  min: 0 1;
+           }
+           part {
+               name:          "elm.text";
+               type:          TEXT;
+               mouse_events:  0;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   rel1.to_x: "elm.swallow.content";
+                   rel1.relative: 1.0 0.0;
+                   rel1.offset: 5 7;
+                   rel2.offset: -10 -8;
+                   color: 0 0 0 255;
+                   text {
+                       font:     "Sans,Edje-Vera";
+                       size:     10;
+                       min:      1 1;
+                       align:    0.0 0.5;
+                       text_class: "menu_item";
+                   }
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style";
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   text.min: 1 1;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-noedit-charwrap/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: PLAIN;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               text {
-                  style: "entry_textblock_style_charwrap";
-                  min: 0 1;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   color: 254 254 254 255;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style_charwrap";
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-nowrap-noedit/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: PLAIN;
-            select_mode: EXPLICIT;
-            multiline: 1;
-            source: "elm/entry/selection/default"; // selection under
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               text {
-                  style: "entry_textblock_style";
-                  min: 1 1;
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   color: 0 0 0 128;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_textblock_disabled_style";
+           }
+           part {          name: "over1";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_hilight.png";
+                       border: 7 7 7 0;
+                   }
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
-   }
-
-   group { name: "elm/entry/base-password/default";
-      parts {
-         part { name: "elm.text";
-            type: TEXTBLOCK;
-            mouse_events: 1;
-            scale: 1;
-            entry_mode: PASSWORD;
-            select_mode: EXPLICIT;
-            multiline: 0;
-            source: "elm/entry/selection/default"; // selection under
-            source4: "elm/entry/cursor/default"; // cursorover
-            source5: "elm/entry/anchor/default"; // anchor under
-            description { state: "default" 0.0;
-               text {
-                  style: "entry_single_textblock_style";
-                  repch: "*";
-                  min: 1 1;
-                  max: 0 1;
+               description { state: "visible" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
                }
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "entry_single_textblock_disabled_style";
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
                }
-            }
-         }
-      }
-      programs {
-         program { name: "focus";
-            signal: "load";
-            source: "";
-            action: FOCUS_SET;
-            target: "elm.text";
-         }
-         program { name: "disable";
-            signal: "elm,state,disabled";
-            source: "elm";
-            action: STATE_SET "disabled" 0.0;
-            target: "elm.text";
-         }
-         program { name: "enable";
-            signal: "elm,state,enabled";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "elm.text";
-         }
-      }
+           }
+           part {          name: "over_disabled";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
+               }
+           }
+           part { name: "over2";
+               mouse_events: 1;
+               repeat_events: 1;
+               ignore_flags: ON_HOLD;
+               description { state: "default" 0.0;
+                   image {
+                       normal: "bt_shine.png";
+                       border: 7 7 7 7;
+                   }
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   visible: 0;
+               }
+           }
+           part { name: "over3";
+               mouse_events: 1;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_glow.png";
+                       border: 12 12 12 12;
+                   }
+                   fill.smooth : 0;
+               }
+               description { state: "clicked" 0.0;
+                   inherit:  "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+               }
+           }
+           part { name: "disabler";
+               type: RECT;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   visible: 0;
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+               }
+           }
+       }
+       programs {
+          //
+           program {
+               name:   "item_mouse_in";
+               signal: "mouse,in";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,activate" "";
+               after: "item_mouse_in_2";
+               after: "item_mouse_in_3";
+           }
+           program {
+               name:   "item_mouse_in_2";
+               transition: DECELERATE 0.5;
+               script {
+                   new v, d;
+                   v = get_int(menu_text_visible);
+                   d = get_int(menu_disable);
+
+                   if (v==1 && d==0)
+                        run_program(PROGRAM:"selected_text");
+               }
+           }
+           program {
+               name:   "item_mouse_in_3";
+               action : STATE_SET "visible" 0.0;
+               target: "item_image";
+               target: "over1";
+               transition: DECELERATE 0.5;
+           }
+           program {
+               name:   "selected_text";
+               action: STATE_SET "selected" 0.0;
+               target: "elm.text";
+               transition: DECELERATE 0.5;
+           }
+           //
+
+           //
+           program {
+               name:   "item_mouse_out";
+               signal: "mouse,out";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,inactivate" "";
+               after: "item_mouse_out_2";
+               after: "item_mouse_out_3";
+           }
+           program {
+               name:   "item_mouse_out_2";
+               transition: DECELERATE 0.5;
+               script {
+                   new v, d;
+                   v = get_int(menu_text_visible);
+                   d = get_int(menu_disable);
+
+                   if (v==1 && d==0)
+                        run_program(PROGRAM:"visible_text");
+               }
+           }
+           program {
+               name:   "item_mouse_out_3";
+               action: STATE_SET "default" 0.0;
+               target: "item_image";
+               target: "over1";
+               transition: DECELERATE 0.5;
+           }
+           program {
+               name:   "visible_text";
+               action: STATE_SET "visible" 0.0;
+               target: "elm.text";
+               transition: DECELERATE 0.5;
+           }
+           //
+
+           program {
+               name:   "item_unclick";
+               signal: "mouse,up,1";
+               source: "over2";
+               action: STATE_SET "visible" 0.0;
+               target: "item_image";
+           }
+           program {
+               name:   "item_click2";
+               signal: "mouse,down,1";
+               source: "over3";
+               action: STATE_SET "clicked" 0.0;
+               target: "over3";
+           }
+           program {
+               name:   "item_unclick2";
+               signal: "mouse,up,1";
+               source: "over3";
+               action: STATE_SET "default" 0.0;
+               transition: DECELERATE 0.5;
+               target: "over3";
+           }
+           program {
+               name:   "item_unclick3";
+               signal: "mouse,up,1";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,click" "";
+           }
+           program { name: "text_show";
+               signal: "elm,state,text,visible";
+               source: "elm";
+               script {
+                   set_int(menu_text_visible, 1);
+                   set_state(PART:"elm.text", "visible", 0.0);
+               }
+           }
+           program { name: "text_hide";
+               signal: "elm,state,text,hidden";
+               source: "elm";
+               script {
+                   set_int(menu_text_visible, 0);
+                   set_state(PART:"elm.text", "default", 0.0);
+               }
+           }
+           program { name: "disable";
+               signal: "elm,state,disabled";
+               source: "elm";
+               action: STATE_SET "disabled" 0.0;
+               target: "item_image";
+               target: "item_image_disabled";
+               target: "over1";
+               target: "over2";
+               target: "over_disabled";
+               target: "disabler";
+               after: "disable_text";
+           }
+           program { name: "disable_text";
+               script {
+                   new v;
+                   v = get_int(menu_text_visible);
+                   if (v==1)
+                    set_state(PART:"elm.text", "disabled_visible", 0.0);
+                   else if (v==0)
+                    set_state(PART:"elm.text", "disabled", 0.0);
+                   set_int(menu_disable, 1);
+               }
+           }
+           program { name: "item_select";
+               signal: "elm,state,selected";
+               source: "elm";
+               after: "item_mouse_in_2";
+               after: "item_mouse_in_3";
+           }
+           program { name: "item_unselect";
+               signal: "elm,state,unselected";
+               source: "elm";
+               after: "item_mouse_out_2";
+               after: "item_mouse_out_3";
+           }
+           program { name: "enable";
+               signal: "elm,state,enabled";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "item_image";
+               target: "item_image_disabled";
+               target: "over1";
+               target: "over2";
+               target: "over_disabled";
+               target: "disabler";
+               after: "enable_text";
+           }
+           program { name: "enable_text";
+               script {
+                   new v;
+                   v = get_int(menu_text_visible);
+                   if (v==1)
+                    set_state(PART:"elm.text", "visible", 0.0);
+                   else  if (v==0)
+                    set_state(PART:"elm.text", "default", 0.0);
+                   set_int(menu_disable, 0);
+               }
+           }
+       }
    }
 
-   group { name: "elm/entry/cursor/default";
-      images {
-         image: "cur_box.png" COMP;
-         image: "cur_hi.png" COMP;
-         image: "cur_shad.png" COMP;
-         image: "cur_shine.png" COMP;
-         image: "cur_glow.png" COMP;
+   group { name: "elm/menu/item_with_submenu/default";
+       images {
+           image: "bt_base1.png" COMP;
+           image: "bt_base2.png" COMP;
+           image: "bt_hilight.png" COMP;
+           image: "bt_shine.png" COMP;
+           image: "bt_glow.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+           image: "arrow_right.png" COMP;
+           image: "arrow_left.png" COMP;
+       }
+       script {
+            public menu_text_visible; //0:hide (default), 1:visible
+            public menu_disable; //0:enable, 1:disable
+       }
+       parts {
+           part { name: "item_image";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_base2.png";
+                       border: 7 7 7 7;
+                   }
+                   image.middle: SOLID;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 255 255 255 255;
+               }
+               description { state: "clicked" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   image.normal: "bt_base1.png";
+                   image.middle: SOLID;
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+               }
+           }
+           part { name: "item_image_disabled";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
+               }
+           }
+           part { name: "arrow";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 255;
+                   align: 1.0 0.5;
+                   aspect: 1 1;
+                   aspect_preference: BOTH;
+                   image {
+                       normal: "arrow_right.png";
+                   }
+               }
+               description { state: "rtl" 0.0;
+                  inherit: "default" 0.0;
+                  image.normal: "arrow_left.png";
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   visible: 1;
+                   align: 0.0 0.5;
+                   rel1.offset: 4 4;
+                   rel2.offset: 3 -5;
+                   rel2.relative: 0.0 1.0;
+                   aspect: 1.0 1.0;
+                   aspect_preference: VERTICAL;
+                   rel2.offset: 4 -5;
+               }
+           }
+           part {
+               name:          "elm.text";
+               type:          TEXT;
+               mouse_events:  0;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   rel1.to_x: "elm.swallow.content";
+                   rel1.relative: 1.0 0.0;
+                   rel1.offset: 5 7;
+                   rel2.offset: -10 -8;
+                   color: 0 0 0 255;
+                   text {
+                       font:     "Sans,Edje-Vera";
+                       size:     10;
+                       min:      1 1;
+                       align:    0.0 0.5;
+                       text_class: "menu_item";
+                   }
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   text.min: 1 1;
+               }
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   color: 254 254 254 255;
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+               }
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   inherit: "visible" 0.0;
+                   color: 0 0 0 128;
+               }
+           }
+           part {          name: "over1";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_hilight.png";
+                       border: 7 7 7 0;
+                   }
+               }
+               description { state: "visible" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+               }
+           }
+           part { name: "over_disabled";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   color: 255 255 255 255;
+               }
+           }
+           part { name: "over2";
+               mouse_events: 1;
+               repeat_events: 1;
+               ignore_flags: ON_HOLD;
+               description { state: "default" 0.0;
+                   image {
+                       normal: "bt_shine.png";
+                       border: 7 7 7 7;
+                   }
+               }
+               description { state: "disabled" 0.0;
+                   inherit:  "default" 0.0;
+                   visible: 0;
+               }
+           }
+           part { name: "over3";
+               mouse_events: 1;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 255 255 255 0;
+                   image {
+                       normal: "bt_glow.png";
+                       border: 12 12 12 12;
+                   }
+                   fill.smooth : 0;
+               }
+               description { state: "clicked" 0.0;
+                   inherit:  "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+               }
+           }
+           part { name: "disabler";
+               type: RECT;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   visible: 0;
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+               }
+           }
+       }
+       programs {
+           //
+           program {
+               name:   "item_mouse_in";
+               signal: "mouse,in";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,activate" "";
+               after: "item_mouse_in_2";
+               after: "item_mouse_in_3";
+           }
+           program {
+               name:   "item_mouse_in_2";
+               transition: DECELERATE 0.5;
+               script {
+                   new v, d;
+                   v = get_int(menu_text_visible);
+                   d = get_int(menu_disable);
+
+                   if (v==1 && d==0)
+                        run_program(PROGRAM:"selected_text");
+               }
+           }
+           program {
+               name:   "item_mouse_in_3";
+               action : STATE_SET "visible" 0.0;
+               target: "item_image";
+               target: "over1";
+               transition: DECELERATE 0.5;
+           }
+           program {
+               name:   "selected_text";
+               action: STATE_SET "selected" 0.0;
+               target: "elm.text";
+               transition: DECELERATE 0.5;
+           }
+           //
+
+           //
+           program {
+               name:   "item_mouse_out";
+               signal: "mouse,out";
+               source: "over2";
+               after: "item_mouse_out_2";
+               after: "item_mouse_out_3";
+           }
+           program {
+               name:   "item_mouse_out_2";
+               transition: DECELERATE 0.5;
+               script {
+                   new v, d;
+                   v = get_int(menu_text_visible);
+                   d = get_int(menu_disable);
+
+                   if (v==1 && d==0)
+                        run_program(PROGRAM:"visible_text");
+               }
+           }
+           program {
+               name:   "item_mouse_out_3";
+               action: STATE_SET "default" 0.0;
+               target: "item_image";
+               target: "over1";
+               transition: DECELERATE 0.5;
+           }
+           program {
+               name:   "visible_text";
+               action: STATE_SET "visible" 0.0;
+               target: "elm.text";
+               transition: DECELERATE 0.5;
+           }
+           //
+
+           program {
+               name:   "item_unclick";
+               signal: "mouse,up,1";
+               source: "over2";
+               action: STATE_SET "visible" 0.0;
+               target: "item_image";
+           }
+           program {
+               name:   "item_click2";
+               signal: "mouse,down,1";
+               source: "over3";
+               action: STATE_SET "clicked" 0.0;
+               target: "over3";
+           }
+           program {
+               name:   "item_unclick2";
+               signal: "mouse,up,1";
+               source: "over3";
+               action: STATE_SET "default" 0.0;
+               transition: DECELERATE 0.5;
+               target: "over3";
+           }
+           program {
+               name:   "item_unclick3";
+               signal: "mouse,up,1";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,click" "";
+           }
+           program {
+               name:   "menu_open";
+               signal: "mouse,in";
+               source: "over2";
+               action: SIGNAL_EMIT "elm,action,open" "";
+           }
+            program { name: "text_show";
+               signal: "elm,state,text,visible";
+               source: "elm";
+               script {
+                   set_int(menu_text_visible, 1);
+                   set_state(PART:"elm.text", "visible", 0.0);
+               }
+           }
+           program { name: "text_hide";
+               signal: "elm,state,text,hidden";
+               source: "elm";
+               script {
+                   set_int(menu_text_visible, 0);
+                   set_state(PART:"elm.text", "default", 0.0);
+               }
+           }
+           program { name: "disable";
+               signal: "elm,state,disabled";
+               source: "elm";
+               action: STATE_SET "disabled" 0.0;
+               target: "item_image";
+               target: "item_image_disabled";
+               target: "over1";
+               target: "over2";
+               target: "over_disabled";
+               target: "disabler";
+               after: "disable_text";
+           }
+           program { name: "disable_text";
+               script {
+                   new st[31];
+                   new Float:vl;
+                   get_state(PART:"elm.text", st, 30, vl);
+                   if (!strcmp(st, "visible"))
+                   set_state(PART:"elm.text", "disabled_visible", 0.0);
+                   else if (!strcmp(st, "default"))
+                   set_state(PART:"elm.text", "disabled", 0.0);
+               }
+           }
+           program { name: "enable";
+               signal: "elm,state,enabled";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "item_image";
+               target: "item_image_disabled";
+               target: "over1";
+               target: "over2";
+               target: "over_disabled";
+               target: "disabler";
+               after: "enable_text";
+           }
+           program { name: "enable_text";
+               script {
+                   new v;
+                   v = get_int(menu_text_visible);
+                   if (v==1)
+                    set_state(PART:"elm.text", "visible", 0.0);
+                   else  if (v==0)
+                    set_state(PART:"elm.text", "default", 0.0);
+                   set_int(menu_disable, 0);
+               }
+           }
+           program { name: "to_rtl";
+               signal: "edje,state,rtl";
+               source: "edje";
+               action: STATE_SET "rtl" 0.0;
+               target: "arrow";
+           }
+           program { name: "to_ltr";
+               signal: "edje,state,ltr";
+               source: "edje";
+               action: STATE_SET "default" 0.0;
+               target: "arrow";
+           }
+       }
+   }
+
+   group { name: "elm/menu/separator/default";
+       images {
+           image: "separator_h.png" COMP;
+       }
+       parts {
+           part { name: "separator"; // separator group
+               description { state: "default" 0.0;
+                   min: 2 2;
+                   rel1.offset: 4 4;
+                   rel2.offset: -5 -5;
+                   image {
+                       normal: "separator_h.png";
+                   }
+                   fill {
+                       smooth: 0;
+                   }
+               }
+           }
+       }
+   }
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/clock/base-all/default";
+      parts {
+         part { name: "d0";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.0000000 0.0;
+               rel2.relative: 0.1250000 1.0;
+            }
+         }
+         part { name: "d1";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.1250000 0.0;
+               rel2.relative: 0.2500000 1.0;
+            }
+         }
+         part { name: "c0";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.2500000 0.0;
+               rel2.relative: 0.3125000 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         part { name: "d2";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.3125000 0.0;
+               rel2.relative: 0.4375000 1.0;
+            }
+         }
+         part { name: "d3";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.4375000 0.0;
+               rel2.relative: 0.5625000 1.0;
+            }
+         }
+         // (if seconds)
+         part { name: "c1";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.5625000 0.0;
+               rel2.relative: 0.6250000 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         // (if seconds)
+         part { name: "d4";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.6250000 0.0;
+               rel2.relative: 0.7500000 1.0;
+            }
+         }
+         // (if seconds)
+         part { name: "d5";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.7500000 0.0;
+               rel2.relative: 0.8750000 1.0;
+            }
+         }
+         // (if am_pm)
+         part { name: "ampm";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.8750000 0.0;
+               rel2.relative: 1.0 1.0;
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/clock/base-seconds/default";
+      parts {
+         part { name: "d0";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.000000000 0.0;
+               rel2.relative: 0.142857143 1.0;
+            }
+         }
+         part { name: "d1";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.142857143 0.0;
+               rel2.relative: 0.285714286 1.0;
+            }
+         }
+         part { name: "c0";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.285714286 0.0;
+               rel2.relative: 0.357142857 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         part { name: "d2";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.357142857 0.0;
+               rel2.relative: 0.500000000 1.0;
+            }
+         }
+         part { name: "d3";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.500000000 0.0;
+               rel2.relative: 0.642857143 1.0;
+            }
+         }
+         // (if seconds)
+         part { name: "c1";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.642857143 0.0;
+               rel2.relative: 0.714285714 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         // (if seconds)
+         part { name: "d4";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.714285714 0.0;
+               rel2.relative: 0.857142857 1.0;
+            }
+         }
+         // (if seconds)
+         part { name: "d5";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.857142857 0.0;
+               rel2.relative: 1.000000000 1.0;
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/clock/base-am_pm/default";
+      parts {
+         part { name: "d0";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.000000000 0.0;
+               rel2.relative: 0.181818182 1.0;
+            }
+         }
+         part { name: "d1";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.181818182 0.0;
+               rel2.relative: 0.363636364 1.0;
+            }
+         }
+         part { name: "c0";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.363636364 0.0;
+               rel2.relative: 0.454545455 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         part { name: "d2";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.454545455 0.0;
+               rel2.relative: 0.636363636 1.0;
+            }
+         }
+         part { name: "d3";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.636363636 0.0;
+               rel2.relative: 0.818181818 1.0;
+            }
+         }
+         // (if am_pm)
+         part { name: "ampm";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.818181818 0.0;
+               rel2.relative: 1.0 1.0;
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/clock/base/default";
+      parts {
+         part { name: "d0";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.000000000 0.0;
+               rel2.relative: 0.222222222 1.0;
+            }
+         }
+         part { name: "d1";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.222222222 0.0;
+               rel2.relative: 0.444444444 1.0;
+            }
+         }
+         part { name: "c0";
+            type: SWALLOW;
+            type: TEXT;
+            mouse_events:  0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.relative: 0.444444444 0.0;
+               rel2.relative: 0.555555556 1.0;
+               color: 0 0 0 255;
+               text {
+                  font:     "Sans,Edje-Vera";
+                  text:     ":";
+                  size:     10;
+                  min:      1 1;
+                  align:    0.5 0.5;
+               }
+            }
+         }
+         part { name: "d2";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.555555556 0.0;
+               rel2.relative: 0.777777778 1.0;
+            }
+         }
+         part { name: "d3";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.777777778 0.0;
+               rel2.relative: 1.000000000 1.0;
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/frame/base/default";
+       images {
+           image: "frame_1.png" COMP;
+           image: "frame_2.png" COMP;
+           image: "dia_grad.png" COMP;
+       }
+       parts {
+           part { name: "base0";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "dia_grad.png";
+                   rel1.to: "over";
+                   rel2.to: "over";
+                   fill {
+                       smooth: 0;
+                       size {
+                           relative: 0.0 1.0;
+                           offset: 64 0;
+                       }
+                   }
+               }
+           }
+           part { name: "base";
+               mouse_events:  0;
+               description { state:    "default" 0.0;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 9 9;
+                   image {
+                       normal: "frame_2.png";
+                       border: 5 5 32 26;
+                       middle: 0;
+                   }
+                   fill.smooth : 0;
+               }
+           }
+           part { name: "elm.text";
+               type: TEXT;
+               mouse_events:   0;
+               scale: 1;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   fixed: 0 1;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: 6 6;
+                   }
+                   rel2 {
+                       relative: 1.0 0.0;
+                       offset: -7 6;
+                   }
+                   color: 0 0 0 64;
+                   text {
+                       font: "Sans:style=Bold,Edje-Vera-Bold";
+                       size: 10;
+                       min: 1 1;
+                       max: 1 1;
+                       align: 0.0 0.0;
+                   }
+               }
+           }
+           part { name: "over";
+               mouse_events:  0;
+               description { state:    "default" 0.0;
+                   rel1.offset: 4 4;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 5 5;
+                   image {
+                       normal: "frame_1.png";
+                       border: 2 2 28 22;
+                       middle: 0;
+                   }
+                   fill.smooth : 0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   rel1 {
+                       to_y: "elm.text";
+                       relative: 0.0 1.0;
+                       offset: 8 2;
+                   }
+                   rel2.offset: -9 -9;
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/pad_small";
+       parts {
+           part { name: "b0";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 4 4;
+                   max: 4 4;
+                   align: 0.0 0.0;
+               }
+           }
+           part { name: "b1";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 4 4;
+                   max: 4 4;
+                   align: 1.0 1.0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1 {
+                       to: "b0";
+                       relative: 1.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "b1";
+                       relative: 0.0 0.0;
+                       offset: -1 -1;
+                   }
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/pad_medium";
+       parts {
+           part { name: "b0";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 8 8;
+                   max: 8 8;
+                   align: 0.0 0.0;
+               }
+           }
+           part { name: "b1";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 8 8;
+                   max: 8 8;
+                   align: 1.0 1.0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1 {
+                       to: "b0";
+                       relative: 1.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "b1";
+                       relative: 0.0 0.0;
+                       offset: -1 -1;
+                   }
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/pad_large";
+       parts {
+           part { name: "b0";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 16 16;
+                   max: 16 16;
+                   align: 0.0 0.0;
+               }
+           }
+           part { name: "b1";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 16 16;
+                   max: 16 16;
+                   align: 1.0 1.0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1 {
+                       to: "b0";
+                       relative: 1.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "b1";
+                       relative: 0.0 0.0;
+                       offset: -1 -1;
+                   }
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/pad_huge";
+       parts {
+           part { name: "b0";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 32 32;
+                   max: 32 32;
+                   align: 0.0 0.0;
+               }
+           }
+           part { name: "b1";
+               mouse_events:  0;
+               type: RECT;
+               scale: 1;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   min: 32 32;
+                   max: 32 32;
+                   align: 1.0 1.0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1 {
+                       to: "b0";
+                       relative: 1.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "b1";
+                       relative: 0.0 0.0;
+                       offset: -1 -1;
+                   }
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/outdent_top";
+       images {
+           image: "outdent-top.png" COMP;
+       }
+       parts {
+           part { name: "base0";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "outdent-top.png";
+                   image.border: 0 0 0 13;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.offset: 2 2;
+                   rel2.offset: -3 -13;
+               }
+           }
+       }
+   }
+
+   group { name: "elm/frame/base/outdent_bottom";
+       images {
+           image: "outdent-bottom.png" COMP;
+       }
+       parts {
+           part { name: "base0";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "outdent-bottom.png";
+                   image.border: 0 0 13 0;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.offset: 2 12;
+                   rel2.offset: -3 -3;
+               }
+           }
+       }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   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=Sans:style=Bold";
+            tag:  "b" "+ font=Sans:style=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";
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            mouse_events:   0;
+            scale: 1;
+            description { state: "default" 0.0; }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+
+   /* TODO: replicate diagonal swallow slots to the other hover styles */
+   group { name: "elm/hover/base/default";
+      images {
+         image: "shad_circ.png" COMP;
       }
       parts {
-         part { name: "clip2";
+         part { name: "elm.swallow.offset";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 0.0;
+            }
+         }
+         part { name: "elm.swallow.size";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.to: "elm.swallow.offset";
+               rel1.relative: 1.0 1.0;
+               rel2.to: "elm.swallow.offset";
+               rel2.relative: 1.0 1.0;
+            }
+         }
+         part { name: "base";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 64;
+            }
+         }
+         part { name: "shad";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "shad_circ.png";
+               rel1.to: "elm.swallow.size";
+               rel1.offset: -32 -32;
+               rel2.to: "elm.swallow.size";
+               rel2.offset: 31 31;
+               fill.smooth: 0;
+            }
+         }
+         part { name: "box";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               rel1.to: "elm.swallow.size";
+               rel1.offset: -2 -2;
+               rel2.to: "elm.swallow.size";
+               rel2.offset: 1 1;
+            }
+         }
+         part { name: "elm.swallow.slot.left";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 0.5;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: -1 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: -1 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.top-left";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 1.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 0.0 0.0;
+               rel2.offset: -1 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.top";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.5 1.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: 0 -1;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.top-right";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 1.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.right";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.5;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: 0 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.bottom-right";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 1.0 1.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 -1;
+            }
+         }
+         part { name: "elm.swallow.slot.bottom";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.5 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 0;
+            }
+         }
+         part { name: "elm.swallow.slot.bottom-left";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: -1 0;
+            }
+         }
+         part { name: "elm.swallow.slot.middle";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.size";
+               rel2.to: "elm.swallow.size";
+            }
+         }
+      }
+      programs {
+         program { name: "end";
+            signal: "mouse,up,1";
+            source: "base";
+            action: SIGNAL_EMIT "elm,action,dismiss" "";
+         }
+      }
+   }
+
+   group { name: "elm/hover/base/popout";
+      images {
+         image: "shad_circ.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "elm.swallow.offset";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 0.0;
+            }
+         }
+         part { name: "elm.swallow.size";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.to: "elm.swallow.offset";
+               rel1.relative: 1.0 1.0;
+               rel2.to: "elm.swallow.offset";
+               rel2.relative: 1.0 1.0;
+            }
+         }
+         part { name: "base";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 1.0;
+               color: 0 0 0 64;
+            }
+         }
+         part { name: "leftclip";
             type: RECT;
-            mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "clip";
-               rel2.to: "clip";
+               rel2.to_x: "pop";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: 1 -1;
+            }
+         }
+         part { name: "left";
+            clip_to: "leftclip";
+            description { state: "default" 0.0;
                visible: 0;
+               rel1.to: "elm.swallow.slot.left";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.slot.left";
+               rel2.offset: 4 4;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+               image.middle: SOLID;
             }
-            description { state: "focused" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
             }
          }
-         part { name: "clip";
-            type: RECT;
-            mouse_events: 0;
-            clip_to: "clip2";
+         part { name: "elm.swallow.slot.left";
+            type: SWALLOW;
+            clip_to: "leftclip";
             description { state: "default" 0.0;
-               rel1.offset: -10 0;
-               rel2.offset: 9 9;
+               align: 0.0 0.5;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: -1 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: -1 -1;
             }
-            description { state: "hidden" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
+               rel1.offset: -7 0;
+               rel2.offset: -7 -1;
+               align: 1.0 0.5;
             }
          }
-         part { name: "bg";
+         part { name: "leftover";
+            clip_to: "leftclip";
             mouse_events: 0;
-            clip_to: "clip";
             description { state: "default" 0.0;
-               rel1.to: "base";
+               rel1.to: "left";
+               rel2.to: "left";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "rightclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to_x: "pop";
+               rel1.relative: 1.0 0.0;
                rel1.offset: -2 0;
-               rel2.to: "base";
-               rel2.offset: 1 1;
-               image.border: 2 2 2 2;
-               image.normal: "cur_shad.png";
             }
          }
-         part { name: "base";
+         part { name: "right";
+            clip_to: "rightclip";
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "elm.swallow.slot.right";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.slot.right";
+               rel2.offset: 4 4;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+               image.middle: SOLID;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.slot.right";
+            type: SWALLOW;
+            clip_to: "rightclip";
+            description { state: "default" 0.0;
+               align: 1.0 0.5;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: 0 -1;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.offset: 6 0;
+               rel2.offset: 6 -1;
+               align: 0.0 0.5;
+            }
+         }
+         part { name: "rightover";
+            clip_to: "rightclip";
             mouse_events: 0;
-            scale: 1;
-            clip_to: "clip";
             description { state: "default" 0.0;
-               min: 2 2;
-               align: 0.5 1.0;
-               rel1.relative: 0.0 1.0;
+               rel1.to: "right";
+               rel2.to: "right";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "topclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel2.to_y: "pop";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 1;
+            }
+         }
+         part { name: "top";
+            clip_to: "topclip";
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "elm.swallow.slot.top";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.slot.top";
+               rel2.offset: 4 4;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+               image.middle: SOLID;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.slot.top";
+            type: SWALLOW;
+            clip_to: "topclip";
+            description { state: "default" 0.0;
+               visible: 1;
+               align: 0.5 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
                rel1.offset: 0 -1;
-               rel2.relative: 1.0 1.0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 0.0;
                rel2.offset: -1 -1;
-               image.normal: "cur_box.png";
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.offset: 0 -7;
+               rel2.offset: -1 -7;
+               align: 0.5 1.0;
             }
          }
-         part { name: "hi";
+         part { name: "topover";
+            clip_to: "topclip";
             mouse_events: 0;
-            clip_to: "clip";
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel2.to: "base";
+               rel1.to: "top";
+               rel2.to: "top";
                rel2.relative: 1.0 0.5;
-               image.normal: "cur_hi.png";
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
             }
          }
-         part { name: "shine";
-            mouse_events: 0;
-            clip_to: "clip";
-            clip_to: "clip2";
+         part { name: "bottomclip";
+            type: RECT;
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel2.to: "base";
-               rel2.relative: 1.0 0.75;
-               image.border: 2 2 1 0;
-               image.normal: "cur_shine.png";
-               fill.smooth: 0;
+               rel1.to_y: "pop";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: -1 -2;
             }
          }
-         part { name: "glow";
+         part { name: "bottom";
+            clip_to: "bottomclip";
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "elm.swallow.slot.bottom";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.slot.bottom";
+               rel2.offset: 4 4;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+               image.middle: SOLID;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.slot.bottom";
+            type: SWALLOW;
+            clip_to: "bottomclip";
+            description { state: "default" 0.0;
+               align: 0.5 1.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.offset: 0 6;
+               rel2.offset: -1 6;
+               align: 0.5 0.0;
+            }
+         }
+         part { name: "bottomover";
+            clip_to: "bottomclip";
             mouse_events: 0;
-            clip_to: "clip2";
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel1.relative: 0.0 -2.0;
-               rel1.offset: -2 0;
-               rel2.to: "base";
-               rel2.relative: 1.0 0.0;
-               rel2.offset: 1 1;
-               image.border: 2 2 0 4;
-               image.normal: "cur_glow.png";
+               rel1.to: "bottom";
+               rel2.to: "bottom";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "shad";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "shad_circ.png";
+               rel1.to: "elm.swallow.size";
+               rel1.offset: -64 -64;
+               rel2.to: "elm.swallow.size";
+               rel2.offset: 63 63;
                fill.smooth: 0;
             }
-            description { state: "hidden" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 0;
+         }
+         part { name: "pop";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.offset: 4 4;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+               image.middle: SOLID;
+            }
+         }
+         part { name: "elm.swallow.slot.middle";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.size";
+               rel2.to: "elm.swallow.size";
+            }
+         }
+         part { name: "popover";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "pop";
+               rel2.to: "pop";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
             }
          }
       }
       programs {
+         program { name: "end";
+            signal: "mouse,up,1";
+            source: "base";
+            action: SIGNAL_EMIT "elm,action,dismiss" "";
+         }
+
          program { name: "show";
-            signal: "show";
-            source: "";
-            action: STATE_SET "hidden" 0.0;
-            in: 1.0 0.0;
-            transition: DECELERATE 2.0;
-            target: "glow";
-            after: "show2";
+            signal: "elm,action,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
-         program { name: "show2";
-            action: STATE_SET "hidden" 0.0;
-            in: 0.2 0.0;
-            target: "clip";
-            after: "show3";
+         program { name: "hide";
+            signal: "elm,action,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
-         program { name: "show3";
+
+         program { name: "leftshow";
+            signal: "elm,action,slot,left,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "left";
+            target: "elm.swallow.slot.left";
+         }
+         program { name: "lefthide";
+            signal: "elm,action,slot,left,hide";
+            source: "elm";
             action: STATE_SET "default" 0.0;
-            in: 0.5 0.0;
-            target: "clip";
-            after: "show4";
+            transition: DECELERATE 0.5;
+            target: "left";
+            target: "elm.swallow.slot.left";
          }
-         program { name: "show4";
+         program { name: "rightshow";
+            signal: "elm,action,slot,right,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "right";
+            target: "elm.swallow.slot.right";
+         }
+         program { name: "righthide";
+            signal: "elm,action,slot,right,hide";
+            source: "elm";
             action: STATE_SET "default" 0.0;
-            in: 0.5 0.0;
             transition: DECELERATE 0.5;
-            target: "glow";
-            after: "show";
+            target: "right";
+            target: "elm.swallow.slot.right";
          }
-         program { name: "focused";
-            signal: "elm,action,focus";
+         program { name: "topshow";
+            signal: "elm,action,slot,top,show";
             source: "elm";
-            action: STATE_SET "focused" 0.0;
-            target: "clip2";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "top";
+            target: "elm.swallow.slot.top";
          }
-         program { name: "unfocused";
-            signal: "elm,action,unfocus";
+         program { name: "tophide";
+            signal: "elm,action,slot,top,hide";
             source: "elm";
             action: STATE_SET "default" 0.0;
-            target: "clip2";
+            transition: DECELERATE 0.5;
+            target: "top";
+            target: "elm.swallow.slot.top";
          }
-      }
-   }
-
-   group { name: "elm/entry/selection/default";
-      parts {
-         part { name: "bg";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               color: 128 128 128 128;
-            }
+         program { name: "bottomshow";
+            signal: "elm,action,slot,bottom,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "bottom";
+            target: "elm.swallow.slot.bottom";
          }
-      }
-   }
-
-   group { name: "elm/entry/anchor/default";
-      parts {
-         part { name: "bg";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               color: 128 0 0 64;
-            }
+         program { name: "bottomhide";
+            signal: "elm,action,slot,bottom,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "bottom";
+            target: "elm.swallow.slot.bottom";
          }
       }
    }
 
-///////////////////////////////////////////////////////////////////////////////
-  group { name: "elm/bubble/top_left/default";
-    alias: "elm/bubble/base/default";
-    images {
-      image: "bubble_3.png" COMP;
-      image: "bubble_shine3.png" COMP;
-    }
-    parts {
-      part { name: "event";
-         type: RECT;
-         description {
-            state: "default" 0.0;
-            color: 0 0 0 0;
-         }
-      }
-      part { name: "elm.swallow.icon";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          fixed: 1 1;
-          visible: 0;
-          align: 0.0 0.0;
-          aspect: 1.0 1.0;
-          aspect_preference: VERTICAL;
-          rel1 {
-            relative: 0.0 0.0;
-            offset: 4 4;
-          }
-          rel2 {
-            to_y: "elm.text";
-            relative: 0.0 1.0;
-            offset: 4 -1;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-        }
-      }
-      part { name: "elm.text";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 0.0 0.0;
-          fixed: 0 1;
-          visible: 0;
-          rel1 {
-            to_x: "elm.swallow.icon";
-            relative: 1.0 0.0;
-            offset: 4 4;
-          }
-          rel2 {
-            to_x: "elm.info";
-            relative: 0.0 0.0;
-            offset: -5 4;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 255;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 0 1;
-            max: 0 1;
-            align: 0.0 0.0;
-          }
-        } 
-      }
-      part { name: "elm.info";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 1.0 0.0;
-          fixed: 1 1;
-          visible: 0;
-          rel1 {
-            relative: 1.0 0.0;
-            offset: -5 4;
-          }
-          rel2 {
-            relative: 1.0 0.0;
-            offset: -5 4;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 64;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 1 1;
-            max: 1 1;
-            align: 1.0 0.0;
-          }
-        } 
-      }
-      part { name: "base0";
-        mouse_events:  0;
-        description { state: "default" 0.0;
-          rel1 {
-            to_y: "elm.swallow.icon";
-            relative: 0.0 1.0;
-            offset: 0 0;
-          }
-          image {
-            normal: "bubble_3.png";
-            border: 36 11 18 9;
-          }
-          image.middle: SOLID;
-          fill.smooth: 0;
-        }
-        description { state: "infobase" 0.0;
-          inherit: "default" 0.0;
-          rel1.to_y: "elm.info";
-        }
-      }
-      part { name: "elm.swallow.content";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 9 16;
-          }
-          rel2 {
-            to: "base0";
-            offset: -10 -9;
-          }
-        }
-      }
-      part { name: "shine";
-        mouse_events:  0;
-        description { state:    "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 5 4;
-          }
-          rel2 {
-            to: "base0";
-            relative: 1.0 0.5;
-            offset: -6 7;
-          }
-          image {
-            normal: "bubble_shine3.png";
-            border: 36 5 14 0;
-          }
-          fill.smooth: 0;
-        }
-      }
-    }
-    programs {
-      program {
-        name: "icon_show";
-        signal: "elm,state,icon,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"base0", st, 30, vl);
-          if (!strcmp(st, "infobase"))
-            set_state(PART:"base0", "default", 0.0);
-          set_state(PART:"elm.swallow.icon", "visible", 0.0);
-        }
-      }
-      program {
-        name: "icon_hide";
-        signal: "elm,state,icon,hidden";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.info", st, 30, vl);
-          if (!strcmp(st, "visible"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.swallow.icon", "default", 0.0);
-        }
-      }
-      program {
-        name: "text_show";
-        signal: "elm,state,text,visible";
-        source: "elm";
-        action: STATE_SET "visible" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "text_hide";
-        signal: "elm,state,text,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "info_show";
-        signal: "elm,state,info,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.swallow.icon", st, 30, vl);
-          if (!strcmp(st, "default"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.info", "visible", 0.0);
-        }
-      }
-      program {
-        name: "info_hide";
-        signal: "elm,state,info,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.info";
-        target: "base0";
-      }
-    }
-  }
+   //In the hover used by the menu only the bottom part is used.
+   group { name: "elm/hover/base/menu";
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+       }
+       parts {
+           part { name: "elm.swallow.offset";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 0.0 0.0;
+               }
+           }
+           part { name: "elm.swallow.size";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   rel1.to: "elm.swallow.offset";
+                   rel1.relative: 1.0 1.0;
+                   rel2.to: "elm.swallow.offset";
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "base";
+               type: RECT;
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 1.0;
+                   color: 0 0 0 64;
+               }
+           }
+           part { name: "elm.swallow.slot.left";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+           }
+           part { name: "elm.swallow.slot.right";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+           }
+           part { name: "elm.swallow.slot.top";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+               }
+           }
+           part { name: "bottomclip";
+               type: RECT;
+               description { state: "default" 0.0;
+                   rel1.to_y: "pop";
+                   rel1.relative: 0.0 1.0;
+                   rel1.offset: -1 -2;
+               }
+           }
+           part { name: "bottom";
+               clip_to: "bottomclip";
+               description { state: "default" 0.0;
+                   visible: 0;
+                   rel1.to: "elm.swallow.slot.bottom";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.slot.bottom";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+               }
+           }
+           part { name: "elm.swallow.slot.bottom";
+               type: SWALLOW;
+               clip_to: "bottomclip";
+               description { state: "default" 0.0;
+                   align: 0.5 1.0;
+                   rel1.to: "elm.swallow.slot.middle";
+                   rel1.relative: 0.0 1.0;
+                   rel1.offset: 0 0;
+                   rel2.to: "elm.swallow.slot.middle";
+                   rel2.relative: 1.0 1.0;
+                   rel2.offset: -1 0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   rel1.offset: 0 6;
+                   rel2.offset: -1 6;
+                   align: 0.5 0.0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               repeat_events:1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.slot.middle";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.slot.middle";
+                   rel2.offset: 4 4;
+               }
+           }
+           part { name: "elm.swallow.slot.middle";
+               type: SWALLOW;
+               repeat_events:1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.size";
+                   rel2.to: "elm.swallow.size";
+               }
+           }
+       }
+       programs {
+           program { name: "end";
+               signal: "mouse,up,1";
+               source: "base";
+               action: SIGNAL_EMIT "elm,action,dismiss" "";
+           }
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+                       //            transition: DECELERATE 0.5;
+               target: "base";
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+                       //            transition: DECELERATE 0.5;
+               target: "base";
+           }
+           program { name: "bottomshow";
+               signal: "elm,action,slot,bottom,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               transition: DECELERATE 0.3;
+               target: "bottom";
+               target: "elm.swallow.slot.bottom";
+           }
+           program { name: "bottomhide";
+               signal: "elm,action,slot,bottom,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               transition: DECELERATE 0.5;
+               target: "bottom";
+               target: "elm.swallow.slot.bottom";
+           }
+       }
+   }
+
+   //In the hover used by the submenu only the bottom part is used
+   //and no part should interact except the bottom area
+   group { name: "elm/hover/base/submenu";
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+       }
+       parts {
+           part { name: "elm.swallow.offset";
+               type: SWALLOW;
+               repeat_events:1;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 0.0 0.0;
+               }
+           }
+           part { name: "elm.swallow.size";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   align: 0.0 0.0;
+                   rel1.to: "elm.swallow.offset";
+                   rel1.relative: 1.0 1.0;
+                   rel2.to: "elm.swallow.offset";
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           //here we do non catch events like the hover hover does
+           part { name: "base";
+               type: RECT;
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   visible: 0;
+               }
+           }
+           part { name: "elm.swallow.slot.left";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+           }
+           part { name: "elm.swallow.slot.right";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+           }
+           part { name: "elm.swallow.slot.top";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+               }
+           }
+           part { name: "bottomclip";
+               type: RECT;
+               description { state: "default" 0.0;
+                   rel1.to_y: "pop";
+                   rel1.relative: 0.0 1.0;
+                   rel1.offset: -1 -2;
+               }
+           }
+           part { name: "bottom";
+               clip_to: "bottomclip";
+               description { state: "default" 0.0;
+                   visible: 0;
+                   rel1.to: "elm.swallow.slot.bottom";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.slot.bottom";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+               }
+           }
+           part { name: "elm.swallow.slot.bottom";
+               type: SWALLOW;
+               clip_to: "bottomclip";
+               description { state: "default" 0.0;
+                   align: 0.5 1.0;
+                   rel1.to: "elm.swallow.slot.middle";
+                   rel1.relative: 0.0 1.0;
+                   rel1.offset: 0 0;
+                   rel2.to: "elm.swallow.slot.middle";
+                   rel2.relative: 1.0 1.0;
+                   rel2.offset: -1 0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   rel1.offset: 0 6;
+                   rel2.offset: -1 6;
+                   align: 0.5 0.0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               repeat_events:1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.slot.middle";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.slot.middle";
+                   rel2.offset: 4 4;
+               }
+           }
+           part { name: "elm.swallow.slot.middle";
+               type: SWALLOW;
+               repeat_events:1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.size";
+                   rel2.to: "elm.swallow.size";
+               }
+           }
+       }
+       programs {
+           program { name: "end";
+               signal: "mouse,up,1";
+               source: "base";
+               action: SIGNAL_EMIT "elm,action,dismiss" "";
+           }
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+                       //            transition: DECELERATE 0.5;
+               target: "base";
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+                       //            transition: DECELERATE 0.5;
+               target: "base";
+           }
+           program { name: "bottomshow";
+               signal: "elm,action,slot,bottom,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               transition: DECELERATE 0.3;
+               target: "bottom";
+               target: "elm.swallow.slot.bottom";
+           }
+           program { name: "bottomhide";
+               signal: "elm,action,slot,bottom,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               transition: DECELERATE 0.5;
+               target: "bottom";
+               target: "elm.swallow.slot.bottom";
+           }
+       }
+   }
 
-  group { name: "elm/bubble/top_right/default";
-    images {
-      image: "bubble_4.png" COMP;
-      image: "bubble_shine4.png" COMP;
-    }
-    parts {
-      part { name: "event";
-         type: RECT;
-         description {
-            state: "default" 0.0;
-            color: 0 0 0 0;
-         }
-      }
-      part { name: "elm.swallow.icon";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          fixed: 1 1;
-          visible: 0;
-          align: 1.0 0.0;
-          aspect: 1.0 1.0;
-          aspect_preference: VERTICAL;
-          rel1 {
-            relative: 1.0 0.0;
-            offset: -5 4;
-          }
-          rel2 {
-            to_y: "elm.text";
-            relative: 1.0 1.0;
-            offset: -5 -1;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-        }
-      }
-      part { name: "elm.text";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 0.0 0.0;
-          fixed: 0 1;
-          visible: 0;
-          rel1 {
-            relative: 0.0 0.0;
-            offset: 4 4;
-          }
-          rel2 {
-            to_x: "elm.info";
-            relative: 0.0 0.0;
-            offset: -5 4;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 255;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 0 1;
-            max: 0 1;
-            align: 0.0 0.0;
-          }
-        }
-      }
-      part { name: "elm.info";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 1.0 0.0;
-          fixed: 1 1;
-          visible: 0;
-          rel1 {
-            relative: 1.0 0.0;
-            offset: -5 4;
-          }
-          rel2 {
-            to_x: "elm.swallow.icon";
-            relative: 0.0 0.0;
-            offset: -5 4;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 64;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 1 1;
-            max: 1 1;
-            align: 1.0 0.0;
-          }
-        }
-      }
-      part { name: "base0";
-        mouse_events:  0;
-        description { state: "default" 0.0;
-          rel1 {
-            to_y: "elm.swallow.icon";
-            relative: 0.0 1.0;
-            offset: 0 0;
-          }
-          image {
-            normal: "bubble_4.png";
-            border: 11 36 18 9;
-          }
-          image.middle: SOLID;
-          fill.smooth: 0;
-        }
-        description { state: "infobase" 0.0;
-          inherit: "default" 0.0;
-          rel1.to_y: "elm.info";
-        }
-      }
-      part { name: "elm.swallow.content";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 9 16;
-          }
-          rel2 {
-            to: "base0";
-            offset: -10 -9;
-          }
-        }
-      }
-      part { name: "shine";
-        mouse_events:  0;
-        description { state:    "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 5 4;
-          }
-          rel2 {
-            to: "base0";
-            relative: 1.0 0.5;
-            offset: -6 7;
-          }
-          image {
-            normal: "bubble_shine4.png";
-            border: 5 36 14 0;
-          }
-          fill.smooth: 0;
-        }
-      }
-    }
-    programs {
-      program {
-        name: "icon_show";
-        signal: "elm,state,icon,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"base0", st, 30, vl);
-          if (!strcmp(st, "infobase"))
-            set_state(PART:"base0", "default", 0.0);
-          set_state(PART:"elm.swallow.icon", "visible", 0.0);
-        }
-      }
-      program {
-        name: "icon_hide";
-        signal: "elm,state,icon,hidden";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.info", st, 30, vl);
-          if (!strcmp(st, "visible"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.swallow.icon", "default", 0.0);
-        }
-      }
-      program {
-        name: "text_show";
-        signal: "elm,state,text,visible";
-        source: "elm";
-        action: STATE_SET "visible" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "text_hide";
-        signal: "elm,state,text,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "info_show";
-        signal: "elm,state,info,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.swallow.icon", st, 30, vl);
-          if (!strcmp(st, "default"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.info", "visible", 0.0);
-        }
-      }
-      program {
-        name: "info_hide";
-        signal: "elm,state,info,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.info";
-        target: "base0";
+   group { name: "elm/hover/base/hoversel_vertical/default";
+      alias: "elm/hover/base/hoversel_vertical/entry";
+      images {
+//         image: "shad_circ.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "outdent-top.png" COMP;
+         image: "outdent-bottom.png" COMP;
       }
-    }
-  }
+      parts {
+         part { name: "elm.swallow.offset";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 0.0;
+            }
+         }
+         part { name: "elm.swallow.size";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.to: "elm.swallow.offset";
+               rel1.relative: 1.0 1.0;
+               rel2.to: "elm.swallow.offset";
+               rel2.relative: 1.0 1.0;
+            }
+         }
+/*
+        part { name: "shad";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "shad_circ.png";
+               rel1.to: "button_image";
+               rel1.offset: -64 -64;
+               rel2.to: "button_image";
+               rel2.offset: 63 63;
+               fill.smooth: 0;
+            }
+         }
+ */
+         part { name: "button_image";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to_x: "elm.swallow.slot.top";
+               rel1.to_y: "elm.swallow.slot.top";
+               rel1.offset: -2 -6;
+               rel2.to_x: "elm.swallow.slot.top";
+               rel2.to_y: "elm.swallow.slot.bottom";
+               rel2.offset: 1 5;
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
+               }
+               image.middle: SOLID;
+            }
+            description { state: "bottom" 0.0;
+               rel1.to_x: "elm.swallow.slot.bottom";
+               rel1.to_y: "elm.swallow.slot.top";
+               rel1.offset: -2 -6;
+               rel2.to_x: "elm.swallow.slot.bottom";
+               rel2.to_y: "elm.swallow.slot.bottom";
+               rel2.offset: 1 5;
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
+               }
+               image.middle: SOLID;
+            }
+         }
 
-  group { name: "elm/bubble/bottom_left/default";
-    images {
-      image: "bubble_1.png" COMP;
-      image: "bubble_shine.png" COMP;
-    }
-    parts {
-      part { name: "event";
-         type: RECT;
-         description {
-            state: "default" 0.0;
-            color: 0 0 0 0;
+         part { name: "base";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 1.0;
+               color: 0 0 0 64;
+            }
+         }
+
+         part { name: "topclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel2.to_y: "edge_top";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 7;
+            }
+         }
+         part { name: "elm.swallow.slot.top";
+            type: SWALLOW;
+            clip_to: "topclip";
+            description { state: "default" 0.0;
+               visible: 1;
+               align: 0.5 0.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: 0 -1;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: -1 -1;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.offset: 0 -7;
+               rel2.offset: -1 -7;
+               align: 0.5 1.0;
+            }
+         }
+
+         part { name: "bottomclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to_y: "edge_bottom";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: -1 -8;
+            }
+         }
+         part { name: "elm.swallow.slot.bottom";
+            type: SWALLOW;
+            clip_to: "bottomclip";
+            description { state: "default" 0.0;
+               align: 0.5 1.0;
+               rel1.to: "elm.swallow.slot.middle";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 0;
+               rel2.to: "elm.swallow.slot.middle";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.offset: 0 6;
+               rel2.offset: -1 6;
+               align: 0.5 0.0;
+            }
+         }
+
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "button_image";
+               rel2.to: "button_image";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
+               }
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
+            ignore_flags: ON_HOLD;
+            description { state: "default" 0.0;
+               rel1.to: "button_image";
+               rel2.to: "button_image";
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
+               }
+            }
+         }
+         part { name: "edge_top";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1 {
+                  to: "elm.swallow.size";
+                  offset: 0 -10;
+               }
+               rel2 {
+                  to: "elm.swallow.size";
+               }
+               image.normal: "outdent-bottom.png";
+               image.border: 0 0 13 0;
+               fill.smooth: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "edge_bottom";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1 {
+                  to: "elm.swallow.size";
+               }
+               rel2 {
+                  to: "elm.swallow.size";
+                  offset: -1 9;
+               }
+               image.normal: "outdent-top.png";
+               image.border: 0 0 0 13;
+               fill.smooth: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.slot.middle";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.size";
+               rel2.to: "elm.swallow.size";
+            }
          }
       }
-      part { name: "elm.swallow.icon";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          fixed: 1 1;
-          visible: 0;
-          align: 0.0 1.0;
-          aspect: 1.0 1.0;
-          aspect_preference: VERTICAL;
-          rel1 {
-            to_y: "elm.text";
-            relative: 0.0 0.0;
-            offset: 4 0;
-          }
-          rel2 {
-            relative: 0.0 1.0;
-            offset: 4 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-        }
-      }
-      part { name: "elm.text";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 0.0 1.0;
-          fixed: 0 1;
-          visible: 0;
-          rel1 {
-            to_x: "elm.swallow.icon";
-            relative: 1.0 1.0;
-            offset: 4 -5;
-          }
-          rel2 {
-            to_x: "elm.info";
-            relative: 0.0 1.0;
-            offset: -5 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 255;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 0 1;
-            max: 0 1;
-            align: 0.0 1.0;
-          }
-        }
-      }
-      part { name: "elm.info";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 1.0 1.0;
-          fixed: 1 1;
-          visible: 0;
-          rel1 {
-            relative: 1.0 1.0;
-            offset: -5 -5;
-          }
-          rel2 {
-            relative: 1.0 1.0;
-            offset: -5 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 64;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 1 1;
-            max: 1 1;
-            align: 1.0 1.0;
-          }
-        }
-      }
-      part { name: "base0";
-        mouse_events:  0;
-        description { state: "default" 0.0;
-          rel2 {
-            to_y: "elm.swallow.icon";
-            relative: 1.0 0.0;
-            offset: -1 -1;
-          }
-          image {
-            normal: "bubble_1.png";
-            border: 36 11 10 19;
-          }
-          image.middle: SOLID;
-          fill.smooth: 0;
-        }
-        description { state: "infobase" 0.0;
-          inherit: "default" 0.0;
-          rel2.to_y: "elm.info";
-        }
-      }
-      part { name: "elm.swallow.content";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 9 8;
-          }
-          rel2 {
-            to: "base0";
-            offset: -10 -17;
-          }
-        }
-      }
-      part { name: "shine";
-        mouse_events:  0;
-        description { state:    "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 5 4;
-          }
-          rel2 {
-            to: "base0";
-            relative: 1.0 0.5;
-            offset: -6 -16;
-          }
-          image {
-            normal: "bubble_shine.png";
-            border: 5 5 5 0;
-          }
-          fill.smooth: 0;
-        }
-      }
-    }
-    programs {
-      program {
-        name: "icon_show";
-        signal: "elm,state,icon,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"base0", st, 30, vl);
-          if (!strcmp(st, "infobase"))
-            set_state(PART:"base0", "default", 0.0);
-          set_state(PART:"elm.swallow.icon", "visible", 0.0);
-        }
-      }
-      program {
-        name: "icon_hide";
-        signal: "elm,state,icon,hidden";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.info", st, 30, vl);
-          if (!strcmp(st, "visible"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.swallow.icon", "default", 0.0);
-        }
-      }
-      program {
-        name: "text_show";
-        signal: "elm,state,text,visible";
-        source: "elm";
-        action: STATE_SET "visible" 0.0;
-        target: "elm.text";
+      programs {
+         program { name: "end";
+            signal: "mouse,up,1";
+            source: "base";
+            action: SIGNAL_EMIT "elm,action,dismiss" "";
+         }
+
+         program { name: "show";
+            signal: "elm,action,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
+         }
+         program { name: "hide";
+            signal: "elm,action,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
+         }
+         program { name: "topshow";
+            signal: "elm,action,slot,top,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "edge_top";
+            after: "topshow2";
+         }
+         program { name: "topshow2";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "elm.swallow.slot.top";
+         }
+         program { name: "topshow3";
+            signal: "elm,action,slot,top,show";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "button_image";
+         }
+         program { name: "tophide";
+            signal: "elm,action,slot,top,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "elm.swallow.slot.top";
+            after: "tophide2";
+         }
+         program { name: "tophide2";
+            action: STATE_SET "default" 0.0;
+            target: "edge_top";
+         }
+         program { name: "bottomshow";
+            signal: "elm,action,slot,bottom,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "edge_bottom";
+            after: "bottomshow2";
+         }
+         program { name: "bottomshow2";
+            action: STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "elm.swallow.slot.bottom";
+         }
+         program { name: "bottomshow3";
+            signal: "elm,action,slot,bottom,show";
+            source: "elm";
+            action: STATE_SET "bottom" 0.0;
+            target: "button_image";
+         }
+         program { name: "bottomhide";
+            signal: "elm,action,slot,bottom,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.5;
+            target: "elm.swallow.slot.bottom";
+            after: "bottomhide2";
+         }
+         program { name: "bottomhide2";
+            action: STATE_SET "default" 0.0;
+            target: "edge_bottom";
+         }
       }
-      program {
-        name: "text_hide";
-        signal: "elm,state,text,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.text";
+   }
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/scroller/base/ctxpopup";
+      data {
+         item: "focus_highlight" "on";
       }
-      program {
-        name: "info_show";
-        signal: "elm,state,info,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.swallow.icon", st, 30, vl);
-          if (!strcmp(st, "default"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.info", "visible", 0.0);
-        }
+      script {
+         public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer;
+         public timer0(val) {
+            new v;
+            v = get_int(sbvis_v);
+            if (v) {
+               v = get_int(sbalways_v);
+               if(!v) {
+                  emit("do-hide-vbar", "");
+                  set_int(sbvis_v, 0);
+               }
+            }
+            v = get_int(sbvis_h);
+            if (v) {
+               v = get_int(sbalways_h);
+               if(!v) {
+                  emit("do-hide-hbar", "");
+                  set_int(sbvis_h, 0);
+               }
+            }
+            set_int(sbvis_timer, 0);
+            return 0;
+         }
       }
-      program {
-        name: "info_hide";
-        signal: "elm,state,info,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.info";
-        target: "base0";
+      images {
+         image: "bt_sm_base2.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "sl_bt2_2.png" COMP;
       }
-    }
-  }
-
-  group { name: "elm/bubble/bottom_right/default";
-    images {
-      image: "bubble_2.png" COMP;
-      image: "bubble_shine.png" COMP;
-    }
-    parts {
-      part { name: "event";
-         type: RECT;
-         description {
-            state: "default" 0.0;
-            color: 0 0 0 0;
+      parts {
+         part { name: "clipper";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+            }
+         }
+         part { name: "elm.swallow.content";
+            clip_to: "clipper";
+            type: SWALLOW;
+            scale: 1;
+            description { state: "default" 0.0;
+               align: 0.5 0.5;
+            }
+         }
+         part { name: "focus_highlight";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.offset: -1 -1;
+               rel2.offset: 0 0;
+               image { normal: "sl_bt2_2.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+               color: 200 155 0 0;
+            }
+            description { state: "enabled" 0.0;
+               inherit: "default" 0.0;
+               color: 200 155 0 255;
+            }
+         }
+         part { name: "sb_vbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_vbar_clip";
+            clip_to:"sb_vbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel2{ to:"clipper"; relative: 1.0 1.0;}
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_vbar";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               align: 1.0 0.0;
+               rel1{ to:"clipper"; relative: 1.0 0.0; }
+               rel2{ to:"clipper"; relative: 1.0 1.0; }
+            }
+         }
+         part { name: "elm.dragable.vbar";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 0 0 0;
+               y: 1 1 0;
+               confine: "sb_vbar";
+            }
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 10 17;
+               max: 10 99999;
+               rel1 { relative: 0.5 0.5; to: "sb_vbar"; }
+               rel2 { relative: 0.5  0.5; to: "sb_vbar"; }
+               image { normal: "bt_sm_base2.png";
+                  border: 6 6 6 6;
+                  middle: SOLID;
+               }
+            }
+         }
+         part { name: "sb_vbar_over1";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "elm.dragable.vbar";
+               image { normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
+               }
+            }
+         }
+         part { name: "sb_vbar_over2";
+            clip_to: "sb_vbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.vbar";
+               rel2.to: "elm.dragable.vbar";
+               image { normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
+         }
+         part { name: "sb_hbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_hbar_clip";
+            clip_to: "sb_hbar_clip_master";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel2{ to:"clipper"; relative: 1.0 1.0;}
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "sb_hbar";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               align: 0.0 1.0;
+               rel1 { to:"clipper"; relative: 0.0 1.0; }
+               rel2 { to:"clipper"; relative: 1.0 1.0; }
+            }
+         }
+         part { name: "elm.dragable.hbar";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 0 0 0;
+               confine: "sb_hbar";
+            }
+            description { state: "default" 0.0;
+               min: 17 10;
+               max: 99999 10;
+               fixed: 1 1;
+               rel1 { relative: 0.5  0.5; to: "sb_hbar"; }
+               rel2 { relative: 0.5  0.5; to: "sb_hbar"; }
+               image { normal: "bt_sm_base2.png";
+                  border: 4 4 4 4;
+                  middle: SOLID;
+               }
+            }
+         }
+         part { name: "sb_hbar_over1";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.hbar";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "elm.dragable.hbar";
+               image { normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
+               }
+            }
+         }
+         part { name: "sb_hbar_over2";
+            clip_to: "sb_hbar_clip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.dragable.hbar";
+               rel2.to: "elm.dragable.hbar";
+               image { normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
          }
       }
-      part { name: "elm.swallow.icon";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          fixed: 1 1;
-          visible: 0.0;
-          align: 1.0 1.0;
-          aspect: 1.0 1.0;
-          aspect_preference: VERTICAL;
-          rel1 {
-            to_y: "elm.text";
-            relative: 1.0 0.0;
-            offset: -5 0;
-          }
-          rel2 {
-            relative: 1.0 1.0;
-            offset: -5 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-        }
-      }
-      part { name: "elm.text";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 0.0 1.0;
-          fixed: 0 1;
-          visible: 0;
-          rel1 {
-            relative: 0.0 1.0;
-            offset: 4 -5;
-          }
-          rel2 {
-            to_x: "elm.info";
-            relative: 0.0 1.0;
-            offset: -5 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 255;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 0 1;
-            max: 0 1;
-            align: 0.0 1.0;
-          }
-        }
-      }
-      part { name: "elm.info";
-        type: TEXT;
-        mouse_events:   0;
-        scale: 1;
-        description { state: "default" 0.0;
-          align: 1.0 1.0;
-          fixed: 1 1;
-          visible: 0;
-          rel1 {
-            relative: 1.0 1.0;
-            offset: -5 -5;
-          }
-          rel2 {
-            to_x: "elm.swallow.icon";
-            relative: 0.0 1.0;
-            offset: -5 -5;
-          }
-        }
-        description { state: "visible" 0.0;
-          inherit: "default" 0.0;
-          visible: 1;
-          color: 0 0 0 64;
-          text {
-            font: "Sans:style=Bold,Edje-Vera-Bold";
-            size: 10;
-            min: 1 1;
-            max: 1 1;
-            align: 1.0 1.0;
-          }
-        }
-      }
-      part { name: "base0";
-        mouse_events:  0;
-        description { state: "default" 0.0;
-          rel2 {
-            to_y: "elm.swallow.icon";
-            relative: 1.0 0.0;
-            offset: -1 -1;
-          }
-          image {
-            normal: "bubble_2.png";
-            border: 11 36 10 19;
-          }
-          image.middle: SOLID;
-          fill.smooth: 0;
-        }
-        description { state: "infobase" 0.0;
-          inherit: "default" 0.0;
-          rel2.to_y: "elm.info";
-        }
-      }
-      part { name: "elm.swallow.content";
-        type: SWALLOW;
-        description { state: "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 9 8;
-          }
-          rel2 {
-            to: "base0";
-            offset: -10 -17;
-          }
-        }
-      }
-      part { name: "shine";
-        mouse_events:  0;
-        description { state:    "default" 0.0;
-          rel1 {
-            to: "base0";
-            offset: 5 4;
-          }
-          rel2 {
-            to: "base0";
-            relative: 1.0 0.5;
-            offset: -6 -16;
-          }
-          image {
-            normal: "bubble_shine.png";
-            border: 5 5 5 0;
+      programs {
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               set_state(PART:"sb_vbar_clip", "hidden", 0.0);
+               set_state(PART:"sb_hbar_clip", "hidden", 0.0);
+               set_int(sbvis_v, 0);
+               set_int(sbvis_h, 0);
+               set_int(sbalways_v, 0);
+                                   set_int(sbalways_h, 0);
+               set_int(sbvis_timer, 0);
+            }
+         }
+         program { name: "vbar_show";
+            signal: "elm,action,show,vbar";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "sb_vbar_clip_master";
+         }
+         program { name: "vbar_hide";
+            signal: "elm,action,hide,vbar";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "sb_vbar_clip_master";
+         }
+         program { name: "vbar_show_always";
+            signal: "elm,action,show_always,vbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_v);
+               v |= get_int(sbalways_v);
+               if (!v) {
+                  set_int(sbalways_v, 1);
+                  emit("do-show-vbar", "");
+                  set_int(sbvis_v, 1);
+               }
+            }
+         }
+         program { name: "vbar_show_notalways";
+            signal: "elm,action,show_notalways,vbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbalways_v);
+               if (v) {
+                  set_int(sbalways_v, 0);
+                  v = get_int(sbvis_v);
+                  if (!v) {
+                     emit("do-hide-vbar", "");
+                     set_int(sbvis_v, 0);
+                  }
+               }
+            }
+         }
+         program { name: "sb_vbar_show";
+            signal: "do-show-vbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 1.0;
+            target: "sb_vbar_clip";
+         }
+         program { name: "sb_vbar_hide";
+            signal: "do-hide-vbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 1.0;
+            target: "sb_vbar_clip";
+         }
+         program { name: "hbar_show";
+            signal: "elm,action,show,hbar";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "sb_hbar_clip_master";
+         }
+         program { name: "hbar_hide";
+            signal: "elm,action,hide,hbar";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "sb_hbar_clip_master";
+         }
+         program { name: "hbar_show_always";
+            signal: "elm,action,show_always,hbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_h);
+               v |= get_int(sbalways_h);
+               if (!v) {
+                  set_int(sbalways_h, 1);
+                  emit("do-show-hbar", "");
+                  set_int(sbvis_h, 1);
+               }
+            }
+         }
+         program { name: "hbar_show_notalways";
+            signal: "elm,action,show_notalways,hbar";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbalways_h);
+               if (v) {
+                  set_int(sbalways_h, 0);
+                  v = get_int(sbvis_h);
+                  if (!v) {
+                     emit("do-hide-hbar", "");
+                     set_int(sbvis_h, 0);
+                  }
+               }
+            }
+         }
+         program { name: "sb_hbar_show";
+            signal: "do-show-hbar";
+            source: "";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 1.0;
+            target: "sb_hbar_clip";
+         }
+         program { name: "sb_hbar_hide";
+            signal: "do-hide-hbar";
+            source: "";
+            action:  STATE_SET "hidden" 0.0;
+            transition: LINEAR 1.0;
+            target: "sb_hbar_clip";
+         }
+         program { name: "scroll";
+            signal: "elm,action,scroll";
+            source: "elm";
+            script {
+               new v;
+               v = get_int(sbvis_v);
+               v |= get_int(sbalways_v);
+               if (!v) {
+                  emit("do-show-vbar", "")
+                  set_int(sbvis_v, 1);
+               }
+               v = get_int(sbvis_h);
+               v |= get_int(sbalways_h);
+               if (!v) {
+                  emit("do-show-hbar", "");
+                  set_int(sbvis_h, 1);
+               }
+               v = get_int(sbvis_timer);
+               if (v > 0) cancel_timer(v);
+               v = timer(1.0, "timer0", 0);
+               set_int(sbvis_timer, v);
+            }
+         }
+         program { name: "highlight_show";
+            signal: "elm,action,focus_highlight,show";
+            source: "elm";
+            action: STATE_SET "enabled" 0.0;
+            transition: ACCELERATE 0.3;
+            target: "focus_highlight";
           }
-          fill.smooth: 0;
-        }
-      }
-    }
-    programs {
-      program {
-        name: "icon_show";
-        signal: "elm,state,icon,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"base0", st, 30, vl);
-          if (!strcmp(st, "infobase"))
-            set_state(PART:"base0", "default", 0.0);
-          set_state(PART:"elm.swallow.icon", "visible", 0.0);
-        }
-      }
-      program {
-        name: "icon_hide";
-        signal: "elm,state,icon,hidden";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.info", st, 30, vl);
-          if (!strcmp(st, "visible"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.swallow.icon", "default", 0.0);
-        }
-      }
-      program {
-        name: "text_show";
-        signal: "elm,state,text,visible";
-        source: "elm";
-        action: STATE_SET "visible" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "text_hide";
-        signal: "elm,state,text,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.text";
-      }
-      program {
-        name: "info_show";
-        signal: "elm,state,info,visible";
-        source: "elm";
-        script {
-          new st[31];
-          new Float:vl;
-          get_state(PART:"elm.swallow.icon", st, 30, vl);
-          if (!strcmp(st, "default"))
-            set_state(PART:"base0", "infobase", 0.0);
-          set_state(PART:"elm.info", "visible", 0.0);
-        }
-      }
-      program {
-        name: "info_hide";
-        signal: "elm,state,info,hidden";
-        source: "elm";
-        action: STATE_SET "default" 0.0;
-        target: "elm.info";
-        target: "base0";
-      }
-    }
-  }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/photo/base/default";
-      images {
-        image: "frame_1.png" COMP;
-        image: "frame_2.png" COMP;
-         image: "dia_grad.png" COMP;
-         image: "head.png" COMP;
+         program { name: "highlight_hide";
+            signal: "elm,action,focus_highlight,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            transition: DECELERATE 0.3;
+            target: "focus_highlight";
+         }
       }
-      parts {
-         part { name: "base0";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "dia_grad.png";
-              rel1.to: "over";
-              rel2.to: "over";
-               fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                     offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "base";
-           mouse_events:  0;
-           description { state:    "default" 0.0;
-              image {
-                 normal: "frame_2.png";
-                 border: 5 5 32 26;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-        }
-         part { name: "head";
-           mouse_events:  0;
-           description { state:    "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-               aspect: 1.0 1.0;
-               aspect_preference: BOTH;
-              image.normal: "head.png";
-           }
-        }
-         part { name: "clip";
-           mouse_events:  0;
-            type: RECT;
-           description { state:    "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-               color: 255 255 255 255;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-            clip_to: "clip";
-           description { state: "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-           }
-        }
-         part { name: "over";
-           mouse_events:  0;
-           description { state:    "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              image {
-                 normal: "frame_1.png";
-                 border: 2 2 28 22;
-                 middle: 0;
-              }
-              fill.smooth: 0;
-           }
-        }
-     }
-   }
-   
-   group { name: "elm/photo/base/shadow";
-       images {
-                       image: "shadow.png" COMP;
-                       image: "black.png" COMP;
-       }
-       script {
-       public message(Msg_Type:type, id, ...) {
-               if( (type==MSG_INT_SET) && (id==0) )
-               {
-               new w;
-               new h;
-           
-               custom_state(PART:"size", "default", 0.0);
-
-               w = getarg(2);
-               h = getarg(3);
-               set_state_val(PART:"size", STATE_REL1_OFFSET, - w/2, - h/2);
-               set_state_val(PART:"size", STATE_REL2_OFFSET, w/2 + 1, h/2 + 1);
-               set_state(PART:"size", "custom", 0.0);
-               }
-       }
-       }
-       parts {
-       part { name: "size";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                       rel1.relative: 0.5 0.5;
-                       rel2.relative: 0.5 0.5;
-               }
-               }
-       part {
-               name: "shadow";
-               type: IMAGE;
-               repeat_events: 1;
-               description {
-               state: "default" 0.0;
-               rel1.to: "size";
-               rel2.to: "size";
-               rel1.relative: -0.06 -0.06;
-               rel2.relative: 1.07 1.07;
-               image.normal: "shadow.png";
-               }
-       }
-       
-       
-               part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-               rel1.offset: 3 3;
-               rel2.offset: -3 -3;
-                       fixed: 1 1;
-               }
-               }
-               
-               part {
-               name: "border";
-               type: IMAGE;
-               repeat_events: 1;
-               description {
-               state: "default" 0.0;
-               visible: 1;
-               color: 0 0 0 255;
-               rel1.to: "size";
-               rel2.to: "size";
-               image.normal: "black.png";
-               image.border: 1 1 1 1;
-               image.middle: 0;
-               }
-       }
-               }
    }
-
 ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/thumb/base/default";
-      images {
-        image: "frame_1.png" COMP;
-        image: "frame_2.png" COMP;
-        image: "dia_grad.png" COMP;
-        image: "busy-1.png" COMP;
-        image: "busy-2.png" COMP;
-        image: "busy-3.png" COMP;
-        image: "busy-4.png" COMP;
-        image: "busy-5.png" COMP;
-        image: "busy-6.png" COMP;
-        image: "busy-7.png" COMP;
-        image: "busy-8.png" COMP;
-        image: "busy-9.png" COMP;
-      }
-      parts {
-        part { name: "base0";
-           mouse_events:  0;
-           description { state:        "default" 0.0;
-              image.normal: "dia_grad.png";
-              rel1.to: "over";
-              rel2.to: "over";
-              fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                    offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "base";
-           mouse_events:  0;
-           description { state:        "default" 0.0;
-              image {
-                 normal: "frame_2.png";
-                 border: 5 5 32 26;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-        }
-        part { name: "clip";
-           mouse_events:  0;
-           type: RECT;
-           description { state:        "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              color: 255 255 255 255;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           clip_to: "clip";
-           description { state:        "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-           }
-        }
-        part { name: "progress";
-           mouse_events: 0;
-
-           clip_to: "clip";
-           description { state:        "default" 0.0;
-              min: 32 32;
-              max: 32 32;
-              visible: 0;
-              aspect: 1.0 1.0;
-              aspect_preference: BOTH;
-           }
-           description { state:        "pulse" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              image {
-                 normal: "busy-9.png";
-                 tween:  "busy-1.png";
-                 tween:  "busy-2.png";
-                 tween:  "busy-3.png";
-                 tween:  "busy-4.png";
-                 tween:  "busy-5.png";
-                 tween:  "busy-6.png";
-                 tween:  "busy-7.png";
-                 tween:  "busy-8.png";
-                 border: 7 7 7 7;
-              }
-           }
-        }
-        part { name: "over";
-           mouse_events:  0;
-           description { state:        "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              image {
-                 normal: "frame_1.png";
-                 border: 2 2 28 22;
-                 middle: 0;
-              }
-              fill.smooth: 0;
-           }
-        }
-        programs {
-           program { name: "start_pulse";
-              signal: "elm,state,pulse,start";
-              source: "elm";
-              action: STATE_SET "pulse" 0.0;
-              target: "progress";
-              transition: LINEAR 0.5;
-              after: "start_pulse";
-           }
-           program { name: "stop_pulse";
-              signal: "elm,state,pulse,stop";
-              source: "elm";
-              action: STATE_SET "default" 0.0;
-              target: "progress";
-           }
-        }
-      }
-   }
-
-   group { name: "elm/thumb/base/noframe";
-      images {
-        image: "busy-1.png" COMP;
-        image: "busy-2.png" COMP;
-        image: "busy-3.png" COMP;
-        image: "busy-4.png" COMP;
-        image: "busy-5.png" COMP;
-        image: "busy-6.png" COMP;
-        image: "busy-7.png" COMP;
-        image: "busy-8.png" COMP;
-        image: "busy-9.png" COMP;
-      }
+   group { name: "elm/ctxpopup/bg/default";
       parts {
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-           }
-        }
-        part { name: "progress";
-           mouse_events: 0;
-           description { state:        "default" 0.0;
-              min: 32 32;
-              max: 32 32;
-              visible: 0;
-              aspect: 1.0 1.0;
-              aspect_preference: BOTH;
-           }
-           description { state:        "pulse" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              image {
-                 normal: "busy-9.png";
-                 tween:  "busy-1.png";
-                 tween:  "busy-2.png";
-                 tween:  "busy-3.png";
-                 tween:  "busy-4.png";
-                 tween:  "busy-5.png";
-                 tween:  "busy-6.png";
-                 tween:  "busy-7.png";
-                 tween:  "busy-8.png";
-                 border: 7 7 7 7;
-              }
-           }
-        }
-        programs {
-           program { name: "start_pulse";
-              signal: "elm,state,pulse,start";
-              source: "elm";
-              action: STATE_SET "pulse" 0.0;
-              target: "progress";
-              transition: LINEAR 0.5;
-              after: "start_pulse";
-           }
-           program { name: "stop_pulse";
-              signal: "elm,state,pulse,stop";
-              source: "elm";
-              action: STATE_SET "default" 0.0;
-              target: "progress";
-           }
-        }
+         part { name: "ctxpopup_bg";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 64;
+            }
+         }
       }
-   }
-
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/icon/home/default"; alias: "elm/icon/toolbar/home/default"; min: 32 32;
-      images.image: "icon_home.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_home.png"; } } } }
-   group { name: "elm/icon/close/default"; alias: "elm/icon/toolbar/close/default"; min: 32 32;
-      images.image: "icon_close.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_close.png"; } } } }
-   group { name: "elm/icon/apps/default"; alias: "elm/icon/toolbar/apps/default"; min: 32 32;
-      images.image: "icon_apps.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_apps.png"; } } } }
-   group { name: "elm/icon/arrow_up/default"; alias: "elm/icon/toolbar/arrow_up/default"; min: 32 32;
-      images.image: "icon_arrow_up.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_up.png"; } } } }
-   group { name: "elm/icon/arrow_down/default";
-           alias: "elm/icon/toolbar/arrow_down/default";
-           alias: "elm/icon/toolbar/more_menu/default"; min: 32 32;
-      images.image: "icon_arrow_down.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_down.png"; } } } }
-   group { name: "elm/icon/arrow_left/default"; alias: "elm/icon/toolbar/arrow_left/default"; min: 32 32;
-      images.image: "icon_arrow_left.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_left.png"; } } } }
-   group { name: "elm/icon/arrow_right/default"; alias: "elm/icon/toolbar/arrow_right/default"; min: 32 32;
-      images.image: "icon_arrow_right.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_right.png"; } } } }
-   group { name: "elm/icon/chat/default"; alias: "elm/icon/toolbar/chat/default"; min: 32 32;
-      images.image: "icon_chat.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_chat.png"; } } } }
-   group { name: "elm/icon/clock/default"; alias: "elm/icon/toolbar/clock/default"; min: 32 32;
-      images.image: "icon_clock.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_clock.png"; } } } }
-   group { name: "elm/icon/delete/default"; alias: "elm/icon/toolbar/delete/default"; min: 32 32;
-      images.image: "icon_delete.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_delete.png"; } } } }
-   group { name: "elm/icon/edit/default"; alias: "elm/icon/toolbar/edit/default"; min: 32 32;
-      images.image: "icon_edit.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_edit.png"; } } } }
-   group { name: "elm/icon/refresh/default"; alias: "elm/icon/toolbar/refresh/default"; min: 32 32;
-      images.image: "icon_refresh.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_refresh.png"; } } } }
-   group { name: "elm/icon/folder/default"; alias: "elm/icon/toolbar/folder/default"; min: 32 32;
-      images.image: "icon_folder.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_folder.png"; } } } }
-   group { name: "elm/icon/file/default"; alias: "elm/icon/toolbar/file/default"; min: 32 32;
-      images.image: "icon_file.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_file.png"; } } } }
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/icon/menu/home/default"; min: 24 24; max: 24 24;
-      images.image: "icon_home.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_home.png"; } } } }
-   group { name: "elm/icon/menu/close/default"; min: 24 24; max: 24 24;
-      images.image: "icon_close.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_close.png"; } } } }
-   group { name: "elm/icon/menu/apps/default"; min: 24 24; max: 24 24;
-      images.image: "icon_apps.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_apps.png"; } } } }
-   group { name: "elm/icon/menu/arrow_up/default"; min: 24 24; max: 24 24;
-      images.image: "icon_arrow_up.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_up.png"; } } } }
-   group { name: "elm/icon/menu/arrow_down/default"; min: 24 24; max: 24 24;
-      images.image: "icon_arrow_down.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_down.png"; } } } }
-   group { name: "elm/icon/menu/arrow_left/default"; min: 24 24; max: 24 24;
-      images.image: "icon_arrow_left.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_left.png"; } } } }
-   group { name: "elm/icon/menu/arrow_right/default"; min: 24 24; max: 24 24;
-      images.image: "icon_arrow_right.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_arrow_right.png"; } } } }
-   group { name: "elm/icon/menu/chat/default"; min: 24 24; max: 24 24;
-      images.image: "icon_chat.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_chat.png"; } } } }
-   group { name: "elm/icon/menu/clock/default"; min: 24 24; max: 24 24;
-      images.image: "icon_clock.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_clock.png"; } } } }
-   group { name: "elm/icon/menu/delete/default"; min: 24 24; max: 24 24;
-      images.image: "icon_delete.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_delete.png"; } } } }
-   group { name: "elm/icon/menu/edit/default"; min: 24 24; max: 24 24;
-      images.image: "icon_edit.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_edit.png"; } } } }
-   group { name: "elm/icon/menu/refresh/default"; min: 24 24; max: 24 24;
-      images.image: "icon_refresh.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_refresh.png"; } } } }
-   group { name: "elm/icon/menu/folder/default"; min: 24 24; max: 24 24;
-      images.image: "icon_folder.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_folder.png"; } } } }
-   group { name: "elm/icon/menu/file/default"; min: 24 24; max: 24 24;
-      images.image: "icon_file.png" COMP; parts { part { name: "base";
-        description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
-           image.normal: "icon_file.png"; } } } }
-
+      programs {
+         program { name: "clicked_event";
+            signal: "mouse,clicked,1";
+            source: "ctxpopup_bg";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "show";
+            signal: "elm,state,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "ctxpopup_bg";
+         }
+         program { name: "hide";
+            signal: "elm,state,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "ctxpopup_bg";
+         }
+      }
+   }
 ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/toolbar/base/default";
+   group { name: "elm/ctxpopup/base/default";
       images {
-         image: "bt_dis_base.png" COMP;
-         image: "bt_dis_hilight.png" COMP;
-         image: "bt_dis_shine.png" COMP;
-         image: "icon_left_arrow.png" COMP;
-         image: "icon_right_arrow.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
       }
       parts {
-         part { name: "base";
-            mouse_events: 1;
+         part { name: "arrow_area_left";
+            type: RECT;
+            mouse_events: 0;
             description { state: "default" 0.0;
+               visible: 0;
+               min: 40 0;
+               fixed: 1 1;
+               align: 1 0.5;
                rel1 {
-                  relative: 0.0 0.0;
-                  offset: 2 2;
+                  to_y: "base";
                }
-               rel2.offset: -3 -3;
-               image {
-                  normal: "bt_dis_base.png";
-                  border: 4 4 4 4;
+               rel2 {
+                  relative:0 1;
+                  to:"base";
                }
-               image.middle: SOLID;
             }
          }
-         part { name: "clipper";
+         part { name: "arrow_area_right";
             type: RECT;
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
+            description { state: "default" 0.0;
+               visible: 0;
+               min: 40 0;
+               fixed: 1 1;
+               align: 0 0.5;
                rel1 {
-                  to: "base";
-                  offset: 2 2;
+                  relative: 1 0;
+                  to:"base";
                }
                rel2 {
-                  to: "base";
-                  offset: -3 -3;
+                  to_y: "base";
+               }
+            }
+         }
+         part { name: "arrow_area_up";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               min: 0 40;
+               fixed: 1 1;
+               align: 0.5 1;
+               rel1 {
+                  to_x: "base";
+               }
+               rel2 {
+                  relative: 1 0;
+                  to:"base";
+               }
+            }
+         }
+         part { name: "arrow_area_down";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               min: 0 40;
+               fixed: 1 1;
+               align: 0.5 0;
+               rel1 {
+                  relative: 0 1;
+                  to:"base";
+               }
+               rel2 {
+                  to_x: "base";
+               }
+            }
+         }
+         part { name: "elm.swallow.arrow_up";
+            type: SWALLOW;
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 1 1 0;
+               confine: "arrow_area_up";
+            }
+            description {
+               state: "default" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.arrow_down";
+            type: SWALLOW;
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 1 1 0;
+               confine: "arrow_area_down";
+            }
+            description {
+               state: "default" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.arrow_left";
+            type: SWALLOW;
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 1 1 0;
+               confine: "arrow_area_left";
+            }
+            description {
+               state: "default" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.arrow_right";
+            type: SWALLOW;
+            mouse_events: 0;
+            scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 1 1 0;
+               confine: "arrow_area_right";
+            }
+            description {
+               state: "default" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               visible: 1;
+            }
+         }
+         part { name: "base";
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.offset: -3 -3;
+               rel2.offset: 3 3;
+               image { normal: "bt_base2.png";
+                  border: 7 7 7 7;
+               }
+            }
+         }
+         part { name: "over1";
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               image { normal: "bt_hilight.png";
+                  border: 7 7 7 0;
+               }
+            }
+         }
+         part { name: "over2";
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               image { normal: "bt_shine.png";
+                  border: 7 7 7 7;
+               }
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 { to:"base"; offset: 4 4; };
+               rel2 { to:"base"; offset: -5 -5; };
+            }
+         }
+      }
+   }
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/ctxpopup/arrow/default";
+      images {
+         image: "icon_arrow_left.png" COMP;
+         image: "icon_arrow_right.png" COMP;
+         image: "icon_arrow_up.png" COMP;
+         image: "icon_arrow_down.png" COMP;
+      }
+      parts {
+         part { name: "ctxpopup_arrow";
+            type: IMAGE;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               visible: 0;
+               align: 0.5 0.5;
+            }
+            description {
+               state: "left" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               align: 0.0 0.5;
+               rel1 { offset: 7 0; }
+               rel2 { offset: 6 -1; }
+               image { normal: "icon_arrow_left.png"; }
+            }
+            description { state: "right" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               align: 1.0 0.5;
+               rel1 { offset: -7 0; }
+               rel2 { offset: -8 -1; }
+               image { normal: "icon_arrow_right.png"; }
+            }
+            description { state: "top" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               align: 0.5 0.0;
+               rel1 { offset: 0 7; }
+               rel2 { offset: -1 6; }
+               image { normal: "icon_arrow_up.png"; }
+            }
+            description { state: "bottom" 0.0;
+               min: 40 40;
+               fixed: 1 1;
+               align: 0.5 1.0;
+               rel1 { offset: 0 -7; }
+               rel2 { offset: -1 -8; }
+               image { normal: "icon_arrow_down.png"; }
+            }
+         }
+      }
+      programs {
+         program { name: "enable_left_arrow";
+            signal: "elm,state,left";
+            source: "elm";
+            action: STATE_SET "left" 0.0;
+            target: "ctxpopup_arrow";
+         }
+         program { name: "enable_right_arrow";
+            signal: "elm,state,right";
+            source: "elm";
+            action: STATE_SET "right" 0.0;
+            target: "ctxpopup_arrow";
+         }
+         program { name: "enable_top_arrow";
+            signal: "elm,state,top";
+            source: "elm";
+            action: STATE_SET "top" 0.0;
+            target: "ctxpopup_arrow";
+         }
+         program { name: "enable_bottom_arrow";
+            signal: "elm,state,bottom";
+            source: "elm";
+            action: STATE_SET "bottom" 0.0;
+            target: "ctxpopup_arrow";
+         }
+      }
+   }
+///////////////////////////////////////////////////////////////////////////////
+   group {
+      name: "elm/ctxpopup/icon_text_style_item/default";
+           alias: "elm/ctxpopup/text_style_item/default";
+           alias: "elm/ctxpopup/icon_style_item/default";
+      images {
+         image: "hoversel_entry_bg.png" COMP;
+      }
+      parts {
+         part { name: "event";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+            }
+         }
+         part { name: "bg";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.offset: 2 2;
+               rel2.offset: -3 -3;
+               image { normal:"hoversel_entry_bg.png";
+                  border: 0 0 2 2;
                }
+               fill.smooth: 0;
+               color: 255 255 255 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 255;
             }
          }
-         part { name: "elm.swallow.content";
-            clip_to: "clipper";
+         part { name: "elm.swallow.icon";
             type: SWALLOW;
-            description {
-               state: "default" 0.0;
-               rel1.to: "clipper";
-               rel2.to: "clipper";
+            clip_to: "disclip";
+            scale: 1;
+            description { state: "default" 0.0;
+               min: 25 25;
+               max: 25 25;
+               align: 0 0.5;
+               aspect: 1.0 1.0;
+               rel1 { offset: 10 10; }
+                                        rel2 { offset: 0 -10; }
             }
          }
-         part { name: "over2";
+         part { name: "elm.text";
+            type: TEXT;
             mouse_events: 0;
+            clip_to: "disclip";
+            scale: 1;
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel2.to: "base";
-               image {
-                  normal: "bt_dis_shine.png";
-                  border: 4 4 4 4;
+               min: 1 40;
+               fixed: 0 1;
+               align: 0.5 0.5;
+               rel1 { relative: 1.0 0.0; to: "elm.swallow.icon"; offset: 10 0; }
+               rel2 { relative: 1.0 1.0; offset: -11 -1; }
+               color: 255 255 255 255;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  align: 0.0 0.5;
+                  min: 1 1;
                }
             }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 255;
+            }
          }
          part { name: "over1";
-            mouse_events: 0;
+            mouse_events: 1;
+            repeat_events: 1;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel2.to: "base";
-               rel2.relative: 1.0 0.5;
-               image {
-                  normal: "bt_dis_hilight.png";
-                  border: 4 4 4 0;
-               }
-               color: 255 255 255 128;
+               color: 255 255 255 0;
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 255;
             }
          }
-         part { name: "left_arrow";
-            mouse_events: 0;
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
             description { state: "default" 0.0;
-               image.normal: "icon_left_arrow.png";
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               align: 0.0 0.5;
-               min: 32 32;
-               max: 32 32;
+               color: 255 255 255 0;
             }
-            description { state: "hidden" 0.0;
+            description { state: "clicked" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
+               color: 255 255 255 255;
             }
          }
-         part { name: "right_arrow";
-            mouse_events: 0;
+         part { name: "disclip";
+            type: RECT;
             description { state: "default" 0.0;
-               image.normal: "icon_right_arrow.png";
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               align: 1.0 0.5;
-               min: 32 32;
-               max: 32 32;
+               color: 255 255 255 255;
             }
-            description { state: "hidden" 0.0;
-               inherit: "default" 0.0;
+            description { state: "enabled" 0.0;
+               color: 127 127 127 127;
+            }
+         }
+         part { name: "blocker";
+            description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
             }
+            description { state: "enabled" 0.0;
+               visible: 1;
+               color: 0 0 0 0;
+            }
+         }
+      }
+      programs {
+         program {
+            name: "item_unclick";
+            signal: "mouse,up,1";
+            source: "over1";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "enabled" 0.0;
+            target: "disclip";
+            target: "blocker";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "disclip";
+            target: "blocker";
+         }
+         program { name: "item_click2";
+            signal: "mouse,down,1";
+            source: "over2";
+            script {
+               set_state(PART:"elm.text", "clicked", 0.0);
+               set_state(PART:"bg", "clicked", 0.0);
+            }
+         }
+         program { name: "item_unclick2";
+            signal: "mouse,up,1";
+            source: "over2";
+            script {
+                                        set_state(PART:"elm.text", "default", 0.0);
+               set_state(PART:"bg", "default", 0.0);
+            }
+         }
+      }
+   }
+///////////////////////////////////////////////////////////////////////////////
+// emoticon images from:
+// Tanya - Latvia
+// http://lazycrazy.deviantart.com/
+// http://lazycrazy.deviantart.com/art/Very-Emotional-Emoticons-144461621
+  group { name: "elm/entry/emoticon/angry/default"; images.image:
+     "emo-angry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-angry.png"; } } } }
+  group { name: "elm/entry/emoticon/angry-shout/default"; images.image:
+     "emo-angry-shout.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-angry-shout.png"; } } } }
+  group { name: "elm/entry/emoticon/crazy-laugh/default"; images.image:
+     "emo-crazy-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-crazy-laugh.png"; } } } }
+  group { name: "elm/entry/emoticon/evil-laugh/default"; images.image:
+     "emo-evil-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-evil-laugh.png"; } } } }
+  group { name: "elm/entry/emoticon/evil/default"; images.image:
+     "emo-evil.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-evil.png"; } } } }
+  group { name: "elm/entry/emoticon/goggle-smile/default"; images.image:
+     "emo-goggle-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-goggle-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/grumpy/default"; images.image:
+     "emo-grumpy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-grumpy.png"; } } } }
+  group { name: "elm/entry/emoticon/grumpy-smile/default"; images.image:
+     "emo-grumpy-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-grumpy-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/guilty/default"; images.image:
+     "emo-guilty.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-guilty.png"; } } } }
+  group { name: "elm/entry/emoticon/guilty-smile/default"; images.image:
+     "emo-guilty-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-guilty-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/haha/default"; images.image:
+     "emo-haha.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-haha.png"; } } } }
+  group { name: "elm/entry/emoticon/half-smile/default"; images.image:
+     "emo-half-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-half-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/happy-panting/default"; images.image:
+     "emo-happy-panting.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-happy-panting.png"; } } } }
+  group { name: "elm/entry/emoticon/happy/default"; images.image:
+     "emo-happy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-happy.png"; } } } }
+  group { name: "elm/entry/emoticon/indifferent/default"; images.image:
+     "emo-indifferent.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-indifferent.png"; } } } }
+  group { name: "elm/entry/emoticon/kiss/default"; images.image:
+     "emo-kiss.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-kiss.png"; } } } }
+  group { name: "elm/entry/emoticon/knowing-grin/default"; images.image:
+     "emo-knowing-grin.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-knowing-grin.png"; } } } }
+  group { name: "elm/entry/emoticon/laugh/default"; images.image:
+     "emo-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-laugh.png"; } } } }
+  group { name: "elm/entry/emoticon/little-bit-sorry/default"; images.image:
+     "emo-little-bit-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-little-bit-sorry.png"; } } } }
+  group { name: "elm/entry/emoticon/love-lots/default"; images.image:
+     "emo-love-lots.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-love-lots.png"; } } } }
+  group { name: "elm/entry/emoticon/love/default"; images.image:
+     "emo-love.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-love.png"; } } } }
+  group { name: "elm/entry/emoticon/minimal-smile/default"; images.image:
+     "emo-minimal-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-minimal-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/not-happy/default"; images.image:
+     "emo-not-happy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-not-happy.png"; } } } }
+  group { name: "elm/entry/emoticon/not-impressed/default"; images.image:
+     "emo-not-impressed.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-not-impressed.png"; } } } }
+  group { name: "elm/entry/emoticon/omg/default"; images.image:
+     "emo-omg.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-omg.png"; } } } }
+  group { name: "elm/entry/emoticon/opensmile/default"; images.image:
+     "emo-opensmile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-opensmile.png"; } } } }
+  group { name: "elm/entry/emoticon/smile/default"; images.image:
+     "emo-smile.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-smile.png"; } } } }
+  group { name: "elm/entry/emoticon/sorry/default"; images.image:
+     "emo-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-sorry.png"; } } } }
+  group { name: "elm/entry/emoticon/squint-laugh/default"; images.image:
+     "emo-squint-laugh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-squint-laugh.png"; } } } }
+  group { name: "elm/entry/emoticon/surprised/default"; images.image:
+     "emo-surprised.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-surprised.png"; } } } }
+  group { name: "elm/entry/emoticon/suspicious/default"; images.image:
+     "emo-suspicious.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-suspicious.png"; } } } }
+  group { name: "elm/entry/emoticon/tongue-dangling/default"; images.image:
+     "emo-tongue-dangling.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-tongue-dangling.png"; } } } }
+  group { name: "elm/entry/emoticon/tongue-poke/default"; images.image:
+     "emo-tongue-poke.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-tongue-poke.png"; } } } }
+  group { name: "elm/entry/emoticon/uh/default"; images.image:
+     "emo-uh.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-uh.png"; } } } }
+  group { name: "elm/entry/emoticon/unhappy/default"; images.image:
+     "emo-unhappy.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-unhappy.png"; } } } }
+  group { name: "elm/entry/emoticon/very-sorry/default"; images.image:
+     "emo-very-sorry.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-very-sorry.png"; } } } }
+  group { name: "elm/entry/emoticon/what/default"; images.image:
+     "emo-what.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-what.png"; } } } }
+  group { name: "elm/entry/emoticon/wink/default"; images.image:
+     "emo-wink.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-wink.png"; } } } }
+  group { name: "elm/entry/emoticon/worried/default"; images.image:
+     "emo-worried.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-worried.png"; } } } }
+  group { name: "elm/entry/emoticon/wtf/default"; images.image:
+     "emo-wtf.png" COMP; parts { part { name: "icon"; mouse_events: 0; description { state: "default" 0.0; max: 64 64; image.normal:
+        "emo-wtf.png"; } } } }
+//------------------------------------------------------------
+   group { name: "elm/entry/base/default";
+      styles
+      {
+         style { name: "entry_textblock_style";
+            base: "font=Sans font_size=10 color=#000 wrap=word text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
+            tag:  "hilight" "+ font=Sans:style=Bold";
          }
-         part { name: "event";
-            type: RECT;
-            mouse_events: 1;
-            repeat_events: 1;
-            description { state: "default" 0.0;
-               color: 0 0 0 0;
-            }
+         style { name: "entry_textblock_disabled_style";
+            base: "font=Sans font_size=10 color=#00000080 wrap=word text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
+            tag:  "hilight" "+ font=Sans:style=Bold";
          }
       }
-      programs {
-         program { name: "sb_hbar_show";
-            signal: "elm,action,show,hbar";
-            source: "elm";
-            action:  STATE_SET "default" 0.0;
-            transition: LINEAR 0.5;
-            target: "left_arrow";
-            target: "right_arrow";
-         }
-         program { name: "sb_hbar_hide";
-            signal: "elm,action,hide,hbar";
-            source: "elm";
-            action:  STATE_SET "hidden" 0.0;
-            target: "left_arrow";
-            target: "right_arrow";
-            transition: LINEAR 0.5;
-         }
+      data {
+//         item: context_menu_orientation "horizontal";
       }
-   }
-
-   group { name: "elm/toolbar/item/default";
-       images {
-           image: "toolbar_sel.png" COMP;
-       }
-       data.item: "transition_animation_on" "1";
-       parts {
-           part { name: "label2";
-               type: TEXT;
-               mouse_events:  0;
-               scale: 1;
-               clip_to: "elm.text.clipper";
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   fixed: 0 1;
-                   rel1.to: "elm.text";
-                   rel2.to: "elm.text";
-                   color: 0 0 0 255;
-                   text {
-                       font: "Sans";
-                       text_source: "elm.text";
-                       size: 10;
-                       min: 1 1;
-                       align: 0.5 0.5;
-                       text_class: "toolbar_item";
-                   }
-               }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 0;
-               }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-               }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-                   visible: 1;
-                   text.min: 1 1;
-               }
-           }
-           part { name: "label2_new";
-               type: TEXT;
-               mouse_events:  0;
-               scale: 1;
-               clip_to: "elm.text_new.clipper";
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   fixed: 0 1;
-                   rel1.to: "elm.text_new";
-                   rel2.to: "elm.text_new";
-                   color: 0 0 0 255;
-                   text {
-                       font: "Sans";
-                       text_source: "elm.text_new";
-                       size: 10;
-                       min: 1 1;
-                       align: 0.5 0.5;
-                       text_class: "toolbar_item";
-                   }
-               }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 0;
-               }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-               }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-                   visible: 1;
-                   text.min: 1 1;
-               }
-           }
-           part { name: "bg";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   image {
-                       normal: "toolbar_sel.png";
-                       border: 3 3 0 0;
-                   }
-                   image.middle: SOLID;
-                   fill.smooth: 0;
-               }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
-               }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-               }
-           }
-           part { name: "elm.swallow.icon";
-               type: SWALLOW;
-               clip_to: "elm.icon.clipper";
-               description { state: "default" 0.0;
-                   align: 0.5 0.5;
-                   fixed: 0 0;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: 2 2;
-                   }
-                   rel2 {
-                       to_y: "elm.text";
-                       relative: 1.0 0.0;
-                       offset: -3 -1;
-                   }
-                   color: 0 0 0 0;
-               }
-           }
-           part { name: "elm.swallow.icon_new";
-               type: SWALLOW;
-               clip_to: "elm.icon_new.clipper";
-               description { state: "default" 0.0;
-                   align: 0.5 0.5;
-                   fixed: 0 0;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: 2 2;
-                   }
-                   rel2 {
-                       to_y: "elm.text_new";
-                       relative: 1.0 0.0;
-                       offset: -3 -1;
-                   }
-                   color: 0 0 0 0;
-               }
-           }
-           part { name: "elm.text";
-               type: TEXT;
-               effect: SOFT_SHADOW;
-               mouse_events:  0;
-               scale: 1;
-               clip_to: "elm.text.clipper";
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   fixed: 0 1;
-                   rel1 {
-                       relative: 0.0 1.0;
-                       offset:   0 -1;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset:   -1 -1;
-                   }
-                   visible: 0;
-                   color: 224 224 224 255;
-                   color3: 0 0 0 32;
-                   text {
-                       font: "Sans:style=Bold";
-                       size: 10;
-                       min: 1 1;
-                       align: 0.5 0.5;
-                       text_class: "toolbar_item";
-                   }
-               }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   text.min: 1 1;
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: EDITABLE;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+   //       source2: "X"; // selection over
+   //       source3: "X"; // cursor under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+   //       source6: "X"; // anchor over
+            description { state: "default" 0.0;
+               /* we gotta use 0 0 here, because of scrolled entries */
+               fixed: 0 0;
+               text {
+                  style: "entry_textblock_style";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style";
+                  min: 0 1;
                }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-                   visible: 1;
-                   text.min: 1 1;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-mixedwrap/default";
+      styles
+      {
+         style { name: "entry_textblock_style_mixedwrap";
+            base: "font=Sans font_size=10 color=#000 wrap=mixed text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+         style { name: "entry_textblock_disabled_style_mixedwrap";
+            base: "font=Sans font_size=10 color=#00000080 wrap=char text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+      }
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: EDITABLE;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+//          source2: "X"; // selection over
+//          source3: "X"; // cursor under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+//          source6: "X"; // anchor over
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               text {
+                  style: "entry_textblock_style_mixedwrap";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-           }
-           part { name: "elm.text_new";
-               type: TEXT;
-               effect: SOFT_SHADOW;
-               mouse_events:  0;
-               clip_to: "elm.text_new.clipper";
-               scale: 1;
-               description { state: "default" 0.0;
-                   align: 0.5 1.0;
-                   fixed: 0 1;
-                   rel1 {
-                       relative: 0.0 1.0;
-                       offset:   0 -1;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset:   -1 -1;
-                   }
-                   visible: 0;
-                   color: 224 224 224 255;
-                   color3: 0 0 0 32;
-                   text {
-                       font: "Sans:style=Bold";
-                       size: 10;
-                       min: 1 1;
-                       align: 0.5 0.5;
-                       text_class: "toolbar_item";
-                   }
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style_mixedwrap";
+                  min: 0 1;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-charwrap/default";
+      styles
+      {
+         style { name: "entry_textblock_style_charwrap";
+            base: "font=Sans font_size=10 color=#000 wrap=char text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+         style { name: "entry_textblock_disabled_style_charwrap";
+            base: "font=Sans font_size=10 color=#00000080 wrap=char text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+      }
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: EDITABLE;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+//          source2: "X"; // selection over
+//          source3: "X"; // cursor under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+//          source6: "X"; // anchor over
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               text {
+                  style: "entry_textblock_style_charwrap";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style_charwrap";
+                  min: 0 1;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-nowrap/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: EDITABLE;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               text {
+                  style: "entry_textblock_style";
+                  min: 1 1;
+                  align: 0.0 0.0;
                }
-               description { state: "disabled_visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 128;
-                   color3: 0 0 0 0;
-                   visible: 1;
-                   text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style";
+                  min: 0 1;
                }
-           }
-           part { name: "elm.text.clipper";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 255 255 255 255;
+            }
+         }
+/*
+         part { name: "sel";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               align: 1.0 1.0;
+               max: 16 16;
+               aspect: 1.0 1.0;
+               color: 255 0 0 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 50;
+            }
+         }
+ */
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+/*
+         program { name: "selmode0";
+            signal: "elm,state,select,on";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+            target: "sel";
+         }
+         program { name: "selmode1";
+            signal: "elm,state,select,off";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "sel";
+         }
+ */
+      }
+   }
+
+   group { name: "elm/entry/base-single/default";
+      styles
+      {
+         style { name: "entry_single_textblock_style";
+            base: "font=Sans font_size=10 color=#000 wrap=none text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#800 underline=on underline_color=#8008";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+         style { name: "entry_single_textblock_disabled_style";
+            base: "font=Sans font_size=10 color=#00000080 wrap=none text_class=entry";
+            tag:  "br" "\n";
+            tag:  "ps" "ps";
+            tag:  "tab" "\t";
+            tag:  "em" "+ font=Sans:style=Oblique";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "link" "+ color=#00000080 underline=on underline_color=#00000080";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+         }
+      }
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: EDITABLE;
+            select_mode: EXPLICIT;
+            multiline: 0;
+            source: "elm/entry/selection/default"; // selection under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               text {
+                  style: "entry_single_textblock_style";
+                  min: 1 1;
+                  max: 0 0;
+                  align: 0.0 0.5;
                }
-               description { state: "animation" 0.0;
-                   color: 255 255 255 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_single_textblock_disabled_style";
                }
-           }
-           part { name: "elm.text_new.clipper";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-single-noedit/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PLAIN;
+            select_mode: EXPLICIT;
+            multiline: 0;
+            source: "elm/entry/selection/default"; // selection under
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               text {
+                  style: "entry_single_textblock_style";
+                  min: 1 1;
+                  max: 0 0;
+                  align: 0.0 0.5;
                }
-               description { state: "animation" 0.0;
-                   color: 255 255 255 255;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+               style: "entry_single_textblock_disabled_style";
                }
-           }
-           part { name: "elm.icon.clipper";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 255 255 255 255;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-noedit/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PLAIN;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               text {
+                  style: "entry_textblock_style";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-               description { state: "animation" 0.0;
-                   color: 255 255 255 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style";
+               }
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-noedit-mixedwrap/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PLAIN;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               text {
+                  style: "entry_textblock_style_mixedwrap";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-           }
-           part { name: "elm.icon_new.clipper";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 255 255 255 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style_mixedwrap";
                }
-               description { state: "animation" 0.0;
-                   color: 255 255 255 255;
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-noedit-charwrap/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PLAIN;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               text {
+                  style: "entry_textblock_style_charwrap";
+                  min: 0 1;
+                  align: 0.0 0.0;
                }
-           }
-           part { name: "event";
-               type: RECT;
-               mouse_events: 1;
-               ignore_flags: ON_HOLD;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style_charwrap";
                }
-           }
-       }
-       programs {
-           program { name: "go_active";
-               signal:  "elm,state,selected";
-               source:  "elm";
-               action:  STATE_SET "selected" 0.0;
-               target:  "bg";
-               target:  "elm.text";
-               target:  "label2";
-               target:  "elm.text_new";
-               target:  "label2_new";
-               transition: LINEAR 0.2;
-           }
-           program { name: "go_passive";
-               signal:  "elm,state,unselected";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "bg";
-               target:  "elm.text";
-               target:  "label2";
-               target:  "elm.text_new";
-               target:  "label2_new";
-               transition: LINEAR 0.1;
-           }
-           program { name: "go";
-               signal:  "mouse,up,1";
-               source:  "event";
-               action:  SIGNAL_EMIT "elm,action,click" "elm";
-           }
-           program { name: "mouse,in";
-              signal:  "mouse,in";
-              source:  "event";
-              action:  SIGNAL_EMIT "elm,mouse,in" "elm";
-           }
-           program { name: "mouse,out";
-              signal:  "mouse,out";
-              source:  "event";
-              action:  SIGNAL_EMIT "elm,mouse,out" "elm";
-           }
-           program { name: "disable";
-               signal: "elm,state,disabled";
-               source: "elm";
-               action: STATE_SET "disabled" 0.0;
-               target: "label2";
-               target: "label2_new";
-               target: "bg";
-               after: "disable_text";
-           }
-           program { name: "disable_text";
-               script {
-                   new st[31];
-                   new Float:vl;
-                   get_state(PART:"elm.text", st, 30, vl);
-                   if (!strcmp(st, "visible"))
-                   {
-                      set_state(PART:"elm.text", "disabled_visible", 0.0);
-                      set_state(PART:"elm.text_new", "disabled_visible", 0.0);
-                   }
-                   else
-                   {
-                      set_state(PART:"elm.text", "disabled", 0.0);
-                      set_state(PART:"elm.text_new", "disabled", 0.0);
-                   }
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-nowrap-noedit/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PLAIN;
+            select_mode: EXPLICIT;
+            multiline: 1;
+            source: "elm/entry/selection/default"; // selection under
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               text {
+                  style: "entry_textblock_style";
+                  min: 1 1;
+                  align: 0.0 0.0;
                }
-           }
-           program { name: "enable";
-               signal: "elm,state,enabled";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "label2";
-               target: "label2_new";
-               target: "bg";
-               after: "enable_text";
-           }
-           program { name: "enable_text";
-               script {
-                   new st[31];
-                   new Float:vl;
-                   get_state(PART:"elm.text", st, 30, vl);
-                   if (!strcmp(st, "disabled_visible"))
-                   {
-                      set_state(PART:"elm.text", "visible", 0.0);
-                      set_state(PART:"elm.text_new", "visible", 0.0);
-                   }
-                   else
-                   {
-                      set_state(PART:"elm.text", "default", 0.0);
-                      set_state(PART:"elm.text_new", "default", 0.0);
-                   }
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_textblock_disabled_style";
                }
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/base-password/default";
+      parts {
+         part { name: "elm.text";
+            type: TEXTBLOCK;
+            mouse_events: 1;
+            scale: 1;
+            entry_mode: PASSWORD;
+            select_mode: EXPLICIT;
+            multiline: 0;
+            source: "elm/entry/selection/default"; // selection under
+            source4: "elm/entry/cursor/default"; // cursorover
+            source5: "elm/entry/anchor/default"; // anchor under
+            description { state: "default" 0.0;
+               text {
+                  style: "entry_single_textblock_style";
+                  repch: "*";
+                  min: 1 1;
+                  max: 0 0;
+                  align: 0.0 0.5;
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "entry_single_textblock_disabled_style";
+               }
+            }
+         }
+      }
+      programs {
+         program { name: "focus";
+            signal: "load";
+            source: "";
+            action: FOCUS_SET;
+            target: "elm.text";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "elm.text";
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+      }
+   }
+
+   group { name: "elm/entry/cursor/default";
+      images {
+         image: "cur_box.png" COMP;
+         image: "cur_hi.png" COMP;
+         image: "cur_shad.png" COMP;
+         image: "cur_shine.png" COMP;
+         image: "cur_glow.png" COMP;
+      }
+      parts {
+         part { name: "clip2";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "clip";
+               rel2.to: "clip";
+               visible: 0;
+            }
+            description { state: "focused" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+         part { name: "clip";
+            type: RECT;
+            mouse_events: 0;
+            clip_to: "clip2";
+            description { state: "default" 0.0;
+               rel1.offset: -10 0;
+               rel2.offset: 9 9;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "bg";
+            mouse_events: 0;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel1.offset: -2 0;
+               rel2.to: "base";
+               rel2.offset: 1 1;
+               image.border: 2 2 2 2;
+               image.normal: "cur_shad.png";
+            }
+         }
+         part { name: "base";
+            mouse_events: 0;
+            scale: 1;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               min: 2 2;
+               align: 0.5 1.0;
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 -1;
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 -1;
+               image.normal: "cur_box.png";
+            }
+         }
+         part { name: "hi";
+            mouse_events: 0;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               image.normal: "cur_hi.png";
+            }
+         }
+         part { name: "shine";
+            mouse_events: 0;
+            clip_to: "clip";
+            clip_to: "clip2";
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.75;
+               image.border: 2 2 1 0;
+               image.normal: "cur_shine.png";
+               fill.smooth: 0;
+            }
+         }
+         part { name: "glow";
+            mouse_events: 0;
+            clip_to: "clip2";
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel1.relative: 0.0 -2.0;
+               rel1.offset: -2 0;
+               rel2.to: "base";
+               rel2.relative: 1.0 0.0;
+               rel2.offset: 1 1;
+               image.border: 2 2 0 4;
+               image.normal: "cur_glow.png";
+               fill.smooth: 0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
+            }
+         }
+      }
+      programs {
+         program { name: "show";
+            signal: "show";
+            source: "";
+            action: STATE_SET "hidden" 0.0;
+            in: 1.0 0.0;
+            transition: DECELERATE 2.0;
+            target: "glow";
+            after: "show2";
+         }
+         program { name: "show2";
+            action: STATE_SET "hidden" 0.0;
+            in: 0.2 0.0;
+            target: "clip";
+            after: "show3";
+         }
+         program { name: "show3";
+            action: STATE_SET "default" 0.0;
+            in: 0.5 0.0;
+            target: "clip";
+            after: "show4";
+         }
+         program { name: "show4";
+            action: STATE_SET "default" 0.0;
+            in: 0.5 0.0;
+            transition: DECELERATE 0.5;
+            target: "glow";
+            after: "show";
+         }
+         program { name: "focused";
+            signal: "elm,action,focus";
+            source: "elm";
+            action: STATE_SET "focused" 0.0;
+            target: "clip2";
+         }
+         program { name: "unfocused";
+            signal: "elm,action,unfocus";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "clip2";
+         }
+      }
+   }
+
+   group { name: "elm/entry/selection/default";
+      parts {
+         part { name: "bg";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               color: 128 128 128 128;
+            }
+         }
+      }
+   }
+
+   group { name: "elm/entry/anchor/default";
+      parts {
+         part { name: "bg";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               color: 128 0 0 64;
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+  group { name: "elm/bubble/top_left/default";
+    alias: "elm/bubble/base/default";
+    images {
+      image: "bubble_3.png" COMP;
+      image: "bubble_4.png" COMP;
+      image: "bubble_shine3.png" COMP;
+      image: "bubble_shine4.png" COMP;
+    }
+    parts {
+      part { name: "event";
+         type: RECT;
+         description {
+            state: "default" 0.0;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "elm.swallow.icon";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          fixed: 1 1;
+          visible: 0;
+          align: 0.0 0.0;
+          aspect: 1.0 1.0;
+          aspect_preference: VERTICAL;
+          rel1 {
+            relative: 0.0 0.0;
+            offset: 4 4;
+          }
+          rel2 {
+            to_y: "elm.text";
+            relative: 0.0 1.0;
+            offset: 4 -1;
+          }
+        }
+        description { state: "visible" 0.0;
+          inherit: "default" 0.0;
+          visible: 1;
+        }
+      }
+      part { name: "elm.text";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 0.0 0.0;
+          fixed: 0 1;
+          rel1 {
+            to_x: "elm.swallow.icon";
+            relative: 1.0 0.0;
+            offset: 4 4;
+          }
+          rel2 {
+            to_x: "elm.info";
+            relative: 0.0 0.0;
+            offset: -5 4;
+          }
+          color: 0 0 0 255;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 0 1;
+            max: 0 1;
+            align: 0.0 0.0;
+          }
+        }
+      }
+      part { name: "elm.info";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 1.0 0.0;
+          fixed: 1 1;
+          rel1 {
+            relative: 1.0 0.0;
+            offset: -5 4;
+          }
+          rel2 {
+            relative: 1.0 0.0;
+            offset: -5 4;
+          }
+          color: 0 0 0 64;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 1 1;
+            max: 1 1;
+            align: 1.0 0.0;
+          }
+        }
+      }
+      part { name: "base0";
+        mouse_events:  0;
+        description { state: "default" 0.0;
+          rel1 {
+            to_y: "elm.swallow.icon";
+            relative: 0.0 1.0;
+            offset: 0 0;
+          }
+          image {
+            normal: "bubble_3.png";
+            border: 36 11 18 9;
+          }
+          image.middle: SOLID;
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_4.png";
+              border: 11 36 18 9;
            }
-           program { name: "label_set,animation,forward";
-              signal: "elm,state,label_set,forward";
-              source: "elm";
-              after: "label_set,animation";
-           }
-           program { name: "label_set,animation,backward";
-              signal: "elm,state,label_set,backward";
-              source: "elm";
-              after: "label_set,animation";
-           }
-           program { name: "label_set,animation";
-              signal: "elm,state,label_set";
-              source: "elm";
-              action: STATE_SET "animation" 0.0;
-              target: "elm.text.clipper";
-              target: "elm.text_new.clipper";
-              transition: LINEAR 0.2;
-              after: "label_set,animation,done";
-           }
-           program { name: "label_set,animation,done";
-              action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
+        }
+      }
+      part { name: "elm.swallow.content";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 9 16;
+          }
+          rel2 {
+            to: "base0";
+            offset: -10 -9;
+          }
+        }
+      }
+      part { name: "shine";
+        mouse_events:  0;
+        description { state:    "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 5 4;
+          }
+          rel2 {
+            to: "base0";
+            relative: 1.0 0.5;
+            offset: -6 7;
+          }
+          image {
+            normal: "bubble_shine3.png";
+            border: 36 5 14 0;
+          }
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_shine4.png";
+              border: 5 36 14 0;
            }
-           program { name: "label,reset";
-              signal: "elm,state,label,reset";
-              source: "elm";
-              action: STATE_SET "default" 0.0;
-              target: "elm.text.clipper";
-              target: "elm.text_new.clipper";
+        }
+      }
+    }
+    programs {
+      program {
+        name: "icon_show";
+        signal: "elm,state,icon,visible";
+        source: "elm";
+        action: STATE_SET "visible" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program {
+        name: "icon_hide";
+        signal: "elm,state,icon,hidden";
+        source: "elm";
+        action: STATE_SET "default" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program { name: "to_rtl";
+         signal: "edje,state,rtl";
+         source: "edje";
+         action: STATE_SET "rtl" 0.0;
+         target: "base0";
+         target: "shine";
+      }
+      program { name: "to_ltr";
+         signal: "edje,state,ltr";
+         source: "edje";
+         action: STATE_SET "default" 0.0;
+         target: "base0";
+         target: "shine";
+      }
+    }
+  }
+
+  group { name: "elm/bubble/top_right/default";
+    images {
+      image: "bubble_3.png" COMP;
+      image: "bubble_4.png" COMP;
+      image: "bubble_shine3.png" COMP;
+      image: "bubble_shine4.png" COMP;
+    }
+    parts {
+      part { name: "event";
+         type: RECT;
+         description {
+            state: "default" 0.0;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "elm.swallow.icon";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          fixed: 1 1;
+          visible: 0;
+          align: 1.0 0.0;
+          aspect: 1.0 1.0;
+          aspect_preference: VERTICAL;
+          rel1 {
+            relative: 1.0 0.0;
+            offset: -5 4;
+          }
+          rel2 {
+            to_y: "elm.text";
+            relative: 1.0 1.0;
+            offset: -5 -1;
+          }
+        }
+        description { state: "visible" 0.0;
+          inherit: "default" 0.0;
+          visible: 1;
+        }
+      }
+      part { name: "elm.text";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 0.0 0.0;
+          fixed: 0 1;
+          rel1 {
+            relative: 0.0 0.0;
+            offset: 4 4;
+          }
+          rel2 {
+            to_x: "elm.info";
+            relative: 0.0 0.0;
+            offset: -5 4;
+          }
+          color: 0 0 0 255;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 0 1;
+            max: 0 1;
+            align: 0.0 0.0;
+          }
+        }
+      }
+      part { name: "elm.info";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 1.0 0.0;
+          fixed: 1 1;
+          rel1 {
+            relative: 1.0 0.0;
+            offset: -5 4;
+          }
+          rel2 {
+            to_x: "elm.swallow.icon";
+            relative: 0.0 0.0;
+            offset: -5 4;
+          }
+          color: 0 0 0 64;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 1 1;
+            max: 1 1;
+            align: 1.0 0.0;
+          }
+        }
+      }
+      part { name: "base0";
+        mouse_events:  0;
+        description { state: "default" 0.0;
+          rel1 {
+            to_y: "elm.swallow.icon";
+            relative: 0.0 1.0;
+            offset: 0 0;
+          }
+          image {
+            normal: "bubble_4.png";
+            border: 11 36 18 9;
+          }
+          image.middle: SOLID;
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_3.png";
+              border: 36 11 18 9;
            }
-           program { name: "icon_set,animation,forward";
-              signal: "elm,state,icon_set,forward";
-              source: "elm";
-              after: "icon_set,animation";
+        }
+      }
+      part { name: "elm.swallow.content";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 9 16;
+          }
+          rel2 {
+            to: "base0";
+            offset: -10 -9;
+          }
+        }
+      }
+      part { name: "shine";
+        mouse_events:  0;
+        description { state:    "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 5 4;
+          }
+          rel2 {
+            to: "base0";
+            relative: 1.0 0.5;
+            offset: -6 7;
+          }
+          image {
+            normal: "bubble_shine4.png";
+            border: 5 36 14 0;
+          }
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_shine3.png";
+              border: 36 5 14 0;
            }
-           program { name: "icon_set,animation,backward";
-              signal: "elm,state,icon_set,backward";
-              source: "elm";
-              after: "icon_set,animation";
+        }
+      }
+    }
+    programs {
+      program {
+        name: "icon_show";
+        signal: "elm,state,icon,visible";
+        source: "elm";
+        action: STATE_SET "visible" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program {
+        name: "icon_hide";
+        signal: "elm,state,icon,hidden";
+        source: "elm";
+        action: STATE_SET "default" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program { name: "to_rtl";
+         signal: "edje,state,rtl";
+         source: "edje";
+         action: STATE_SET "rtl" 0.0;
+         target: "base0";
+         target: "shine";
+      }
+      program { name: "to_ltr";
+         signal: "edje,state,ltr";
+         source: "edje";
+         action: STATE_SET "default" 0.0;
+         target: "base0";
+         target: "shine";
+      }
+    }
+  }
+
+  group { name: "elm/bubble/bottom_left/default";
+    images {
+      image: "bubble_1.png" COMP;
+      image: "bubble_2.png" COMP;
+      image: "bubble_shine.png" COMP;
+    }
+    parts {
+      part { name: "event";
+         type: RECT;
+         description {
+            state: "default" 0.0;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "elm.swallow.icon";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          fixed: 1 1;
+          visible: 0;
+          align: 0.0 1.0;
+          aspect: 1.0 1.0;
+          aspect_preference: VERTICAL;
+          rel1 {
+            to_y: "elm.text";
+            relative: 0.0 0.0;
+            offset: 4 0;
+          }
+          rel2 {
+            relative: 0.0 1.0;
+            offset: 4 -5;
+          }
+        }
+        description { state: "visible" 0.0;
+          inherit: "default" 0.0;
+          visible: 1;
+        }
+      }
+      part { name: "elm.text";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 0.0 1.0;
+          fixed: 0 1;
+          rel1 {
+            to_x: "elm.swallow.icon";
+            relative: 1.0 1.0;
+            offset: 4 -5;
+          }
+          rel2 {
+            to_x: "elm.info";
+            relative: 0.0 1.0;
+            offset: -5 -5;
+          }
+          color: 0 0 0 255;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 0 1;
+            max: 0 1;
+            align: 0.0 1.0;
+          }
+        }
+      }
+      part { name: "elm.info";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 1.0 1.0;
+          fixed: 1 1;
+          rel1 {
+            relative: 1.0 1.0;
+            offset: -5 -5;
+          }
+          rel2 {
+            relative: 1.0 1.0;
+            offset: -5 -5;
+          }
+          color: 0 0 0 64;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 1 1;
+            max: 1 1;
+            align: 1.0 1.0;
+          }
+        }
+      }
+      part { name: "base0";
+        mouse_events:  0;
+        description { state: "default" 0.0;
+          rel2 {
+            to_y: "elm.swallow.icon";
+            relative: 1.0 0.0;
+            offset: -1 -1;
+          }
+          image {
+            normal: "bubble_1.png";
+            border: 36 11 10 19;
+          }
+          image.middle: SOLID;
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_2.png";
+              border: 11 36 10 19;
            }
-           program { name: "icon_set,animation";
-              signal: "elm,state,icon_set";
-              source: "elm";
-              action: STATE_SET "animation" 0.0;
-              target: "elm.icon.clipper";
-              target: "elm.icon_new.clipper";
-              transition: LINEAR 0.2;
-              after: "icon_set,animation,done";
+        }
+      }
+      part { name: "elm.swallow.content";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 9 8;
+          }
+          rel2 {
+            to: "base0";
+            offset: -10 -17;
+          }
+        }
+      }
+      part { name: "shine";
+        mouse_events:  0;
+        description { state:    "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 5 4;
+          }
+          rel2 {
+            to: "base0";
+            relative: 1.0 0.5;
+            offset: -6 -16;
+          }
+          image {
+            normal: "bubble_shine.png";
+            border: 5 5 5 0;
+          }
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_shine4.png";
+              border: 5 36 14 0;
            }
-           program { name: "icon_set,animation,done";
-              action: SIGNAL_EMIT "elm,state,icon_set,done" "elm";
+        }
+      }
+    }
+    programs {
+      program {
+        name: "icon_show";
+        signal: "elm,state,icon,visible";
+        source: "elm";
+        action: STATE_SET "visible" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program {
+        name: "icon_hide";
+        signal: "elm,state,icon,hidden";
+        source: "elm";
+        action: STATE_SET "default" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program { name: "to_rtl";
+         signal: "edje,state,rtl";
+         source: "edje";
+         action: STATE_SET "rtl" 0.0;
+         target: "base0";
+      }
+      program { name: "to_ltr";
+         signal: "edje,state,ltr";
+         source: "edje";
+         action: STATE_SET "default" 0.0;
+         target: "base0";
+      }
+    }
+  }
+
+  group { name: "elm/bubble/bottom_right/default";
+    images {
+      image: "bubble_1.png" COMP;
+      image: "bubble_2.png" COMP;
+      image: "bubble_shine.png" COMP;
+    }
+    parts {
+      part { name: "event";
+         type: RECT;
+         description {
+            state: "default" 0.0;
+            color: 0 0 0 0;
+         }
+      }
+      part { name: "elm.swallow.icon";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          fixed: 1 1;
+          visible: 0.0;
+          align: 1.0 1.0;
+          aspect: 1.0 1.0;
+          aspect_preference: VERTICAL;
+          rel1 {
+            to_y: "elm.text";
+            relative: 1.0 0.0;
+            offset: -5 0;
+          }
+          rel2 {
+            relative: 1.0 1.0;
+            offset: -5 -5;
+          }
+        }
+        description { state: "visible" 0.0;
+          inherit: "default" 0.0;
+          visible: 1;
+        }
+      }
+      part { name: "elm.text";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 0.0 1.0;
+          fixed: 0 1;
+          rel1 {
+            relative: 0.0 1.0;
+            offset: 4 -5;
+          }
+          rel2 {
+            to_x: "elm.info";
+            relative: 0.0 1.0;
+            offset: -5 -5;
+          }
+          color: 0 0 0 255;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 0 1;
+            max: 0 1;
+            align: 0.0 1.0;
+          }
+        }
+      }
+      part { name: "elm.info";
+        type: TEXT;
+        mouse_events:   0;
+        scale: 1;
+        description { state: "default" 0.0;
+          align: 1.0 1.0;
+          fixed: 1 1;
+          rel1 {
+            relative: 1.0 1.0;
+            offset: -5 -5;
+          }
+          rel2 {
+            to_x: "elm.swallow.icon";
+            relative: 0.0 1.0;
+            offset: -5 -5;
+          }
+          color: 0 0 0 64;
+          text {
+            font: "Sans:style=Bold,Edje-Vera-Bold";
+            size: 10;
+            min: 1 1;
+            max: 1 1;
+            align: 1.0 1.0;
+          }
+        }
+      }
+      part { name: "base0";
+        mouse_events:  0;
+        description { state: "default" 0.0;
+          rel2 {
+            to_y: "elm.swallow.icon";
+            relative: 1.0 0.0;
+            offset: -1 -1;
+          }
+          image {
+            normal: "bubble_2.png";
+            border: 11 36 10 19;
+          }
+          image.middle: SOLID;
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_1.png";
+              border: 36 11 10 19;
            }
-           program { name: "icon,reset";
-              signal: "elm,state,icon,reset";
-              source: "elm";
-              action: STATE_SET "default" 0.0;
-              target: "elm.icon.clipper";
-              target: "elm.icon_new.clipper";
+        }
+      }
+      part { name: "elm.swallow.content";
+        type: SWALLOW;
+        description { state: "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 9 8;
+          }
+          rel2 {
+            to: "base0";
+            offset: -10 -17;
+          }
+        }
+      }
+      part { name: "shine";
+        mouse_events:  0;
+        description { state:    "default" 0.0;
+          rel1 {
+            to: "base0";
+            offset: 5 4;
+          }
+          rel2 {
+            to: "base0";
+            relative: 1.0 0.5;
+            offset: -6 -16;
+          }
+          image {
+            normal: "bubble_shine.png";
+            border: 5 5 5 0;
+          }
+          fill.smooth: 0;
+        }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_shine3.png";
+              border: 36 5 14 0;
            }
-       }
-   }
+        }
+      }
+    }
+    programs {
+      program {
+        name: "icon_show";
+        signal: "elm,state,icon,visible";
+        source: "elm";
+        action: STATE_SET "visible" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program {
+        name: "icon_hide";
+        signal: "elm,state,icon,hidden";
+        source: "elm";
+        action: STATE_SET "default" 0.0;
+        target: "elm.swallow.icon";
+      }
+      program { name: "to_rtl";
+         signal: "edje,state,rtl";
+         source: "edje";
+         action: STATE_SET "rtl" 0.0;
+         target: "base0";
+      }
+      program { name: "to_ltr";
+         signal: "edje,state,ltr";
+         source: "edje";
+         action: STATE_SET "default" 0.0;
+         target: "base0";
+      }
+    }
+  }
 
-   group { name: "elm/toolbar/separator/default";
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/photo/base/default";
       images {
-         image: "toolbar_separator_v.png" COMP;
+         image: "frame_1.png" COMP;
+         image: "frame_2.png" COMP;
+         image: "dia_grad.png" COMP;
+         image: "head.png" COMP;
       }
       parts {
-         part { name: "separator"; // separator group
+         part { name: "base0";
+            mouse_events:  0;
             description { state: "default" 0.0;
-               min: 2 2;
-               max: 2 9999;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              image {
-                 normal: "toolbar_separator_v.png";
-              }
-              fill {
-                 smooth: 0;
-              }
-           }
-        }
-      }
-   }
-
-   ///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/notify/block_events/default";
-       parts {
-           part { name: "block_events";
-               type: RECT;
-               description { state: "default" 0.0;
-                   color: 0 0 0 64;
-                   visible: 1;
-               }
-           }
-       }
-          programs {
-                  program {
-                               name: "block_clicked";
-                               signal: "mouse,clicked,1";
-                               source: "block_events";
-                               action: SIGNAL_EMIT "elm,action,clicked" "elm";
-                  }
-          }
-   }
-   group { name: "elm/notify/top/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 -1.0;
-                   rel2.relative: 1.0 0.0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
-               }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
-               }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
-               }
-           }
-           part { name: "popover";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
+               image.normal: "dia_grad.png";
+               rel1.to: "over";
+               rel2.to: "over";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+            }
+         }
+         part { name: "base";
+            mouse_events:  0;
+            description { state:    "default" 0.0;
+               image {
+                  normal: "frame_2.png";
+                  border: 5 5 32 26;
+                  middle: 0;
                }
-           }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-                signal: "show";
-                action: STATE_SET "default" 0.0;
-                target: "base";
-                after: "show_3";
-           }
-           program { name: "show_3";
-                signal: "show";
-                action: STATE_SET "visible" 0.0;
-                target: "base";
-                transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "head";
+            mouse_events:  0;
+            description { state:    "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               aspect: 1.0 1.0;
+               aspect_preference: BOTH;
+               image.normal: "head.png";
+            }
+         }
+         part { name: "clip";
+            mouse_events:  0;
+            type: RECT;
+            description { state:    "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+            }
+         }
+         part { name: "over";
+            mouse_events:  0;
+            description { state:    "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               image {
+                  normal: "frame_1.png";
+                  border: 2 2 28 22;
+                  middle: 0;
+               }
+               fill.smooth: 0;
+            }
+         }
+     }
    }
-   group { name: "elm/notify/center/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "bt_dis_base.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+
+   group { name: "elm/photo/base/shadow";
+              images {
+                        image: "shadow.png" COMP;
+                        image: "black.png" COMP;
+              }
+              script {
+              public message(Msg_Type:type, id, ...) {
+                if( (type==MSG_INT_SET) && (id==0) )
+                {
+                    new w;
+                    new h;
+
+                    custom_state(PART:"size", "default", 0.0);
+
+                    w = getarg(2);
+                    h = getarg(3);
+                    set_state_val(PART:"size", STATE_REL1_OFFSET, - w/2, - h/2);
+                    set_state_val(PART:"size", STATE_REL2_OFFSET, w/2 + 1, h/2 + 1);
+                    set_state(PART:"size", "custom", 0.0);
+                }
+            }
+            }
+              parts {
+              part { name: "size";
+                    type: SWALLOW;
+                    description { state: "default" 0.0;
+                            rel1.relative: 0.5 0.5;
+                            rel2.relative: 0.5 0.5;
+                    }
+                 }
+              part {
+                name: "shadow";
+                type: IMAGE;
+                repeat_events: 1;
+                description {
+                    state: "default" 0.0;
+                    rel1.to: "size";
+                    rel2.to: "size";
+                    rel1.relative: -0.06 -0.06;
+                    rel2.relative: 1.07 1.07;
+                    image.normal: "shadow.png";
+                }
+            }
+
+
+                 part { name: "elm.swallow.content";
+                    type: SWALLOW;
+                    description { state: "default" 0.0;
+                    rel1.offset: 3 3;
+                    rel2.offset: -3 -3;
+                            fixed: 1 1;
+                    }
+                 }
+
+                 part {
+                name: "border";
+                type: IMAGE;
+                repeat_events: 1;
+                description {
+                    state: "default" 0.0;
+                    visible: 1;
+                    color: 0 0 0 255;
+                    rel1.to: "size";
+                    rel2.to: "size";
+                    image.normal: "black.png";
+                    image.border: 1 1 1 1;
+                    image.middle: 0;
+                }
+            }
+                 }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/thumb/base/default";
+      images {
+         image: "frame_1.png" COMP;
+         image: "frame_2.png" COMP;
+         image: "dia_grad.png" COMP;
+         image: "busy-1.png" COMP;
+         image: "busy-2.png" COMP;
+         image: "busy-3.png" COMP;
+         image: "busy-4.png" COMP;
+         image: "busy-5.png" COMP;
+         image: "busy-6.png" COMP;
+         image: "busy-7.png" COMP;
+         image: "busy-8.png" COMP;
+         image: "busy-9.png" COMP;
+      }
+      parts {
+         part { name: "base0";
+            mouse_events:  0;
+            description { state:        "default" 0.0;
+               image.normal: "dia_grad.png";
+               rel1.to: "over";
+               rel2.to: "over";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
+            }
+         }
+         part { name: "base";
+            mouse_events:  0;
+            description { state:        "default" 0.0;
+               image {
+                  normal: "frame_2.png";
+                  border: 5 5 32 26;
+                  middle: 0;
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+               fill.smooth : 0;
+            }
+         }
+         part { name: "clip";
+            mouse_events:  0;
+            type: RECT;
+            description { state:        "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            clip_to: "clip";
+            description { state:        "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+            }
+         }
+         part { name: "progress";
+            mouse_events: 0;
+
+            clip_to: "clip";
+            description { state:        "default" 0.0;
+               min: 32 32;
+               max: 32 32;
+               visible: 0;
+               aspect: 1.0 1.0;
+               aspect_preference: BOTH;
+            }
+            description { state:        "pulse" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "busy-9.png";
+                  tween:  "busy-1.png";
+                  tween:  "busy-2.png";
+                  tween:  "busy-3.png";
+                  tween:  "busy-4.png";
+                  tween:  "busy-5.png";
+                  tween:  "busy-6.png";
+                  tween:  "busy-7.png";
+                  tween:  "busy-8.png";
+                  border: 7 7 7 7;
                }
-           }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
+            }
+         }
+         part { name: "over";
+            mouse_events:  0;
+            description { state:        "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               image {
+                  normal: "frame_1.png";
+                  border: 2 2 28 22;
+                  middle: 0;
+               }
+               fill.smooth: 0;
+            }
+         }
+         programs {
+            program { name: "start_pulse";
+               signal: "elm,state,pulse,start";
                source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-                signal: "show";
-                action: STATE_SET "default" 0.0;
-                target: "base";
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
+               action: STATE_SET "pulse" 0.0;
+               target: "progress";
+               transition: LINEAR 0.5;
+               after: "start_pulse";
+            }
+            program { name: "stop_pulse";
+               signal: "elm,state,pulse,stop";
                source: "elm";
                action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
+               target: "progress";
+            }
+         }
+      }
    }
-   group { name: "elm/notify/bottom/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 1.0;
-                   rel2.relative: 1.0 2.0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
-               }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
-               }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
-               }
-           }
-           part { name: "popover";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
-               }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+
+   group { name: "elm/thumb/base/noframe";
+      images {
+         image: "busy-1.png" COMP;
+         image: "busy-2.png" COMP;
+         image: "busy-3.png" COMP;
+         image: "busy-4.png" COMP;
+         image: "busy-5.png" COMP;
+         image: "busy-6.png" COMP;
+         image: "busy-7.png" COMP;
+         image: "busy-8.png" COMP;
+         image: "busy-9.png" COMP;
+      }
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+            }
+         }
+         part { name: "progress";
+            mouse_events: 0;
+            description { state:        "default" 0.0;
+               min: 32 32;
+               max: 32 32;
+               visible: 0;
+               aspect: 1.0 1.0;
+               aspect_preference: BOTH;
+            }
+            description { state:        "pulse" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "busy-9.png";
+                  tween:  "busy-1.png";
+                  tween:  "busy-2.png";
+                  tween:  "busy-3.png";
+                  tween:  "busy-4.png";
+                  tween:  "busy-5.png";
+                  tween:  "busy-6.png";
+                  tween:  "busy-7.png";
+                  tween:  "busy-8.png";
+                  border: 7 7 7 7;
                }
-           }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
+            }
+         }
+         programs {
+            program { name: "start_pulse";
+               signal: "elm,state,pulse,start";
                source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-                signal: "show";
-                action: STATE_SET "default" 0.0;
-                target: "base";
-                after: "show_3";
-           }
-           program { name: "show_3";
-                signal: "show";
-                action: STATE_SET "visible" 0.0;
-                target: "base";
-                transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
+               action: STATE_SET "pulse" 0.0;
+               target: "progress";
+               transition: LINEAR 0.5;
+               after: "start_pulse";
+            }
+            program { name: "stop_pulse";
+               signal: "elm,state,pulse,stop";
                source: "elm";
                action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
+               target: "progress";
+            }
+         }
+      }
    }
-   group { name: "elm/notify/left/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-               description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: -1.0 0.0;
-                   rel2.relative: 0.0 1.0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/icon/home/default"; alias: "elm/icon/toolbar/home/default"; min: 32 32;
+      images.image: "icon_home.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_home.png"; } } } }
+   group { name: "elm/icon/close/default"; alias: "elm/icon/toolbar/close/default"; min: 32 32;
+      images.image: "icon_close.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_close.png"; } } } }
+   group { name: "elm/icon/apps/default"; alias: "elm/icon/toolbar/apps/default"; min: 32 32;
+      images.image: "icon_apps.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_apps.png"; } } } }
+   group { name: "elm/icon/arrow_up/default"; alias: "elm/icon/toolbar/arrow_up/default"; min: 32 32;
+      images.image: "icon_arrow_up.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_up.png"; } } } }
+   group { name: "elm/icon/arrow_down/default";
+           alias: "elm/icon/toolbar/arrow_down/default";
+           alias: "elm/icon/toolbar/more_menu/default"; min: 32 32;
+      images.image: "icon_arrow_down.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_down.png"; } } } }
+   group { name: "elm/icon/arrow_left/default"; alias: "elm/icon/toolbar/arrow_left/default"; min: 32 32;
+      images.image: "icon_arrow_left.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_left.png"; } } } }
+   group { name: "elm/icon/arrow_right/default"; alias: "elm/icon/toolbar/arrow_right/default"; min: 32 32;
+      images.image: "icon_arrow_right.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_right.png"; } } } }
+   group { name: "elm/icon/chat/default"; alias: "elm/icon/toolbar/chat/default"; min: 32 32;
+      images.image: "icon_chat.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_chat.png"; } } } }
+   group { name: "elm/icon/clock/default"; alias: "elm/icon/toolbar/clock/default"; min: 32 32;
+      images.image: "icon_clock.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_clock.png"; } } } }
+   group { name: "elm/icon/delete/default"; alias: "elm/icon/toolbar/delete/default"; min: 32 32;
+      images.image: "icon_delete.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_delete.png"; } } } }
+   group { name: "elm/icon/edit/default"; alias: "elm/icon/toolbar/edit/default"; min: 32 32;
+      images.image: "icon_edit.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_edit.png"; } } } }
+   group { name: "elm/icon/refresh/default"; alias: "elm/icon/toolbar/refresh/default"; min: 32 32;
+      images.image: "icon_refresh.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_refresh.png"; } } } }
+   group { name: "elm/icon/folder/default"; alias: "elm/icon/toolbar/folder/default"; min: 32 32;
+      images.image: "icon_folder.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_folder.png"; } } } }
+   group { name: "elm/icon/file/default"; alias: "elm/icon/toolbar/file/default"; min: 32 32;
+      images.image: "icon_file.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_file.png"; } } } }
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/icon/menu/home/default"; min: 24 24; max: 24 24;
+      images.image: "icon_home.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_home.png"; } } } }
+   group { name: "elm/icon/menu/close/default"; min: 24 24; max: 24 24;
+      images.image: "icon_close.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_close.png"; } } } }
+   group { name: "elm/icon/menu/apps/default"; min: 24 24; max: 24 24;
+      images.image: "icon_apps.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_apps.png"; } } } }
+   group { name: "elm/icon/menu/arrow_up/default"; min: 24 24; max: 24 24;
+      images.image: "icon_arrow_up.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_up.png"; } } } }
+   group { name: "elm/icon/menu/arrow_down/default"; min: 24 24; max: 24 24;
+      images.image: "icon_arrow_down.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_down.png"; } } } }
+   group { name: "elm/icon/menu/arrow_left/default"; min: 24 24; max: 24 24;
+      images.image: "icon_arrow_left.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_left.png"; } } } }
+   group { name: "elm/icon/menu/arrow_right/default"; min: 24 24; max: 24 24;
+      images.image: "icon_arrow_right.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_arrow_right.png"; } } } }
+   group { name: "elm/icon/menu/chat/default"; min: 24 24; max: 24 24;
+      images.image: "icon_chat.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_chat.png"; } } } }
+   group { name: "elm/icon/menu/clock/default"; min: 24 24; max: 24 24;
+      images.image: "icon_clock.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_clock.png"; } } } }
+   group { name: "elm/icon/menu/delete/default"; min: 24 24; max: 24 24;
+      images.image: "icon_delete.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_delete.png"; } } } }
+   group { name: "elm/icon/menu/edit/default"; min: 24 24; max: 24 24;
+      images.image: "icon_edit.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_edit.png"; } } } }
+   group { name: "elm/icon/menu/refresh/default"; min: 24 24; max: 24 24;
+      images.image: "icon_refresh.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_refresh.png"; } } } }
+   group { name: "elm/icon/menu/folder/default"; min: 24 24; max: 24 24;
+      images.image: "icon_folder.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_folder.png"; } } } }
+   group { name: "elm/icon/menu/file/default"; min: 24 24; max: 24 24;
+      images.image: "icon_file.png" COMP; parts { part { name: "base";
+         description { state: "default" 0.0; aspect: 1.0 1.0; aspect_preference: BOTH;
+            image.normal: "icon_file.png"; } } } }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/toolbar/base/default";
+      images {
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+         image: "bt_dis_shine.png" COMP;
+         image: "icon_left_arrow.png" COMP;
+         image: "icon_right_arrow.png" COMP;
+      }
+      parts {
+         part { name: "base";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: 2 2;
                }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
+               rel2.offset: -3 -3;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
+               image.middle: SOLID;
+            }
+         }
+         part { name: "clipper";
+            type: RECT;
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               rel1 {
+                  to: "base";
+                  offset: 2 2;
                }
-           }
-           part { name: "popover";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
+               rel2 {
+                  to: "base";
+                  offset: -3 -3;
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+            }
+         }
+         part { name: "elm.swallow.content";
+            clip_to: "clipper";
+            type: SWALLOW;
+            description {
+               state: "default" 0.0;
+               rel1.to: "clipper";
+               rel2.to: "clipper";
+            }
+         }
+         part { name: "over2";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               image {
+                  normal: "bt_dis_shine.png";
+                  border: 4 4 4 4;
                }
-           }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
-           }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
+            }
+         }
+         part { name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+               color: 255 255 255 128;
+            }
+         }
+         part { name: "left_arrow";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               image.normal: "icon_left_arrow.png";
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               align: 0.0 0.5;
+               min: 32 32;
+               max: 32 32;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "right_arrow";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               image.normal: "icon_right_arrow.png";
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               align: 1.0 0.5;
+               min: 32 32;
+               max: 32 32;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+            }
+         }
+         part { name: "event";
+            type: RECT;
+            mouse_events: 1;
+            repeat_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+      }
+      programs {
+         program { name: "sb_hbar_show";
+            signal: "elm,action,show,hbar";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            transition: LINEAR 0.5;
+            target: "left_arrow";
+            target: "right_arrow";
+         }
+         program { name: "sb_hbar_hide";
+            signal: "elm,action,hide,hbar";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "left_arrow";
+            target: "right_arrow";
+            transition: LINEAR 0.5;
+         }
+      }
    }
-   group { name: "elm/notify/right/default";
-       //this group is a design similar to the inwin group
+
+   group { name: "elm/toolbar/item/default";
        images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
+           image: "toolbar_sel.png" COMP;
        }
+       data.item: "transition_animation_on" "1";
        parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-                description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 1.0 0.0;
-                   rel2.relative: 2.0 1.0;
+           part { name: "label2";
+               type: TEXT;
+               mouse_events:  0;
+               scale: 1;
+               clip_to: "elm.text.clipper";
+               description { state: "default" 0.0;
+                   align: 0.5 1.0;
+                   fixed: 0 1;
+                   rel1.to: "elm.text";
+                   rel2.to: "elm.text";
+                   color: 0 0 0 255;
+                   text {
+                       font: "Sans";
+                       text_source: "elm.text";
+                       size: 10;
+                       min: 1 1;
+                       align: 0.5 0.5;
+                       text_class: "toolbar_item";
+                   }
                }
-               description { state: "visible" 0.0;
+               description { state: "selected" 0.0;
                    inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+                   visible: 0;
                }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
+                   visible: 1;
+                   text.min: 1 1;
                }
            }
-           part { name: "popover";
-               mouse_events: 0;
+           part { name: "label2_new";
+               type: TEXT;
+               mouse_events:  0;
+               scale: 1;
+               clip_to: "elm.text_new.clipper";
                description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
+                   align: 0.5 1.0;
+                   fixed: 0 1;
+                   rel1.to: "elm.text_new";
+                   rel2.to: "elm.text_new";
+                   color: 0 0 0 255;
+                   text {
+                       font: "Sans";
+                       text_source: "elm.text_new";
+                       size: 10;
+                       min: 1 1;
+                       align: 0.5 0.5;
+                       text_class: "toolbar_item";
                    }
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
-               }
-           }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
-           }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
-   }
-   group { name: "elm/notify/top_left/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-                description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 -1.0;
-                   rel2.relative: 1.0 0.0;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 0;
                }
-               description { state: "visible" 0.0;
+               description { state: "disabled" 0.0;
                    inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
                }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
+                   visible: 1;
+                   text.min: 1 1;
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
+           }
+           part { name: "bg";
+               mouse_events: 0;
                description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
+                   visible: 0;
+                   color: 255 255 255 0;
                    image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
+                       normal: "toolbar_sel.png";
+                       border: 3 3 0 0;
                    }
                    image.middle: SOLID;
+                   fill.smooth: 0;
+               }
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
                }
            }
-           part { name: "popover";
-               mouse_events: 0;
+           part { name: "elm.swallow.icon";
+               type: SWALLOW;
+               clip_to: "elm.icon.clipper";
                description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
+                   align: 0.5 0.5;
+                   fixed: 0 0;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: 2 2;
                    }
+                   rel2 {
+                       to_y: "elm.text";
+                       relative: 1.0 0.0;
+                       offset: -3 -1;
+                   }
+                   color: 0 0 0 0;
                }
            }
-           part { name: "elm.swallow.content";
+           part { name: "elm.swallow.icon_new";
                type: SWALLOW;
+               clip_to: "elm.icon_new.clipper";
                description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+                   align: 0.5 0.5;
+                   fixed: 0 0;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: 2 2;
+                   }
+                   rel2 {
+                       to_y: "elm.text_new";
+                       relative: 1.0 0.0;
+                       offset: -3 -1;
+                   }
+                   color: 0 0 0 0;
                }
            }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
-           }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
-   }
-   group { name: "elm/notify/top_right/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
+           part { name: "elm.text";
+               type: TEXT;
+               effect: SOFT_SHADOW;
+               mouse_events:  0;
+               scale: 1;
+               clip_to: "elm.text.clipper";
                description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 -1.0;
-                   rel2.relative: 1.0 0.0;
+                   align: 0.5 1.0;
+                   fixed: 0 1;
+                   rel1 {
+                       relative: 0.0 1.0;
+                       offset:   0 -1;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset:   -1 -1;
+                   }
+                   visible: 0;
+                   color: 224 224 224 255;
+                   color3: 0 0 0 32;
+                   text {
+                       font: "Sans:style=Bold";
+                       size: 10;
+                       min: 1 1;
+                       align: 0.5 0.5;
+                       text_class: "toolbar_item";
+                   }
+               }
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
                }
                description { state: "visible" 0.0;
                    inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+                   visible: 1;
+                   text.min: 1 1;
                }
-           }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
                }
-           }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
+                   visible: 1;
+                   text.min: 1 1;
                }
            }
-           part { name: "popover";
-               mouse_events: 0;
+           part { name: "elm.text_new";
+               type: TEXT;
+               effect: SOFT_SHADOW;
+               mouse_events:  0;
+               clip_to: "elm.text_new.clipper";
+               scale: 1;
                description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
+                   align: 0.5 1.0;
+                   fixed: 0 1;
+                   rel1 {
+                       relative: 0.0 1.0;
+                       offset:   0 -1;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset:   -1 -1;
+                   }
+                   visible: 0;
+                   color: 224 224 224 255;
+                   color3: 0 0 0 32;
+                   text {
+                       font: "Sans:style=Bold";
+                       size: 10;
+                       min: 1 1;
+                       align: 0.5 0.5;
+                       text_class: "toolbar_item";
                    }
                }
-           }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   text.min: 1 1;
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
+               }
+               description { state: "disabled_visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 128;
+                   color3: 0 0 0 0;
+                   visible: 1;
+                   text.min: 1 1;
                }
            }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-           }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
-           }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
-           }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-           }
-       }
-   }
-   group { name: "elm/notify/bottom_left/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
+           part { name: "elm.text.clipper";
                type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
                description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 1.0;
-                   rel2.relative: 1.0 2.0;
+                   color: 255 255 255 255;
                }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
+               description { state: "animation" 0.0;
+                   color: 255 255 255 0;
                }
            }
-           part { name: "shad";
-               mouse_events:  0;
+           part { name: "elm.text_new.clipper";
+               type: RECT;
                description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
+                   color: 255 255 255 0;
+               }
+               description { state: "animation" 0.0;
+                   color: 255 255 255 255;
                }
            }
-           part { name: "pop";
-               mouse_events: 1;
+           part { name: "elm.icon.clipper";
+               type: RECT;
                description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
-                   }
-                   image.middle: SOLID;
+                   color: 255 255 255 255;
+               }
+               description { state: "animation" 0.0;
+                   color: 255 255 255 0;
                }
            }
-           part { name: "popover";
-               mouse_events: 0;
+           part { name: "elm.icon_new.clipper";
+               type: RECT;
                description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
-                   }
+                   color: 255 255 255 0;
+               }
+               description { state: "animation" 0.0;
+                   color: 255 255 255 255;
                }
            }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
+           part { name: "event";
+               type: RECT;
+               mouse_events: 1;
+               ignore_flags: ON_HOLD;
                description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
+                   color: 0 0 0 0;
                }
            }
        }
        programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
+           program { name: "go_active";
+               signal:  "elm,state,selected";
+               source:  "elm";
+               action:  STATE_SET "selected" 0.0;
+               target:  "bg";
+               target:  "elm.text";
+               target:  "label2";
+               target:  "elm.text_new";
+               target:  "label2_new";
+               transition: LINEAR 0.2;
            }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
+           program { name: "go_passive";
+               signal:  "elm,state,unselected";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "bg";
+               target:  "elm.text";
+               target:  "label2";
+               target:  "elm.text_new";
+               target:  "label2_new";
+               transition: LINEAR 0.1;
            }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
+           program { name: "go";
+               signal:  "mouse,up,1";
+               source:  "event";
+               action:  SIGNAL_EMIT "elm,action,click" "elm";
            }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
+           program { name: "mouse,in";
+              signal:  "mouse,in";
+              source:  "event";
+              action:  SIGNAL_EMIT "elm,mouse,in" "elm";
            }
-       }
-   }
-   group { name: "elm/notify/bottom_right/default";
-       //this group is a design similar to the inwin group
-       images {
-           image: "shad_circ.png" COMP;
-           image: "bt_dis_base.png" COMP;
-           image: "bt_dis_hilight.png" COMP;
-       }
-       parts {
-           part { name: "base";
-               type: RECT;
-               mouse_events: 0;
-               repeat_events: 1;
-              description { state: "default" 0.0;
-                   color: 0 0 0 0;
-                   rel1.offset: 10 10;
-                   rel2.offset: -10 -10;
-                   rel1.relative: 0.0 1.0;
-                   rel2.relative: 1.0 2.0;
-               }
-               description { state: "visible" 0.0;
-                   inherit: "default" 0.0;
-                   color: 0 0 0 64;
-                   rel1.relative: 0.0 0.0;
-                   rel2.relative: 1.0 1.0;
-               }
+           program { name: "mouse,out";
+              signal:  "mouse,out";
+              source:  "event";
+              action:  SIGNAL_EMIT "elm,mouse,out" "elm";
            }
-           part { name: "shad";
-               mouse_events:  0;
-               description { state: "default" 0.0;
-                   image.normal: "shad_circ.png";
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -64 -64;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 63 63;
-                   fill.smooth: 0;
-               }
+           program { name: "disable";
+               signal: "elm,state,disabled";
+               source: "elm";
+               action: STATE_SET "disabled" 0.0;
+               target: "label2";
+               target: "label2_new";
+               target: "bg";
+               after: "disable_text";
            }
-           part { name: "pop";
-               mouse_events: 1;
-               description { state: "default" 0.0;
-                   rel1.to: "elm.swallow.content";
-                   rel1.offset: -5 -5;
-                   rel2.to: "elm.swallow.content";
-                   rel2.offset: 4 4;
-                   image {
-                       normal: "bt_dis_base.png";
-                       border: 4 4 4 4;
+           program { name: "disable_text";
+               script {
+                   new st[31];
+                   new Float:vl;
+                   get_state(PART:"elm.text", st, 30, vl);
+                   if (!strcmp(st, "visible"))
+                   {
+                      set_state(PART:"elm.text", "disabled_visible", 0.0);
+                      set_state(PART:"elm.text_new", "disabled_visible", 0.0);
+                   }
+                   else
+                   {
+                      set_state(PART:"elm.text", "disabled", 0.0);
+                      set_state(PART:"elm.text_new", "disabled", 0.0);
                    }
-                   image.middle: SOLID;
                }
            }
-           part { name: "popover";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   rel1.to: "pop";
-                   rel2.to: "pop";
-                   rel2.relative: 1.0 0.5;
-                   image {
-                       normal: "bt_dis_hilight.png";
-                       border: 4 4 4 0;
+           program { name: "enable";
+               signal: "elm,state,enabled";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "label2";
+               target: "label2_new";
+               target: "bg";
+               after: "enable_text";
+           }
+           program { name: "enable_text";
+               script {
+                   new st[31];
+                   new Float:vl;
+                   get_state(PART:"elm.text", st, 30, vl);
+                   if (!strcmp(st, "disabled_visible"))
+                   {
+                      set_state(PART:"elm.text", "visible", 0.0);
+                      set_state(PART:"elm.text_new", "visible", 0.0);
+                   }
+                   else
+                   {
+                      set_state(PART:"elm.text", "default", 0.0);
+                      set_state(PART:"elm.text_new", "default", 0.0);
                    }
                }
            }
-           part { name: "elm.swallow.content";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   rel1.to: "base";
-                   rel2.to: "base";
-               }
+           program { name: "label_set,animation,forward";
+              signal: "elm,state,label_set,forward";
+              source: "elm";
+              after: "label_set,animation";
+           }
+           program { name: "label_set,animation,backward";
+              signal: "elm,state,label_set,backward";
+              source: "elm";
+              after: "label_set,animation";
            }
-       }
-       programs {
-           program { name: "show";
-               signal: "elm,action,show";
-               source: "elm";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
+           program { name: "label_set,animation";
+              signal: "elm,state,label_set";
+              source: "elm";
+              action: STATE_SET "animation" 0.0;
+              target: "elm.text.clipper";
+              target: "elm.text_new.clipper";
+              transition: LINEAR 0.2;
+              after: "label_set,animation,done";
            }
-           program { name: "show_2";
-               signal: "show";
-               action: STATE_SET "default" 0.0;
-               target: "base";
-               after: "show_3";
+           program { name: "label_set,animation,done";
+              action: SIGNAL_EMIT "elm,state,label_set,done" "elm";
            }
-           program { name: "show_3";
-               signal: "show";
-               action: STATE_SET "visible" 0.0;
-               target: "base";
-               transition: LINEAR 0.5;
+           program { name: "label,reset";
+              signal: "elm,state,label,reset";
+              source: "elm";
+              action: STATE_SET "default" 0.0;
+              target: "elm.text.clipper";
+              target: "elm.text_new.clipper";
            }
-           program { name: "hide";
-               signal: "elm,action,hide";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "base";
+           program { name: "icon_set,animation,forward";
+              signal: "elm,state,icon_set,forward";
+              source: "elm";
+              after: "icon_set,animation";
            }
-       }
-   }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/slideshow/base/default";
-      data {
-         item: transitions "fade black_fade horizontal vertical square";
-         item: layouts "fullscreen not_fullscreen";
-      }
-      parts {
-         part { name: "whole";
-               type: RECT;
-            description {
-               state: "default" 0.0;
-               visible: 1;
-               color: 20 20 20 255;
-            }
-         }
-         part { name: "image_1_whole";
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "fade_prev_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 0;
-            }
-            description {
-               state: "black_fade_prev_next_init" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "black_fade_prev_next" 0.0;
-               inherit: "default" 0.0;
-               color: 0 0 0 255;
-            }
-            description {
-               state: "horizontal_next_init" 0.0;
-               inherit: "default" 0.0;
-            }
-            description {
-               state: "horizontal_next" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: -1.0 0.0;
-               rel2.relative: 0.0 1.0;
-            }
-            description {
-               state: "horizontal_prev_init" 0.0;
-               inherit: "default" 0.0;
-            }
-            description {
-               state: "horizontal_prev" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 1.0 0.0;
-               rel2.relative: 2.0 1.0;
-            }
-            description {
-               state: "vertical_next_init" 0.0;
-               inherit: "default" 0.0;
-            }
-            description {
-               state: "vertical_next" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 -1.0;
-               rel2.relative: 1.0 0.0;
-            }
-            description {
-               state: "vertical_prev_init" 0.0;
-               inherit: "default" 0.0;
-            }
-            description {
-               state: "vertical_prev" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 1.0;
-               rel2.relative: 1.0 2.0;
-            }
-            description {
-               state: "square_prev_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 0;
-            }
-         }
-         part { name: "image_2_whole";
-            description {
-               state: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 0;
-            }
-            description {
-               state: "fade_prev_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "black_fade_prev_next_init" 0.0;
-               inherit: "default" 0.0;
-               color: 0 0 0 0;
-            }
-            description {
-               state: "black_fade_prev_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "horizontal_next_init" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 1.0 0.0;
-               rel2.relative: 2.0 1.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "horizontal_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "horizontal_prev_init" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: -1.0 0.0;
-               rel2.relative: 0.0 1.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "horizontal_prev" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "vertical_next_init" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 1.0;
-               rel2.relative: 1.0 2.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "vertical_next" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "vertical_prev_init" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 -1.0;
-               rel2.relative: 1.0 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "vertical_prev" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "square_prev_next_init" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.5 0.5;
-               rel2.relative: 0.5 0.5;
-               color: 255 255 255 255;
-            }
-            description {
-               state: "square_prev_next" 0.0;
-               inherit: "default" 0.0;
-               rel1.relative: 0.0 0.0;
-               rel2.relative: 1.0 1.0;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "elm.swallow.1";
-            type: SWALLOW;
-            clip_to: "image_1_whole";
-            description {
-               state: "default" 0.0;
-               rel1.to: "image_1_whole";
-               rel2.to: "image_1_whole";
-               color: 255 255 255 255;
-            }
-            description {
-               state: "not_fullscreen" 0.0;
-               rel1.relative: 0.1 0.1;
-               rel1.to: "image_1_whole";
-               rel2.relative: 0.9 0.9;
-               rel2.to: "image_1_whole";
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "elm.swallow.2";
-            type: SWALLOW;
-            clip_to: "image_2_whole";
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-               rel1.to: "image_2_whole";
-               rel2.to: "image_2_whole";
-            }
-            description {
-               state: "not_fullscreen" 0.0;
-               color: 255 255 255 255;
-               rel1.relative: 0.1 0.1;
-               rel1.to: "image_2_whole";
-               rel2.relative: 0.9 0.9;
-               rel2.to: "image_2_whole";
-            }
-         }
-         part { name: "events_catcher";
-            type: RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               visible: 1;
-               color: 0 0 0 0;
-            }
-         }
+           program { name: "icon_set,animation,backward";
+              signal: "elm,state,icon_set,backward";
+              source: "elm";
+              after: "icon_set,animation";
+           }
+           program { name: "icon_set,animation";
+              signal: "elm,state,icon_set";
+              source: "elm";
+              action: STATE_SET "animation" 0.0;
+              target: "elm.icon.clipper";
+              target: "elm.icon_new.clipper";
+              transition: LINEAR 0.2;
+              after: "icon_set,animation,done";
+           }
+           program { name: "icon_set,animation,done";
+              action: SIGNAL_EMIT "elm,state,icon_set,done" "elm";
+           }
+           program { name: "icon,reset";
+              signal: "elm,state,icon,reset";
+              source: "elm";
+              action: STATE_SET "default" 0.0;
+              target: "elm.icon.clipper";
+              target: "elm.icon_new.clipper";
+           }
+       }
+   }
+
+   group { name: "elm/toolbar/separator/default";
+      images {
+         image: "toolbar_separator_v.png" COMP;
       }
-      programs {
-       //Substyle
-       program { name: "layout_fullscreen";
-            signal: "layout,fullscreen";
-            source: "slideshow";
-            action: STATE_SET "default" 0.0;
-            target: "elm.swallow.1";
-            target: "elm.swallow.2";
-            transition: SINUSOIDAL 1.0;
-        }
-        program { name: "layout_not_fullscreen";
-            signal: "layout,not_fullscreen";
-            source: "slideshow";
-            action: STATE_SET "not_fullscreen" 0.0;
-            target: "elm.swallow.1";
-            target: "elm.swallow.2";
-            transition: SINUSOIDAL 1.0;
-         } 
-        //
-         program { name: "fade_next";
-            signal: "fade,next";
-            source: "slideshow";
-            action: STATE_SET "default" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "fade_next_2";
-         }
-         program { name: "fade_next_2";
-            action: STATE_SET "fade_prev_next" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "fade_previous";
-            signal: "fade,previous";
-            source: "slideshow";
-            action: STATE_SET "default" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "fade_previous_2";
-         }
-         program { name: "fade_previous_2";
-            action: STATE_SET "fade_prev_next" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "black_fade_next";
-            signal: "black_fade,next";
-            source: "slideshow";
-            action: STATE_SET "black_fade_prev_next_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "black_fade_next_2";
-         }
-         program { name: "black_fade_next_2";
-            action: STATE_SET "black_fade_prev_next" 0.0;
-            target: "image_1_whole";
-            transition: SINUSOIDAL 0.75;
-            after: "black_fade_next_3";
-         }
-         program { name: "black_fade_next_3";
-            action: STATE_SET "black_fade_prev_next" 0.0;
-            target: "image_2_whole";
-            transition: SINUSOIDAL 0.75;
-            after: "end";
-         }
-         program { name: "black_fade_previous";
-            signal: "black_fade,previous";
-            source: "slideshow";
-            action: STATE_SET "black_fade_prev_next_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "black_fade_previous_2";
-         }
-         program { name: "black_fade_previous_2";
-            action: STATE_SET "black_fade_prev_next" 0.0;
-            target: "image_1_whole";
-            transition: SINUSOIDAL 0.75;
-            after: "black_fade_previous_3";
-         }
-         program { name: "black_fade_previous_3";
-            action: STATE_SET "black_fade_prev_next" 0.0;
-            target: "image_2_whole";
-            transition: SINUSOIDAL 0.75;
-            after: "end";
-         }
-         program { name: "horizontal_next";
-            signal: "horizontal,next";
-            source: "slideshow";
-            action: STATE_SET "horizontal_next_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "horizontal_next_2";
-         }
-         program { name: "horizontal_next_2";
-            action: STATE_SET "horizontal_next" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "horizontal_previous";
-            signal: "horizontal,previous";
-            source: "slideshow";
-            action: STATE_SET "horizontal_prev_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "horizontal_previous_2";
-         }
-         program { name: "horizontal_previous_2";
-            action: STATE_SET "horizontal_prev" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "vertical_next";
-            signal: "vertical,next";
-            source: "slideshow";
-            action: STATE_SET "vertical_next_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "vertical_next_2";
-         }
-         program { name: "vertical_next_2";
-            action: STATE_SET "vertical_next" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "vertical_previous";
-            signal: "vertical,previous";
-            source: "slideshow";
-            action: STATE_SET "vertical_prev_init" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            after: "vertical_previous_2";
-         }
-         program { name: "vertical_previous_2";
-            action: STATE_SET "vertical_prev" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "square_next";
-            signal: "square,next";
-            source: "slideshow";
-            action: STATE_SET "square_prev_next_init" 0.0;
-            target: "image_2_whole";
-            after: "square_next_2";
-         }
-         program { name: "square_next_2";
-            action: STATE_SET "square_prev_next" 0.0;
-            target: "image_2_whole";
-            target: "image_1_whole";
-            transition: SINUSOIDAL 1.5;
-            after: "end";
-         }
-         program { name: "square_previous";
-            signal: "square,previous";
-            source: "slideshow";
-            action: STATE_SET "square_prev_next_init" 0.0;
-            target: "image_2_whole";
-            after: "square_next_2";
-         }
-         program { name: "end";
-            action: SIGNAL_EMIT "end" "slideshow";
-         }
-         program { name: "end_signal";
-           signal: "anim,end";
-           source: "slideshow";
-            action: STATE_SET "default" 0.0;
-            target: "image_1_whole";
-            target: "image_2_whole";
+      parts {
+         part { name: "separator"; // separator group
+            description { state: "default" 0.0;
+               min: 2 2;
+               max: 2 9999;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               image {
+                  normal: "toolbar_separator_v.png";
+               }
+               fill {
+                  smooth: 0;
+               }
+            }
          }
       }
    }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/win/inwin/default";
-      images {
-        image: "shad_circ.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 1.0;
-              color: 0 0 0 64;
-           }
-        }
-         part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "elm.swallow.content";
-              rel1.offset: -64 -64;
-              rel2.to: "elm.swallow.content";
-              rel2.offset: 63 63;
-               fill.smooth: 0;
-           }
-        }
-        part { name: "pop";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.content";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.content";
-               rel2.offset: 4 4;
-               image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-        }
-         part { name: "popover";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "pop";
-              rel2.to: "pop";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-               rel1.relative: 0.1 0.1;
-               rel2.relative: 0.9 0.9;
-           }
-        }
-      }
-      programs {
-        program { name: "show";
-            signal: "elm,action,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "hide";
-            signal: "elm,action,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-      }
+
+   ///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/notify/block_events/default";
+       parts {
+           part { name: "block_events";
+               type: RECT;
+               description { state: "default" 0.0;
+                   color: 0 0 0 64;
+                   visible: 1;
+               }
+           }
+       }
+           programs {
+                   program {
+                                name: "block_clicked";
+                                signal: "mouse,clicked,1";
+                                source: "block_events";
+                                action: SIGNAL_EMIT "elm,action,clicked" "elm";
+                   }
+           }
+   }
+   group { name: "elm/notify/top/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 -1.0;
+                   rel2.relative: 1.0 0.0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+                signal: "show";
+                action: STATE_SET "default" 0.0;
+                target: "base";
+                after: "show_3";
+           }
+           program { name: "show_3";
+                signal: "show";
+                action: STATE_SET "visible" 0.0;
+                target: "base";
+                transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
+   }
+   group { name: "elm/notify/center/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "bt_dis_base.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+                signal: "show";
+                action: STATE_SET "default" 0.0;
+                target: "base";
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
    }
-
-   group { name: "elm/win/inwin/minimal";
-      images {
-        image: "shad_circ.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 1.0;
-              color: 0 0 0 64;
-           }
-        }
-         part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "elm.swallow.content";
-              rel1.offset: -64 -64;
-              rel2.to: "elm.swallow.content";
-              rel2.offset: 63 63;
-               fill.smooth: 0;
-           }
-        }
-        part { name: "pop";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.content";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.content";
-               rel2.offset: 4 4;
-               image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-        }
-         part { name: "popover";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "pop";
-              rel2.to: "pop";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 1;
-               rel1.relative: 0.5 0.5;
-               rel2.relative: 0.5 0.5;
-           }
-        }
-      }
-      programs {
-        program { name: "show";
-            signal: "elm,action,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "hide";
-            signal: "elm,action,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-      }
+   group { name: "elm/notify/bottom/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 1.0;
+                   rel2.relative: 1.0 2.0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+                signal: "show";
+                action: STATE_SET "default" 0.0;
+                target: "base";
+                after: "show_3";
+           }
+           program { name: "show_3";
+                signal: "show";
+                action: STATE_SET "visible" 0.0;
+                target: "base";
+                transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
    }
-
-   group { name: "elm/win/inwin/minimal_vertical";
-      images {
-        image: "shad_circ.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
-      }
-      parts {
-        part { name: "base";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 1.0;
-              color: 0 0 0 64;
-           }
-        }
-         part { name: "shad";
-           mouse_events:  0;
-           description { state: "default" 0.0;
-              image.normal: "shad_circ.png";
-              rel1.to: "elm.swallow.content";
-              rel1.offset: -64 -64;
-              rel2.to: "elm.swallow.content";
-              rel2.offset: 63 63;
-               fill.smooth: 0;
-           }
-        }
-        part { name: "pop";
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "elm.swallow.content";
-               rel1.offset: -5 -5;
-              rel2.to: "elm.swallow.content";
-               rel2.offset: 4 4;
-               image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-               image.middle: SOLID;
-           }
-        }
-         part { name: "popover";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "pop";
-              rel2.to: "pop";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "elm.swallow.content";
-            type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 1;
-               rel1.relative: 0.1 0.5;
-               rel2.relative: 0.9 0.5;
-           }
-        }
-      }
-      programs {
-        program { name: "show";
-            signal: "elm,action,show";
-           source: "elm";
-           action: STATE_SET "visible" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-        program { name: "hide";
-            signal: "elm,action,hide";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-//         transition: DECELERATE 0.5;
-           target: "base";
-        }
-      }
+   group { name: "elm/notify/left/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: -1.0 0.0;
+                   rel2.relative: 0.0 1.0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
    }
-
-///////////////////////////////////////////////////////////////////////////////
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/list/item/default";
-      data.item: "stacking" "above";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
-      }
-      parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-            }
-         }
-         part {
-            name: "base_sh";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
+   group { name: "elm/notify/right/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+                description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 1.0 0.0;
+                   rel2.relative: 2.0 1.0;
+               }
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
+               }
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
+   }
+   group { name: "elm/notify/top_left/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+                description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 -1.0;
+                   rel2.relative: 1.0 0.0;
                }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
                }
-               image {
-                  normal: "ilist_item_shadow.png";
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
                }
-               fill.smooth: 0;
-            }
-         }
-         part {
-            name: "base";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_1.png";
-                  border: 2 2 2 2;
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
                }
-               fill.smooth: 0;
-            }
-         }
-         part { name: "bg";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
                }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
+   }
+   group { name: "elm/notify/top_right/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 -1.0;
+                   rel2.relative: 1.0 0.0;
                }
-               image.middle: SOLID;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
+               }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
+   }
+   group { name: "elm/notify/bottom_left/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+               description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 1.0;
+                   rel2.relative: 1.0 2.0;
                }
-            }
-         }
-         part { name: "elm.swallow.icon";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
                }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
                }
-            }
-         }
-         part { name: "elm.swallow.end";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
                }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
                }
-            }
-         }
-         part { name: "elm.text";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
                }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
+   }
+   group { name: "elm/notify/bottom_right/default";
+       //this group is a design similar to the inwin group
+       images {
+           image: "shad_circ.png" COMP;
+           image: "bt_dis_base.png" COMP;
+           image: "bt_dis_hilight.png" COMP;
+       }
+       parts {
+           part { name: "base";
+               type: RECT;
+               mouse_events: 0;
+               repeat_events: 1;
+              description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   rel1.offset: 10 10;
+                   rel2.offset: -10 -10;
+                   rel1.relative: 0.0 1.0;
+                   rel2.relative: 1.0 2.0;
                }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: -1.0 0.5;
-                  text_class: "list_item";
+               description { state: "visible" 0.0;
+                   inherit: "default" 0.0;
+                   color: 0 0 0 64;
+                   rel1.relative: 0.0 0.0;
+                   rel2.relative: 1.0 1.0;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part { name: "fg1";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+           }
+           part { name: "shad";
+               mouse_events:  0;
+               description { state: "default" 0.0;
+                   image.normal: "shad_circ.png";
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -64 -64;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 63 63;
+                   fill.smooth: 0;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "fg2";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+           }
+           part { name: "pop";
+               mouse_events: 1;
+               description { state: "default" 0.0;
+                   rel1.to: "elm.swallow.content";
+                   rel1.offset: -5 -5;
+                   rel2.to: "elm.swallow.content";
+                   rel2.offset: 4 4;
+                   image {
+                       normal: "bt_dis_base.png";
+                       border: 4 4 4 4;
+                   }
+                   image.middle: SOLID;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-      }
-      programs {
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-      }
+           }
+           part { name: "popover";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   rel1.to: "pop";
+                   rel2.to: "pop";
+                   rel2.relative: 1.0 0.5;
+                   image {
+                       normal: "bt_dis_hilight.png";
+                       border: 4 4 4 0;
+                   }
+               }
+           }
+           part { name: "elm.swallow.content";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   rel1.to: "base";
+                   rel2.to: "base";
+               }
+           }
+       }
+       programs {
+           program { name: "show";
+               signal: "elm,action,show";
+               source: "elm";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+           }
+           program { name: "show_2";
+               signal: "show";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+               after: "show_3";
+           }
+           program { name: "show_3";
+               signal: "show";
+               action: STATE_SET "visible" 0.0;
+               target: "base";
+               transition: LINEAR 0.5;
+           }
+           program { name: "hide";
+               signal: "elm,action,hide";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "base";
+           }
+       }
    }
-   group { name: "elm/list/item_odd/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/slideshow/base/default";
+      data {
+         item: transitions "fade black_fade horizontal vertical square";
+         item: layouts "fullscreen not_fullscreen";
       }
       parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
+         part { name: "whole";
+                 type: RECT;
             description {
                state: "default" 0.0;
-               color: 0 0 0 0;
+               visible: 1;
+               color: 20 20 20 255;
             }
          }
-         part {
-            name: "base";
-            mouse_events: 0;
+         part { name: "image_1_whole";
+            type: RECT;
             description {
                state: "default" 0.0;
-               image {
-                  normal: "ilist_2.png";
-                  border: 2 2 2 2;
-               }
-               fill.smooth: 0;
+               color: 255 255 255 255;
             }
-         }
-         part { name: "bg";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
+            description {
+               state: "fade_prev_next" 0.0;
+               inherit: "default" 0.0;
                color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
-               }
-               image.middle: SOLID;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "black_fade_prev_next_init" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
                color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
-            }
-         }
-         part {
-            name:          "elm.swallow.icon";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part {
-            name:          "elm.swallow.end";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
             }
-         }
-         part {
-            name:           "elm.text";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
             description {
-               state: "default" 0.0;
-//               min:      16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
+               state: "black_fade_prev_next" 0.0;
+               inherit: "default" 0.0;
                color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: -1.0 0.5;
-                  text_class: "list_item";
-               }
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "horizontal_next_init" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
             }
-         }
-         part { name: "fg1";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+            description {
+               state: "horizontal_next" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: -1.0 0.0;
+               rel2.relative: 0.0 1.0;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "horizontal_prev_init" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
             }
-         }
-         part { name: "fg2";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
-               }
+            description {
+               state: "horizontal_prev" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 2.0 1.0;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "vertical_next_init" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
             }
-         }
-      }
-      programs {
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-      }
-   }
-   group { name: "elm/list/item_compress/default";
-      data.item: "stacking" "above";
-      data.item: "selectraise" "on";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
-      }
-      parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
             description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
+               state: "vertical_next" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 -1.0;
+               rel2.relative: 1.0 0.0;
+            }
+            description {
+               state: "vertical_prev_init" 0.0;
+               inherit: "default" 0.0;
             }
-         }
-         part {
-            name: "base_sh";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               align: 0.0 0.0;
-               min: 0 10;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
-               }
-               image {
-                  normal: "ilist_item_shadow.png";
-               }
-               fill.smooth: 0;
+            description {
+               state: "vertical_prev" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 1.0;
+               rel2.relative: 1.0 2.0;
             }
-         }
-         part {
-            name: "base";
-            mouse_events: 0;
             description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_1.png";
-                  border: 2 2 2 2;
-               }
-               fill.smooth: 0;
+               state: "square_prev_next" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
             }
          }
-         part { name: "bg";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
+         part { name: "image_2_whole";
+            type: RECT;
+            description {
+               state: "default" 0.0;
+               visible: 1;
                color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
-               }
-               image.middle: SOLID;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "fade_prev_next" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
                color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
             }
-         }
-         part { name:          "elm.swallow.icon";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
+            description {
+               state: "black_fade_prev_next_init" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 0;
             }
-         }
-         part { name:          "elm.swallow.end";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    1.0 0.5;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
+            description {
+               state: "black_fade_prev_next" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 255;
             }
-         }
-         part {
-            name:           "elm.text";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description { state: "default" 0.0;
-//               min:      16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-//                  min: 1 1;
-                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
-               }
+            description {
+               state: "horizontal_next_init" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 2.0 1.0;
+               color: 255 255 255 255;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "horizontal_next" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+               color: 255 255 255 255;
             }
-         }
-         part { name: "fg1";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+            description {
+               state: "horizontal_prev_init" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: -1.0 0.0;
+               rel2.relative: 0.0 1.0;
+               color: 255 255 255 255;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "horizontal_prev" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
                color: 255 255 255 255;
             }
-         }
-         part { name: "fg2";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
-               }
+            description {
+               state: "vertical_next_init" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 1.0;
+               rel2.relative: 1.0 2.0;
+               color: 255 255 255 255;
             }
-            description { state: "selected" 0.0;
+            description {
+               state: "vertical_next" 0.0;
                inherit: "default" 0.0;
-               visible: 1;
                color: 255 255 255 255;
             }
-         }
-      }
-      programs {
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-      }
-   }
-   group { name: "elm/list/item_compress_odd/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
-      }
-      parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
             description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
+               state: "vertical_prev_init" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 -1.0;
+               rel2.relative: 1.0 0.0;
+               color: 255 255 255 255;
+            }
+            description {
+               state: "vertical_prev" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 255;
+            }
+            description {
+               state: "square_prev_next_init" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.5 0.5;
+               rel2.relative: 0.5 0.5;
+               color: 255 255 255 255;
+            }
+            description {
+               state: "square_prev_next" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+               color: 255 255 255 255;
             }
          }
-         part {
-            name: "base";
-            mouse_events: 0;
+         part { name: "elm.swallow.1";
+            type: SWALLOW;
+            clip_to: "image_1_whole";
             description {
                state: "default" 0.0;
-               image {
-                  normal: "ilist_2.png";
-                  border: 2 2 2 2;
-               }
-               fill.smooth: 0;
+               rel1.to: "image_1_whole";
+               rel2.to: "image_1_whole";
+               color: 255 255 255 255;
+            }
+            description {
+               state: "not_fullscreen" 0.0;
+               rel1.relative: 0.1 0.1;
+               rel1.to: "image_1_whole";
+               rel2.relative: 0.9 0.9;
+               rel2.to: "image_1_whole";
+               color: 255 255 255 255;
             }
          }
-         part { name: "bg";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
-               }
-               image.middle: SOLID;
+         part { name: "elm.swallow.2";
+            type: SWALLOW;
+            clip_to: "image_2_whole";
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+               rel1.to: "image_2_whole";
+               rel2.to: "image_2_whole";
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
+            description {
+               state: "not_fullscreen" 0.0;
                color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
+               rel1.relative: 0.1 0.1;
+               rel1.to: "image_2_whole";
+               rel2.relative: 0.9 0.9;
+               rel2.to: "image_2_whole";
+            }
+         }
+         part { name: "events_catcher";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               visible: 1;
+               color: 0 0 0 0;
             }
          }
-         part { name:          "elm.swallow.icon";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
+      }
+      programs {
+              //Substyle
+              program { name: "layout_fullscreen";
+            signal: "layout,fullscreen";
+            source: "slideshow";
+            action: STATE_SET "default" 0.0;
+            target: "elm.swallow.1";
+            target: "elm.swallow.2";
+            transition: SINUSOIDAL 1.0;
+        }
+        program { name: "layout_not_fullscreen";
+            signal: "layout,not_fullscreen";
+            source: "slideshow";
+            action: STATE_SET "not_fullscreen" 0.0;
+            target: "elm.swallow.1";
+            target: "elm.swallow.2";
+            transition: SINUSOIDAL 1.0;
+         }
+               //
+         program { name: "fade_next";
+            signal: "fade,next";
+            source: "slideshow";
+            action: STATE_SET "default" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "fade_next_2";
+         }
+         program { name: "fade_next_2";
+            action: STATE_SET "fade_prev_next" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "fade_previous";
+            signal: "fade,previous";
+            source: "slideshow";
+            action: STATE_SET "default" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "fade_previous_2";
+         }
+         program { name: "fade_previous_2";
+            action: STATE_SET "fade_prev_next" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "black_fade_next";
+            signal: "black_fade,next";
+            source: "slideshow";
+            action: STATE_SET "black_fade_prev_next_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "black_fade_next_2";
+         }
+         program { name: "black_fade_next_2";
+            action: STATE_SET "black_fade_prev_next" 0.0;
+            target: "image_1_whole";
+            transition: SINUSOIDAL 0.75;
+            after: "black_fade_next_3";
+         }
+         program { name: "black_fade_next_3";
+            action: STATE_SET "black_fade_prev_next" 0.0;
+            target: "image_2_whole";
+            transition: SINUSOIDAL 0.75;
+            after: "end";
+         }
+         program { name: "black_fade_previous";
+            signal: "black_fade,previous";
+            source: "slideshow";
+            action: STATE_SET "black_fade_prev_next_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "black_fade_previous_2";
+         }
+         program { name: "black_fade_previous_2";
+            action: STATE_SET "black_fade_prev_next" 0.0;
+            target: "image_1_whole";
+            transition: SINUSOIDAL 0.75;
+            after: "black_fade_previous_3";
+         }
+         program { name: "black_fade_previous_3";
+            action: STATE_SET "black_fade_prev_next" 0.0;
+            target: "image_2_whole";
+            transition: SINUSOIDAL 0.75;
+            after: "end";
+         }
+         program { name: "horizontal_next";
+            signal: "horizontal,next";
+            source: "slideshow";
+            action: STATE_SET "horizontal_next_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "horizontal_next_2";
+         }
+         program { name: "horizontal_next_2";
+            action: STATE_SET "horizontal_next" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "horizontal_previous";
+            signal: "horizontal,previous";
+            source: "slideshow";
+            action: STATE_SET "horizontal_prev_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "horizontal_previous_2";
+         }
+         program { name: "horizontal_previous_2";
+            action: STATE_SET "horizontal_prev" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "vertical_next";
+            signal: "vertical,next";
+            source: "slideshow";
+            action: STATE_SET "vertical_next_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "vertical_next_2";
+         }
+         program { name: "vertical_next_2";
+            action: STATE_SET "vertical_next" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "vertical_previous";
+            signal: "vertical,previous";
+            source: "slideshow";
+            action: STATE_SET "vertical_prev_init" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            after: "vertical_previous_2";
+         }
+         program { name: "vertical_previous_2";
+            action: STATE_SET "vertical_prev" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "square_next";
+            signal: "square,next";
+            source: "slideshow";
+            action: STATE_SET "square_prev_next_init" 0.0;
+            target: "image_2_whole";
+            after: "square_next_2";
+         }
+         program { name: "square_next_2";
+            action: STATE_SET "square_prev_next" 0.0;
+            target: "image_2_whole";
+            target: "image_1_whole";
+            transition: SINUSOIDAL 1.5;
+            after: "end";
+         }
+         program { name: "square_previous";
+            signal: "square,previous";
+            source: "slideshow";
+            action: STATE_SET "square_prev_next_init" 0.0;
+            target: "image_2_whole";
+            after: "square_next_2";
+         }
+         program { name: "end";
+            action: SIGNAL_EMIT "end" "slideshow";
+         }
+         program { name: "end_signal";
+            signal: "anim,end";
+            source: "slideshow";
+            action: STATE_SET "default" 0.0;
+            target: "image_1_whole";
+            target: "image_2_whole";
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/win/inwin/default";
+      images {
+         image: "shad_circ.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "base";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
             }
-         }
-         part { name:          "elm.swallow.end";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    1.0 0.5;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
+            description { state: "visible" 0.0;
+               inherit: "default" 1.0;
+               color: 0 0 0 64;
             }
          }
-         part {
-            name:           "elm.text";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min:      16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-//                  min: 1 1;
-                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+         part { name: "shad";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "shad_circ.png";
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -64 -64;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 63 63;
+               fill.smooth: 0;
             }
          }
-         part { name: "fg1";
-            mouse_events: 0;
+         part { name: "pop";
+            mouse_events: 1;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 4 4;
                image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+               image.middle: SOLID;
             }
          }
-         part { name: "fg2";
+         part { name: "popover";
             mouse_events: 0;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               rel1.to: "pop";
+               rel2.to: "pop";
+               rel2.relative: 1.0 0.5;
                image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.1 0.1;
+               rel2.relative: 0.9 0.9;
             }
          }
       }
       programs {
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
+         program { name: "show";
+            signal: "elm,action,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+         program { name: "hide";
+            signal: "elm,action,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
       }
    }
 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/list/h_item/default";
-      data.item: "stacking" "above";
+   group { name: "elm/win/inwin/minimal";
       images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1_h.png" COMP;
-         image: "ilist_item_shadow_h.png" COMP;
+         image: "shad_circ.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
       }
       parts {
-         part {
-            name: "event";
+         part { name: "base";
             type: RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
+            mouse_events: 1;
+            description { state: "default" 0.0;
                color: 0 0 0 0;
             }
-         }
-         part {
-            name: "base_sh";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 10 0;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 1.0 0.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: 0 -1;
-               }
-               image {
-                  normal: "ilist_item_shadow_h.png";
-               }
-               fill.smooth: 0;
+            description { state: "visible" 0.0;
+               inherit: "default" 1.0;
+               color: 0 0 0 64;
             }
          }
-         part {
-            name: "base";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_1_h.png";
-                  border: 2 2 2 2;
-               }
+         part { name: "shad";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               image.normal: "shad_circ.png";
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -64 -64;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 63 63;
                fill.smooth: 0;
             }
          }
-         part { name: "bg";
-            mouse_events: 0;
+         part { name: "pop";
+            mouse_events: 1;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 4 4;
                image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
                image.middle: SOLID;
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
-            }
-         }
-         part { name: "elm.swallow.icon";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: 4 4;
-               }
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -5 4;
+         }
+         part { name: "popover";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "pop";
+               rel2.to: "pop";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
             }
          }
-         part { name: "elm.swallow.end";
+         part { name: "elm.swallow.content";
             type: SWALLOW;
             description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 1.0;
-               rel1 {
-                  relative: 0.0 1.0;
-                  offset: 4 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: -5 -5;
-               }
+               fixed: 1 1;
+               rel1.relative: 0.5 0.5;
+               rel2.relative: 0.5 0.5;
             }
          }
-         part { name: "elm.text";
-            type: TEXT;
-            effect: SOFT_SHADOW;
-            mouse_events: 0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               fixed: 0 1;
-               rel1 {
-                  to_x: "elm.swallow.icon";
-                  relative: 0.0 1.0;
-                  offset: 4 4;
-               }
-               rel2 {
-                  to_x: "elm.swallow.end";
-                  relative: 1.0 0.0;
-                  offset: -5 -1;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-                  align: 0.5 0.5;
-                  text_class: "list_item";
-               }
+      }
+      programs {
+         program { name: "show";
+            signal: "elm,action,show";
+            source: "elm";
+            action: STATE_SET "visible" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
+         }
+         program { name: "hide";
+            signal: "elm,action,hide";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
+         }
+      }
+   }
+
+   group { name: "elm/win/inwin/minimal_vertical";
+      images {
+         image: "shad_circ.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
+      }
+      parts {
+         part { name: "base";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+            description { state: "visible" 0.0;
+               inherit: "default" 1.0;
+               color: 0 0 0 64;
             }
          }
-         part { name: "fg1";
-            mouse_events: 0;
+         part { name: "shad";
+            mouse_events:  0;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
+               image.normal: "shad_circ.png";
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -64 -64;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 63 63;
+               fill.smooth: 0;
+            }
+         }
+         part { name: "pop";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "elm.swallow.content";
+               rel1.offset: -5 -5;
+               rel2.to: "elm.swallow.content";
+               rel2.offset: 4 4;
                image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+               image.middle: SOLID;
             }
          }
-         part { name: "fg2";
+         part { name: "popover";
             mouse_events: 0;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               rel1.to: "pop";
+               rel2.to: "pop";
+               rel2.relative: 1.0 0.5;
                image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               rel1.relative: 0.1 0.5;
+               rel2.relative: 0.9 0.5;
             }
          }
       }
       programs {
-         program {
-            name: "go_active";
-            signal: "elm,state,selected";
+         program { name: "show";
+            signal: "elm,action,show";
             source: "elm";
-            action: STATE_SET "selected" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            action: STATE_SET "visible" 0.0;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
-         program {
-            name: "go_passive";
-            signal: "elm,state,unselected";
+         program { name: "hide";
+            signal: "elm,action,hide";
             source: "elm";
             action: STATE_SET "default" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
-            transition: LINEAR 0.1;
+//            transition: DECELERATE 0.5;
+            target: "base";
          }
       }
    }
-   group { name: "elm/list/h_item_odd/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
+
+///////////////////////////////////////////////////////////////////////////////
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/list/item/default";
+      data.item: "stacking" "above";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2_h.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
       parts {
          part {
-            name: "event";
-            type: RECT;
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -13411,12 +12518,36 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2_h.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -13455,55 +12586,53 @@ collections {
                }
             }
          }
-         part {
-            name: "elm.swallow.icon";
+         part { name: "elm.swallow.icon";
             type: SWALLOW;
             description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
                rel1 {
-                  relative: 0.0 0.0;
-                  offset: 4 4;
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
                rel2 {
-                  relative: 1.0 0.0;
-                  offset: -5 4;
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
             }
          }
-         part {
-            name: "elm.swallow.end";
+         part { name: "elm.swallow.end";
             type: SWALLOW;
             description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 1.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
                rel1 {
-                  relative: 0.0 1.0;
-                  offset: 4 -5;
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
                }
                rel2 {
-                  relative: 1.0 1.0;
-                  offset: -5 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
             }
          }
          part { name: "elm.text";
-            type: TEXT;
-            effect: SOFT_SHADOW;
-            mouse_events: 0;
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
             scale: 1;
             description {
                state: "default" 0.0;
-               fixed: 1 1;
+//               min: 16 16;
                rel1 {
-                  to_x: "elm.swallow.icon";
-                  relative: 0.0 1.0;
-                  offset: 4 4;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x: "elm.swallow.end";
-                  relative: 1.0 0.0;
-                  offset: -5 -1;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
@@ -13511,7 +12640,8 @@ collections {
                   font: "Sans";
                   size: 10;
                   min: 1 1;
-                  align: 0.5 0.5;
+//                  min: 0 1;
+                  align: -1.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -13561,42 +12691,41 @@ collections {
       }
       programs {
          program {
-            name: "go_active";
-            signal: "elm,state,selected";
-            source: "elm";
-            action: STATE_SET "selected" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
          }
          program {
-            name: "go_passive";
-            signal: "elm,state,unselected";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
             transition: LINEAR 0.1;
          }
       }
    }
-   group { name: "elm/list/h_item_compress/default";
-      data.item: "stacking" "above";
+   group { name: "elm/list/item_odd/default";
+      data.item: "stacking" "below";
       data.item: "selectraise" "on";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1_h.png" COMP;
-         image: "ilist_item_shadow_h.png" COMP;
+         image: "ilist_2.png" COMP;
       }
       parts {
          part {
-            name: "event";
-            type: RECT;
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -13604,35 +12733,12 @@ collections {
             }
          }
          part {
-            name: "base_sh";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               align: 0.0 0.0;
-               min: 10 0;
-               rel1 {
-                  to: "base";
-                  relative: 1.0 0.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: 0 -1;
-               }
-               image {
-                  normal: "ilist_item_shadow_h.png";
-               }
-               fill.smooth: 0;
-            }
-         }
-         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1_h.png";
+                  normal: "ilist_2.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -13671,53 +12777,56 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.icon";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
+         part {
+            name:          "elm.swallow.icon";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    0.0 0.5;
                rel1 {
-                  relative: 0.0 0.0;
-                  offset: 4 4;
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
                rel2 {
-                  relative: 1.0 0.0;
-                  offset: -5 4;
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
             }
          }
-         part { name: "elm.swallow.end";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 1.0;
+         part {
+            name:          "elm.swallow.end";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
                rel1 {
-                  relative: 0.0 1.0;
-                  offset: 4 -5;
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
                }
                rel2 {
-                  relative: 1.0 1.0;
-                  offset: -5 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
             }
          }
          part {
-            name: "elm.text";
-            type: TEXT;
-            effect: SOFT_SHADOW;
-            mouse_events: 0;
+            name:           "elm.text";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
             scale: 1;
-            description { state: "default" 0.0;
-               fixed: 1 1;
+            description {
+               state: "default" 0.0;
+//               min:      16 16;
                rel1 {
-                  to_x: "elm.swallow.icon";
-                  relative: 0.0 1.0;
-                  offset: 4 4;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x: "elm.swallow.end";
-                  relative: 1.0 0.0;
-                  offset: -5 -1;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
@@ -13725,7 +12834,8 @@ collections {
                   font: "Sans";
                   size: 10;
                   min: 1 1;
-                  align: 0.5 0.5;
+//                  min: 0 1;
+                  align: -1.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -13775,41 +12885,42 @@ collections {
       }
       programs {
          program {
-            name: "go_active";
-            signal: "elm,state,selected";
-            source: "elm";
-            action: STATE_SET "selected" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
          }
          program {
-            name: "go_passive";
-            signal: "elm,state,unselected";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
             transition: LINEAR 0.1;
          }
       }
    }
-   group { name: "elm/list/h_item_compress_odd/default";
-      data.item: "stacking" "below";
+   group { name: "elm/list/item_compress/default";
+      data.item: "stacking" "above";
       data.item: "selectraise" "on";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2_h.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
       parts {
          part {
-            name: "event";
-            type: RECT;
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -13817,12 +12928,35 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               align: 0.0 0.0;
+               min: 0 10;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2_h.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -13861,61 +12995,62 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.icon";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
+         part { name:          "elm.swallow.icon";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    0.0 0.5;
                rel1 {
-                  relative: 0.0 0.0;
-                  offset: 4 4;
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
                rel2 {
-                  relative: 1.0 0.0;
-                  offset: -5 4;
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
             }
          }
-         part { name: "elm.swallow.end";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 1.0;
+         part { name:          "elm.swallow.end";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    1.0 0.5;
                rel1 {
-                  relative: 0.0 1.0;
-                  offset: 4 -5;
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
                }
                rel2 {
-                  relative: 1.0 1.0;
-                  offset: -5 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
             }
          }
-         part { name: "elm.text";
-            type: TEXT;
-            effect: SOFT_SHADOW;
-            mouse_events: 0;
+         part {
+            name:           "elm.text";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
             scale: 1;
-            description {
-               state: "default" 0.0;
-               fixed: 1 1;
+            description { state: "default" 0.0;
+//               min:      16 16;
                rel1 {
-                  to_x: "elm.swallow.icon";
-                  relative: 0.0 1.0;
-                  offset: 4 4;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x: "elm.swallow.end";
-                  relative: 1.0 0.0;
-                  offset: -5 -1;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
                text {
                   font: "Sans";
                   size: 10;
-                  min: 1 1;
-                  align: 0.5 0.5;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -13965,2587 +13100,2522 @@ collections {
       }
       programs {
          program {
-            name: "go_active";
-            signal: "elm,state,selected";
-            source: "elm";
-            action: STATE_SET "selected" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
          }
          program {
-            name: "go_passive";
-            signal: "elm,state,unselected";
-            source: "elm";
-            action: STATE_SET "default" 0.0;
-            target: "bg";
-            target: "fg1";
-            target: "fg2";
-            target: "elm.text";
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
             transition: LINEAR 0.1;
          }
       }
    }
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/slider/horizontal/default";
-           alias: "elm/slider/horizontal/disabled";
+   group { name: "elm/list/item_compress_odd/default";
+      data.item: "stacking" "below";
+      data.item: "selectraise" "on";
       images {
-        image: "sl_bg.png" COMP;
-        image: "sl_bg_over.png" COMP;
-        image: "sl_bt_0.png" COMP;
-        image: "sl_bt_1.png" COMP;
-        image: "sl_bt_2.png" COMP;
-        image: "sl_bt_3.png" COMP;
-        image: "sl_bt2_0_0.png" COMP;
-        image: "sl_bt2_0_1.png" COMP;
-        image: "sl_bt2_0_2.png" COMP;
-        image: "sl_bt2_1.png" COMP;
-        image: "sl_bt2_2.png" COMP;
-         image: "sl_units.png" COMP;
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_2.png" COMP;
       }
-      script {
-         public value_hide = 0;
-         public set_value_show() {
-            set_int(value_hide, 0);
-         }
-         public set_value_hide() {
-            set_int(value_hide, 1);
-         }
-         public thumb_down() {
-            if (get_int(value_hide) == 1) {
-               set_state(PART:"elm.indicator", "default", 0.0);
-               set_state(PART:"button3", "default", 0.0);
-               set_state(PART:"button4", "default", 0.0);
-               set_state(PART:"button5", "default", 0.0);
-               set_state(PART:"button6", "default", 0.0);
-               set_state(PART:"button7", "default", 0.0);
-            } else {
-               set_state(PART:"elm.indicator", "visible", 0.0);
-               set_state(PART:"button3", "visible", 0.0);
-               set_state(PART:"button4", "visible", 0.0);
-               set_state(PART:"button5", "visible", 0.0);
-               set_state(PART:"button6", "visible", 0.0);
-               set_state(PART:"button7", "visible", 0.0);
+      parts {
+         part {
+            name:           "event";
+            type:           RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
             }
          }
-         public thumb_up() {
-            set_state(PART:"elm.indicator", "default", 0.0);
-            set_state(PART:"button3", "default", 0.0);
-            set_state(PART:"button4", "default", 0.0);
-            set_state(PART:"button5", "default", 0.0);
-            set_state(PART:"button6", "default", 0.0);
-            set_state(PART:"button7", "default", 0.0);
-         }
-      }
-      parts {
-         part { name: "base";
+         part {
+            name: "base";
             mouse_events: 0;
-            description { state: "default" 0.0;
-               max: 99999 6;
-               min: 0 6;
-               rel1 { to: "bg";
-                  offset: 1 0;
-               }
-               rel2 { to: "bg";
-                  offset: -2 -1;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_2.png";
+                  border: 2 2 2 2;
                }
-               image.normal: "sl_bg.png";
                fill.smooth: 0;
             }
          }
-         part { name: "level";
-            type: RECT;
+         part { name: "bg";
             mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 1;
-               rel1.to: "base";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
+               }
                rel2 {
-                  to_y: "base";
-                  to_x: "elm.dragable.slider";
-                  relative: 0.5 1.0;
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
-               color: 255 0 0 200;
-            }
-            description { state: "inverted" 0.0;
-               inherit: "default" 0.0;
-               visible: 0;
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 0 0 100;
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
+               }
+               image.middle: SOLID;
             }
-            description { state: "disabled_inverted" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
+               }
             }
          }
-         part { name: "level2";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               fixed: 1 1;
-               visible: 0;
+         part { name:          "elm.swallow.icon";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    0.0 0.5;
                rel1 {
-                  to_y: "base";
-                  to_x: "elm.dragable.slider";
-                  relative: 0.5 0.0;
+                  relative: 0.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
-               rel2.to: "base";
-               color: 255 0 0 200;
-            }
-            description { state: "inverted" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-            }
-            description { state: "disabled_inverted" 0.0;
-               inherit: "default" 0.0;
-               color: 255 0 0 100;
-               visible: 1;
             }
          }
-         part {
-            name: "base_over";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "base";
-               rel1.offset: -1 -1;
-               rel2.to: "base";
-               rel2.offset: 0 0;
-               image {
-                  normal: "sl_bg_over.png";
-                  border: 3 3 3 3;
+         part { name:          "elm.swallow.end";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    1.0 0.5;
+               rel1 {
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
+               }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
-               fill.smooth: 0;
             }
          }
-         part { name: "bg";
-           type: RECT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-               visible: 0;
-              rel1.to: "elm.swallow.bar";
-              rel2.to: "elm.swallow.bar";
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "elm.swallow.bar";
-           type: SWALLOW;
+         part {
+            name:           "elm.text";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
             scale: 1;
-           description { state: "default" 0.0;
-              min: 48 24;
-              max: 99999 24;
-              align: 1.0 0.5;
-              rel1 {
-                  to_x: "elm.text";
-                  relative: 1.0 0.0;
-                  offset: 8 0;
-               }
-              rel2 {
-                  to_x: "elm.units";
-                  relative: 0.0 1.0;
-                  offset: -10 -1;
-               }
-           }
-        }
-        part { name: "elm.swallow.icon";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              visible: 0;
-              align: 0.0 0.5;
-              rel1 {
-                  offset: 4 0;
-                  to_y: "elm.swallow.bar";
-               }
-              rel2 {
-                  offset: 3 -1;
-                  relative: 0.0 1.0;
-                  to_y: "elm.swallow.bar";
-               }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              rel2.offset: 4 -1;
-           }
-        }
-         part { name: "elm.text";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-               fixed: 1 1;
-               align: 0.0 0.5;
-              rel1.to_x: "elm.swallow.icon";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: -1 4;
-              rel2.to_x: "elm.swallow.icon";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 -5;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.0 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-               rel1.offset: 0 4;
-               rel2.offset: 0 -5;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 255 128 128 128;
-              visible: 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part {
-            name: "elm.swallow.end";
-            type: SWALLOW;
-           description {
+            description {
                state: "default" 0.0;
-              visible: 0;
-              align: 1.0 0.5;
-              rel1 {
-                  offset: -4 0;
-                  relative: 1.0 0.0;
-                  to_y: "elm.swallow.bar";
-               }
-              rel2 {
-                  offset: -3 -1;
-                  to_y: "elm.swallow.bar";
-               }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-              rel2.offset: -4 -1;
-           }
-        }
-         part { name: "units";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-              visible: 0;
+//               min:      16 16;
                rel1 {
-                  to_x: "elm.units";
-                  offset: 0 5;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x: "elm.units";
-                  offset: 5 -3;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
-               image {
-                  normal: "sl_units.png";
-                  border: 0 5 3 8;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "elm.units";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-               fixed: 1 1;
-              align: 1.0 0.5;
-              rel1.to_x: "elm.swallow.end";
-              rel1.relative: 0.0 0.0;
-               rel1.offset: 0 8;
-              rel2.to_x: "elm.swallow.end";
-              rel2.relative: 0.0 1.0;
-              rel2.offset: 0 -9;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.0 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-               fixed: 1 1;
-              visible: 1;
-              text.min: 1 1;
-              rel1.offset: -5 0;
-              rel2.offset: -5 -1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 255 128 128 128;
-              visible: 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-         part { name: "elm.dragable.slider";
-            type: RECT;
+         part { name: "fg1";
             mouse_events: 0;
-            scale: 1;
-            dragable {
-               x: 1 1 0;
-               y: 0 0 0;
-               confine: "bg";
-            }
             description { state: "default" 0.0;
-               min: 0 24;
-               max: 0 24;
-               fixed: 1 1;
-               rel1 {
-                  relative: 0.5 0.0;
-                  to_x: "bg";
-               }
-               rel2 {
-                  relative: 0.5 1.0;
-                  to_x: "bg";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               color: 255 0 0 100;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-         part { name: "button_events";
-           type: RECT;
-           dragable {
-              events: "elm.dragable.slider";
-           }
-            mouse_events: 1;
-           description { state: "default" 0.0;
-               fixed: 1 1;
-               min: 16 16;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-              rel1.to_x: "elm.dragable.slider";
-              rel2.to_x: "elm.dragable.slider";
-              color: 0 0 0 0;
-           }
-        }
-         part { name: "button0";
+         part { name: "fg2";
             mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 1;
-               max: 17 999;
-               min: 17 24;
-               rel1.to: "elm.dragable.slider";
-               rel2.to: "elm.dragable.slider";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt_0.png";
-                  border: 5 5 5 10;
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-            description { state: "disabled" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               image {
-                  normal: "sl_bt_3.png";
-                  border: 5 5 5 10;
-               }
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-         part { name: "button1";
+      }
+      programs {
+         program {
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            transition: LINEAR 0.1;
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/list/h_item/default";
+      data.item: "stacking" "above";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1_h.png" COMP;
+         image: "ilist_item_shadow_h.png" COMP;
+      }
+      parts {
+         part {
+            name: "event";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+         part {
+            name: "base_sh";
             mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "button0";
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 10 0;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 1.0 0.0;
+                  offset: 0 0;
+               }
                rel2 {
-                  to: "button0";
-                  relative: 1.0 0.5;
-                  offset: -1 -5;
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: 0 -1;
                }
                image {
-                  normal: "sl_bt_1.png";
-                  border: 5 5 5 0;
+                  normal: "ilist_item_shadow_h.png";
                }
+               fill.smooth: 0;
             }
          }
-         part { name: "button2";
+         part {
+            name: "base";
             mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "button0";
-               rel2.to: "button0";
+            description {
+               state: "default" 0.0;
                image {
-                  normal: "sl_bt_2.png";
-                  border: 5 5 5 10;
+                  normal: "ilist_1_h.png";
+                  border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
          }
-         part { name: "button3";
+         part { name: "bg";
             mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 1;
-              visible: 0;
-               min: 8 32;
-               align: 1.0 0.5;
+               visible: 0;
+               color: 255 255 255 0;
                rel1 {
-                  to_x: "elm.indicator";
-                  to_y: "button4";
                   relative: 0.0 0.0;
-                  offset: -7 0;
+                  offset: -5 -5;
                }
                rel2 {
-                  to: "button4";
-                  relative: 0.0 1.0;
-                  offset: -1 -1;
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
                image {
-                  normal: "sl_bt2_0_0.png";
-                  border: 6 0 6 12;
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-               fill.smooth: 0;
+               image.middle: SOLID;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
+               }
             }
          }
-         part { name: "button4";
-            mouse_events: 0;
+         part { name: "elm.swallow.icon";
+            type: SWALLOW;
             description { state: "default" 0.0;
-              visible: 0;
-               max: 15 999;
-               min: 15 32;
+               fixed: 0 1;
+               align: 0.5 0.0;
                rel1 {
-                  to_x: "button0";
-                  to_y: "elm.indicator";
-                  offset: 0 0;
+                  relative: 0.0 0.0;
+                  offset: 4 4;
                }
-               rel2.to: "button0";
-               image {
-                  normal: "sl_bt2_0_1.png";
-                  border: 0 0 6 12;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -5 4;
                }
-               fill.smooth: 0;
-            }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
             }
          }
-         part { name: "button5";
-            mouse_events: 0;
+         part { name: "elm.swallow.end";
+            type: SWALLOW;
             description { state: "default" 0.0;
-               fixed: 1 1;
-              visible: 0;
-               min: 8 32;
-               align: 0.0 0.5;
+               fixed: 0 1;
+               align: 0.5 1.0;
                rel1 {
-                  to: "button4";
-                  relative: 1.0 0.0;
-                  offset: 0 0;
+                  relative: 0.0 1.0;
+                  offset: 4 -5;
                }
                rel2 {
-                  to_x: "elm.indicator";
-                  to_y: "button4";
                   relative: 1.0 1.0;
-                  offset: 6 -1;
+                  offset: -5 -5;
+               }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            mouse_events: 0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               fixed: 0 1;
+               rel1 {
+                  to_x: "elm.swallow.icon";
+                  relative: 0.0 1.0;
+                  offset: 4 4;
+               }
+               rel2 {
+                  to_x: "elm.swallow.end";
+                  relative: 1.0 0.0;
+                  offset: -5 -1;
                }
-               image {
-                  normal: "sl_bt2_0_2.png";
-                  border: 0 6 6 12;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.5 0.5;
+                  text_class: "list_item";
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "elm.indicator";
-           type: TEXT;
-           mouse_events: 0;
-            effect: SOFT_SHADOW;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-               fixed: 1 1;
-               align: 0.5 1.0;
-              rel1 {
-                  to: "button0";
-                  relative: 0.0 -0.25;
-                  offset: 0 0;
-               }
-              rel2 {
-                  to_x: "button0";
-                  relative: 1.0 -0.25;
-                  offset: -1 0;
-               }
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-               rel1.offset: 0 -1;
-               rel2.offset: -1 -1;
-           }
-        }
-         part { name: "button6";
+         part { name: "fg1";
             mouse_events: 0;
             description { state: "default" 0.0;
-              visible: 0;
-               rel1.to: "button3";
-               rel2 {
-                  to: "button5";
-                  relative: 1.0 0.3;
-                  offset: -1 -1;
-               }
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt2_1.png";
-                  border: 5 5 5 0;
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-         part { name: "button7";
+         part { name: "fg2";
             mouse_events: 0;
             description { state: "default" 0.0;
-              visible: 0;
-               rel1.to: "button3";
-               rel2.to: "button5";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt2_2.png";
-                  border: 5 5 5 0;
-                  middle: 0;
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
       }
       programs {
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.text";
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.text";
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "end_show";
-           signal: "elm,state,end,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "end_hide";
-           signal: "elm,state,end,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "units_show";
-           signal: "elm,state,units,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.units";
-           target: "units";
-        }
-        program { name: "units_hide";
-           signal: "elm,state,units,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.units";
-           target: "units";
-        }
-        program { name: "invert_on";
-           signal: "elm,state,inverted,on";
-           source: "elm";
-           action:  STATE_SET "inverted" 0.0;
-           target: "level";
-           target: "level2";
-        }
-        program { name: "invert_off";
-           signal: "elm,state,inverted,off";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "level";
-           target: "level2";
-        }
-        program { name: "set_val_show";
-           signal: "elm,state,val,show";
-           source: "elm";
-           script {
-               set_value_show();
-           }
-        }
-        program { name: "set_val_hide";
-           signal: "elm,state,val,hide";
-           source: "elm";
-           script {
-               set_value_hide();
-           }
-        }
-        program { name: "val_show";
-           signal: "mouse,down,*";
-           source: "elm.dragable.slider";
-           script {
-               thumb_down();
-           }
-
-        }
-        program { name: "val_hide";
-           signal: "mouse,up,*";
-           source: "elm.dragable.slider";
-           script {
-               thumb_up();
-           }
-        }
          program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "button0";
-            target:  "disabler";
-            after: "disable_text";
-         }
-         program { name: "disable_text";
-            script {
-               new st[31];
-               new Float:vl;
-               get_state(PART:"elm.text", st, 30, vl);
-               if (!strcmp(st, "visible"))
-                  set_state(PART:"elm.text", "disabled_visible", 0.0);
-               else
-                  set_state(PART:"elm.text", "disabled", 0.0);
-
-               get_state(PART:"elm.units", st, 30, vl);
-               if (!strcmp(st, "visible")) 
-                  set_state(PART:"elm.units", "disabled_visible", 0.0);
-               else 
-                  set_state(PART:"elm.units", "disabled", 0.0);
-
-               get_state(PART:"level2", st, 30, vl);
-               if (!strcmp(st, "inverted")) 
-               {
-                  set_state(PART:"level", "disabled_inverted", 0.0);
-                  set_state(PART:"level2", "disabled_inverted", 0.0);
-               }
-               else 
-               {
-                  set_state(PART:"level", "disabled", 0.0);
-                  set_state(PART:"level2", "disabled", 0.0);
-               }
-            }
+            name: "go_active";
+            signal: "elm,state,selected";
+            source: "elm";
+            action: STATE_SET "selected" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
          }
-         program { name: "enable";
-            signal: "elm,state,enabled";
+         program {
+            name: "go_passive";
+            signal: "elm,state,unselected";
             source: "elm";
             action: STATE_SET "default" 0.0;
-            target: "button0";
-            target: "disabler";
-            after: "enable_text";
-         }
-         program { name: "enable_text";
-            script {
-               new st[31];
-               new Float:vl;
-               get_state(PART:"elm.text", st, 30, vl);
-               if (!strcmp(st, "disabled_visible"))
-                  set_state(PART:"elm.text", "visible", 0.0);
-               else
-                  set_state(PART:"elm.text", "default", 0.0);
-
-               get_state(PART:"elm.units", st, 30, vl);
-               if (!strcmp(st, "disabled_visible"))
-                  set_state(PART:"elm.units", "visible", 0.0);
-               else
-                  set_state(PART:"elm.units", "default", 0.0);
-     
-               get_state(PART:"level2", st, 30, vl);
-               if (!strcmp(st, "disabled_inverted"))
-               {
-                  set_state(PART:"level", "inverted", 0.0);
-                  set_state(PART:"level2", "inverted", 0.0);
-               }
-               else
-               {
-                  set_state(PART:"level", "default", 0.0);
-                  set_state(PART:"level2", "default", 0.0);
-               }
-            }
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+            transition: LINEAR 0.1;
          }
       }
    }
-
-   group { name: "elm/slider/vertical/default";
+   group { name: "elm/list/h_item_odd/default";
+      data.item: "stacking" "below";
+      data.item: "selectraise" "on";
       images {
-        image: "slv_bg.png" COMP;
-        image: "slv_bg_over.png" COMP;
-
-        image: "sl_bt_0.png" COMP;
-        image: "sl_bt_1.png" COMP;
-        image: "sl_bt_2.png" COMP;
-        image: "sl_bt_3.png" COMP;
-        image: "sl_bt2_0_0.png" COMP;
-        image: "sl_bt2_0_1.png" COMP;
-        image: "sl_bt2_0_2.png" COMP;
-        image: "sl_bt2_1.png" COMP;
-        image: "sl_bt2_2.png" COMP;
-
-         image: "slv_units.png" COMP;
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_2_h.png" COMP;
       }
-      script {
-         public value_hide = 0;
-         public set_value_show() {
-            set_int(value_hide, 0);
+      parts {
+         part {
+            name: "event";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
          }
-         public set_value_hide() {
-            set_int(value_hide, 1);
+         part {
+            name: "base";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_2_h.png";
+                  border: 2 2 2 2;
+               }
+               fill.smooth: 0;
+            }
          }
-         public thumb_down() {
-            if (get_int(value_hide) == 1) {
-               set_state(PART:"elm.indicator", "default", 0.0);
-               set_state(PART:"button3", "default", 0.0);
-               set_state(PART:"button4", "default", 0.0);
-               set_state(PART:"button5", "default", 0.0);
-               set_state(PART:"button6", "default", 0.0);
-               set_state(PART:"button7", "default", 0.0);
-            } else {
-               set_state(PART:"elm.indicator", "visible", 0.0);
-               set_state(PART:"button3", "visible", 0.0);
-               set_state(PART:"button4", "visible", 0.0);
-               set_state(PART:"button5", "visible", 0.0);
-               set_state(PART:"button6", "visible", 0.0);
-               set_state(PART:"button7", "visible", 0.0);
+         part { name: "bg";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 4 4;
+               }
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
+               }
+               image.middle: SOLID;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
+               }
             }
          }
-         public thumb_up() {
-            set_state(PART:"elm.indicator", "default", 0.0);
-            set_state(PART:"button3", "default", 0.0);
-            set_state(PART:"button4", "default", 0.0);
-            set_state(PART:"button5", "default", 0.0);
-            set_state(PART:"button6", "default", 0.0);
-            set_state(PART:"button7", "default", 0.0);
+         part {
+            name: "elm.swallow.icon";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 0 1;
+               align: 0.5 0.0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: 4 4;
+               }
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -5 4;
+               }
+            }
          }
-      }
-      parts {
-         part { name: "base";
-            mouse_events: 0;
+         part {
+            name: "elm.swallow.end";
+            type: SWALLOW;
             description { state: "default" 0.0;
-               max: 6 99999;
-               min: 6 0;
-               rel1 { to: "bg";
-                  offset: 1 0;
+               fixed: 0 1;
+               align: 0.5 1.0;
+               rel1 {
+                  relative: 0.0 1.0;
+                  offset: 4 -5;
                }
-               rel2 { to: "bg";
-                  offset: -2 -1;
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: -5 -5;
                }
-               image.normal: "slv_bg.png";
-               fill.smooth: 0;
             }
          }
-         part { name: "level";
-            type: RECT;
+         part { name: "elm.text";
+            type: TEXT;
+            effect: SOFT_SHADOW;
             mouse_events: 0;
-            description { state: "default" 0.0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
                fixed: 1 1;
-               rel1.to: "base";
+               rel1 {
+                  to_x: "elm.swallow.icon";
+                  relative: 0.0 1.0;
+                  offset: 4 4;
+               }
                rel2 {
-                  to_x: "base";
-                  to_y: "elm.dragable.slider";
-                  relative: 1.0 0.5;
+                  to_x: "elm.swallow.end";
+                  relative: 1.0 0.0;
+                  offset: -5 -1;
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.5 0.5;
+                  text_class: "list_item";
                }
-               color: 255 0 0 200;
-            }
-            description { state: "inverted" 0.0;
-               inherit: "default" 0.0;
-               visible: 0;
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 0 0 100;
             }
-            description { state: "disabled_inverted" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "level2";
-            type: RECT;
+         part { name: "fg1";
             mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 1;
                visible: 0;
-               rel1 {
-                  to_x: "base";
-                  to_y: "elm.dragable.slider";
-                  relative: 0.0 0.5;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               rel2.to: "base";
-               color: 255 0 0 200;
             }
-            description { state: "inverted" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
                visible: 1;
+               color: 255 255 255 255;
             }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 0 0 100;
+         }
+         part { name: "fg2";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
             }
-            description { state: "disabled_inverted" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               color: 255 0 0 100;
                visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+      }
+      programs {
+         program {
+            name: "go_active";
+            signal: "elm,state,selected";
+            source: "elm";
+            action: STATE_SET "selected" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+         }
+         program {
+            name: "go_passive";
+            signal: "elm,state,unselected";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+            transition: LINEAR 0.1;
+         }
+      }
+   }
+   group { name: "elm/list/h_item_compress/default";
+      data.item: "stacking" "above";
+      data.item: "selectraise" "on";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1_h.png" COMP;
+         image: "ilist_item_shadow_h.png" COMP;
+      }
+      parts {
+         part {
+            name: "event";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
             }
          }
          part {
-            name: "base_over";
+            name: "base_sh";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "base";
-               rel1.offset: -1 -1;
-               rel2.to: "base";
-               rel2.offset: 0 0;
+               fixed: 1 1;
+               align: 0.0 0.0;
+               min: 10 0;
+               rel1 {
+                  to: "base";
+                  relative: 1.0 0.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: 0 -1;
+               }
                image {
-                  normal: "slv_bg_over.png";
-                  border: 3 3 3 3;
+                  normal: "ilist_item_shadow_h.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
+            name: "base";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_1_h.png";
+                  border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
          }
          part { name: "bg";
-           type: RECT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-               visible: 0;
-              rel1.to: "elm.swallow.bar";
-              rel2.to: "elm.swallow.bar";
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "elm.swallow.bar";
-           type: SWALLOW;
-            scale: 1;
-           description { state: "default" 0.0;
-              min: 24 48;
-              max: 24 9999;
-              align: 0.5 1.0;
-              rel1 {
-                  to_y: "elm.text";
-                  relative: 0.0 1.0;
-                  offset: 0 10;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
                }
-              rel2 {
-                  to_y: "elm.units";
-                  relative: 1.0 0.0;
-                  offset: -1 -8;
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
-           }
-        }
-        part { name: "elm.swallow.icon";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-              visible: 0;
-              align: 0.5 0.0;
-              rel1 {
-                  offset: 0 4;
-                  to_x: "elm.swallow.bar";
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-              rel2 {
-                  offset: -1 3;
-                  relative: 1.0 0.0;
-                  to_x: "elm.swallow.bar";
+               image.middle: SOLID;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
                }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: HORIZONTAL;
-              rel2.offset: -1 4;
-           }
-        }
-         part { name: "elm.text";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
+               }
+            }
+         }
+         part { name: "elm.swallow.icon";
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 0 1;
                align: 0.5 0.0;
-              rel1.to_y: "elm.swallow.icon";
-              rel1.relative: 0.0 1.0;
-               rel1.offset: 0 -1;
-              rel2.to_y: "elm.swallow.icon";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -1 -1;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.5 0.0;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-               rel1.offset: 4 0;
-               rel2.offset: -5 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 255 128 128 128;
-              visible: 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-        part {
-            name: "elm.swallow.end";
-            type: SWALLOW;
-           description {
-               state: "default" 0.0;
-              visible: 0;
-              align: 0.5 1.0;
-              rel1 {
-                  offset: 0 -4;
-                  relative: 0.0 1.0;
-                  to_x: "elm.swallow.bar";
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: 4 4;
                }
-              rel2 {
-                  offset: -1 -3;
-                  to_x: "elm.swallow.bar";
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -5 4;
                }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              aspect: 1.0 1.0;
-              aspect_preference: HORIZONTAL;
-              rel2.offset: -1 -4;
-           }
-        }
-         part { name: "units";
-            mouse_events: 0;
+            }
+         }
+         part { name: "elm.swallow.end";
+            type: SWALLOW;
             description { state: "default" 0.0;
-              visible: 0;
+               fixed: 0 1;
+               align: 0.5 1.0;
                rel1 {
-                  to: "elm.units";
-                  offset: -8 0;
+                  relative: 0.0 1.0;
+                  offset: 4 -5;
                }
                rel2 {
-                  to: "elm.units";
-                  offset: 7 8;
-               }
-               image {
-                  normal: "slv_units.png";
-                  border: 8 8 0 9;
+                  relative: 1.0 1.0;
+                  offset: -5 -5;
                }
-               fill.smooth: 0;
-            }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
             }
          }
-         part { name: "elm.units";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-               fixed: 1 1;
-              align: 0.5 1.0;
-              rel1.relative: 0.0 0.0;
-              rel1.to_y: "elm.swallow.end";
-              rel1.offset: 8 0;
-              rel2.relative: 1.0 0.0;
-              rel2.to_y: "elm.swallow.end";
-              rel2.offset: -9 0;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.5 0.0;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-               fixed: 1 1;
-              visible: 1;
-              text.min: 1 1;
-              rel1.offset: 8 -9;
-              rel2.offset: -9 -9;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color:  0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              fixed: 1 1;
-              visible: 1;
-              text.min: 1 1;
-              rel1.offset: 8 -9;
-              rel2.offset: -9 -9;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-        }
-         part { name: "elm.dragable.slider";
-            type: RECT;
+         part {
+            name: "elm.text";
+            type: TEXT;
+            effect: SOFT_SHADOW;
             mouse_events: 0;
             scale: 1;
-            dragable {
-               x: 0 0 0;
-               y: 1 1 0;
-               confine: "bg";
-            }
             description { state: "default" 0.0;
-               min: 24 0;
-               max: 24 0;
                fixed: 1 1;
                rel1 {
-                  relative: 0.5  0.0;
-                  to_y: "bg";
+                  to_x: "elm.swallow.icon";
+                  relative: 0.0 1.0;
+                  offset: 4 4;
                }
                rel2 {
-                  relative: 0.5  1.0;
-                  to_y: "bg";
+                  to_x: "elm.swallow.end";
+                  relative: 1.0 0.0;
+                  offset: -5 -1;
                }
-               color: 0 0 0 0;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.5 0.5;
+                  text_class: "list_item";
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "button_events";
-           type: RECT;
-           dragable {
-              events: "elm.dragable.slider";
-           }
-            mouse_events: 1;
-           description { state: "default" 0.0;
-               fixed: 1 1;
-               min: 16 16;
-               aspect: 1.0 1.0;
-               aspect_preference: HORIZONTAL;
-              rel1.to_y: "elm.dragable.slider";
-              rel2.to_y: "elm.dragable.slider";
-              color: 0 0 0 0;
-           }
-        }
-         part { name: "button0";
+         part { name: "fg1";
             mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 1;
-               max: 17 999;
-               min: 17 24;
-               rel1.to: "elm.dragable.slider";
-               rel2.to: "elm.dragable.slider";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt_0.png";
-                  border: 5 5 5 10;
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-            description { state: "disabled" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               image {
-                  normal: "sl_bt_3.png";
-                  border: 5 5 5 10;
-               }
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-         part { name: "button1";
+         part { name: "fg2";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "button0";
-               rel2 {
-                  to: "button0";
-                  relative: 1.0 0.5;
-                  offset: -1 -5;
-               }
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt_1.png";
-                  border: 5 5 5 0;
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
             }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
          }
-         part { name: "button2";
+      }
+      programs {
+         program {
+            name: "go_active";
+            signal: "elm,state,selected";
+            source: "elm";
+            action: STATE_SET "selected" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+         }
+         program {
+            name: "go_passive";
+            signal: "elm,state,unselected";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+            transition: LINEAR 0.1;
+         }
+      }
+   }
+   group { name: "elm/list/h_item_compress_odd/default";
+      data.item: "stacking" "below";
+      data.item: "selectraise" "on";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_2_h.png" COMP;
+      }
+      parts {
+         part {
+            name: "event";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+         part {
+            name: "base";
             mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "button0";
-               rel2.to: "button0";
+            description {
+               state: "default" 0.0;
                image {
-                  normal: "sl_bt_2.png";
-                  border: 5 5 5 10;
+                  normal: "ilist_2_h.png";
+                  border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
          }
-         part { name: "button3";
+         part { name: "bg";
             mouse_events: 0;
             description { state: "default" 0.0;
-              visible: 0;
-               min: 8 32;
-               align: 1.0 0.5;
+               visible: 0;
+               color: 255 255 255 0;
                rel1 {
-                  to_x: "elm.indicator";
-                  to_y: "button4";
                   relative: 0.0 0.0;
-                  offset: -7 0;
+                  offset: -5 -5;
                }
                rel2 {
-                  to: "button4";
-                  relative: 0.0 1.0;
-                  offset: -1 -1;
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
                image {
-                  normal: "sl_bt2_0_0.png";
-                  border: 6 0 6 12;
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-               fill.smooth: 0;
+               image.middle: SOLID;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
+               }
             }
          }
-         part { name: "button4";
-            mouse_events: 0;
+         part { name: "elm.swallow.icon";
+            type: SWALLOW;
             description { state: "default" 0.0;
-              visible: 0;
-               max: 15 999;
-               min: 15 32;
-               fixed: 1 1;
+               fixed: 0 1;
+               align: 0.5 0.0;
                rel1 {
-                  to_x: "button0";
-                  to_y: "elm.indicator";
-                  offset: 0 -7;
+                  relative: 0.0 0.0;
+                  offset: 4 4;
                }
-               rel2.to: "button0";
-               image {
-                  normal: "sl_bt2_0_1.png";
-                  border: 0 0 6 12;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -5 4;
                }
-               fill.smooth: 0;
-            }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
             }
          }
-         part { name: "button5";
-            mouse_events: 0;
+         part { name: "elm.swallow.end";
+            type: SWALLOW;
             description { state: "default" 0.0;
-              visible: 0;
-               min: 8 32;
-               align: 0.0 0.5;
+               fixed: 0 1;
+               align: 0.5 1.0;
                rel1 {
-                  to: "button4";
-                  relative: 1.0 0.0;
-                  offset: 0 0;
+                  relative: 0.0 1.0;
+                  offset: 4 -5;
                }
                rel2 {
-                  to_x: "elm.indicator";
-                  to_y: "button4";
                   relative: 1.0 1.0;
-                  offset: 6 -1;
+                  offset: -5 -5;
+               }
+            }
+         }
+         part { name: "elm.text";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            mouse_events: 0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               fixed: 1 1;
+               rel1 {
+                  to_x: "elm.swallow.icon";
+                  relative: 0.0 1.0;
+                  offset: 4 4;
+               }
+               rel2 {
+                  to_x: "elm.swallow.end";
+                  relative: 1.0 0.0;
+                  offset: -5 -1;
                }
-               image {
-                  normal: "sl_bt2_0_2.png";
-                  border: 0 6 6 12;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.5 0.5;
+                  text_class: "list_item";
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "elm.indicator";
-           type: TEXT;
-           mouse_events: 0;
-            effect: SOFT_SHADOW;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-               fixed: 1 1;
-               align: 0.5 1.0;
-              rel1 {
-                  to: "button0";
-                  relative: 0.0 -1.0;
-                  offset: 0 0;
-               }
-              rel2 {
-                  to: "button0";
-                  relative: 1.0 -1.0;
-                  offset: -1 0;
-               }
-              color: 224 224 224 255;
-              color3: 0 0 0 64;
-              text {
-                 font:     "Sans,Edje-Vera";
-                 size:     10;
-                 min:      0 0;
-                 align:    0.5 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-               rel1.offset: 0 -1;
-               rel2.offset: -1 -1;
-           }
-        }
-         part { name: "button6";
+         part { name: "fg1";
             mouse_events: 0;
             description { state: "default" 0.0;
-              visible: 0;
-               rel1.to: "button3";
-               rel2 {
-                  to: "button5";
-                  relative: 1.0 0.3;
-                  offset: -1 -1;
-               }
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt2_1.png";
-                  border: 5 5 5 0;
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-         part { name: "button7";
+         part { name: "fg2";
             mouse_events: 0;
             description { state: "default" 0.0;
-              visible: 0;
-               rel1.to: "button3";
-               rel2.to: "button5";
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
                image {
-                  normal: "sl_bt2_2.png";
-                  border: 5 5 5 0;
-                  middle: 0;
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
-               fill.smooth: 0;
             }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
             }
          }
-            part { name: "disabler";
-               type: RECT;
-               description { state: "default" 0.0;
-                  color: 0 0 0 0;
-                  visible: 0;
-               }
-               description { state: "disabled" 0.0;
-                  inherit: "default" 0.0;
-                  visible: 1;
-               }
-            }
-         }
-
+      }
       programs {
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.text";
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.text";
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.icon";
-        }
-        program { name: "end_show";
-           signal: "elm,state,end,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "end_hide";
-           signal: "elm,state,end,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.end";
-        }
-        program { name: "units_show";
-           signal: "elm,state,units,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.units";
-           target: "units";
-        }
-        program { name: "units_hide";
-           signal: "elm,state,units,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.units";
-           target: "units";
-        }
-        program { name: "invert_on";
-           signal: "elm,state,inverted,on";
-           source: "elm";
-           action:  STATE_SET "inverted" 0.0;
-           target: "level";
-           target: "level2";
-        }
-        program { name: "invert_off";
-           signal: "elm,state,inverted,off";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "level";
-           target: "level2";
-        }
-        program { name: "set_val_show";
-           signal: "elm,state,val,show";
-           source: "elm";
-           script {
-               set_value_show();
-           }
-        }
-        program { name: "set_val_hide";
-           signal: "elm,state,val,hide";
-           source: "elm";
-           script {
-               set_value_hide();
-           }
-        }
-        program { name: "val_show";
-           signal: "mouse,down,*";
-           source: "elm.dragable.slider";
-           script {
-               thumb_down();
-           }
-        }
-        program { name: "val_hide";
-           signal: "mouse,up,*";
-           source: "elm.dragable.slider";
-           script {
-               thumb_up();
-           }
-        }
-        program {
-           name:   "go_disabled";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "button0";
-           target: "disabler";
-           after: "disable_text";
-        }
-        program { name: "disable_text";
-           script {
-           new st[31];
-           new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                 set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                 set_state(PART:"elm.text", "disabled", 0.0);
-
-              get_state(PART:"elm.units", st, 30, vl);
-              if (!strcmp(st, "visible")) 
-                 set_state(PART:"elm.units", "disabled_visible", 0.0);
-              else 
-                 set_state(PART:"elm.units", "disabled", 0.0);
-
-              get_state(PART:"level2", st, 30, vl);
-              if (!strcmp(st, "inverted")) 
-               {
-                 set_state(PART:"level", "disabled_inverted", 0.0);
-                 set_state(PART:"level2", "disabled_inverted", 0.0);
-               }
-              else 
-               {
-                 set_state(PART:"level", "disabled", 0.0);
-                 set_state(PART:"level2", "disabled", 0.0);
-               }
-           }
-        }
-
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "button0";
-           target: "disabler";
-           after: "enable_text";
-        }
-        program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                 set_state(PART:"elm.text", "visible", 0.0);
-              else
-                 set_state(PART:"elm.text", "default", 0.0);
-
-              get_state(PART:"elm.units", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                 set_state(PART:"elm.units", "visible", 0.0);
-              else
-                 set_state(PART:"elm.units", "default", 0.0);
-     
-              get_state(PART:"level2", st, 30, vl);
-              if (!strcmp(st, "disabled_inverted"))
-               {
-                 set_state(PART:"level", "inverted", 0.0);
-                 set_state(PART:"level2", "inverted", 0.0);
-               }
-              else
-               {
-                 set_state(PART:"level", "default", 0.0);
-                 set_state(PART:"level2", "default", 0.0);
-               }
-           }
-        }
+         program {
+            name: "go_active";
+            signal: "elm,state,selected";
+            source: "elm";
+            action: STATE_SET "selected" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+         }
+         program {
+            name: "go_passive";
+            signal: "elm,state,unselected";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "bg";
+            target: "fg1";
+            target: "fg2";
+            target: "elm.text";
+            transition: LINEAR 0.1;
+         }
       }
    }
 
-////////////////////////////////////////////////////////////////////////////////
-// actionslider
-////////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/actionslider/base/default";
-
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/slider/horizontal/default";
+           alias: "elm/slider/horizontal/disabled";
       images {
-         image: "shelf_inset.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "bt_bases.png" COMP;
-         image: "bt_basew.png" COMP;
-         image: "bt_hilightw.png" COMP;
-      }
+         image: "sl_bg.png" COMP;
+         image: "sl_bg_over.png" COMP;
 
+         image: "sl_units.png" COMP;
+      }
       parts {
-         part {
-            name: "base";
+         part { name: "base";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               min: 75 25;
-               rel1.offset: 1 1;
-               rel2.offset: -2 -2;
-               image {
-                  normal: "ilist_1.png";
-                  border: 2 2 2 2;
+            description { state: "default" 0.0;
+               max: 99999 6;
+               min: 0 6;
+               rel1 { to: "bg";
+                  offset: 1 0;
                }
+               rel2 { to: "bg";
+                  offset: -2 -1;
+               }
+               image.normal: "sl_bg.png";
                fill.smooth: 0;
             }
          }
-         part { name: "conf_over";
-            mouse_events:  0;
+         part { name: "level";
+            type: RECT;
+            mouse_events: 0;
             description { state: "default" 0.0;
+               fixed: 1 1;
                rel1.to: "base";
-               rel2.to: "base";
-               image {
-                  normal: "shelf_inset.png";
-                  border: 7 7 7 7;
-                  middle: 0;
+               rel2 {
+                  to_y: "base";
+                  to_x: "elm.dragable.slider";
+                  relative: 0.5 1.0;
                }
-               fill.smooth : 0;
+               color: 255 0 0 200;
             }
-         }
-         part { name: "icon.dragable.area";
-           type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
+            description { state: "inverted" 0.0;
+               inherit: "default" 0.0;
                visible: 0;
-               rel1.to: "base";
-               rel2.to: "base";
-            }
-         }
-         part { name: "elm.text.left";
-            type: TEXT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.05 0.5;
-                  min: 1 1;
-               }
             }
-         }
-         part { name: "elm.text.center";
-            type: TEXT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.5 0.5;
-                  min: 1 1;
-               }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 100;
             }
-         }
-         part { name: "elm.text.right";
-            type: TEXT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.95 0.5;
-                  min: 1 1;
-               }
+            description { state: "disabled_inverted" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
             }
          }
-         part { name: "elm.drag_button_base";
-            type: SWALLOW;
+         part { name: "level2";
+            type: RECT;
             mouse_events: 0;
-            scale: 1;
             description { state: "default" 0.0;
                fixed: 1 1;
-               min: 50 25;
-               align: 0.5 0.5;
-               rel1.to: "icon.dragable.area";
-               rel2 {
-                  relative: 0.0 1.0;
-                  to: "icon.dragable.area";
+               visible: 0;
+               rel1 {
+                  to_y: "base";
+                  to_x: "elm.dragable.slider";
+                  relative: 0.5 0.0;
                }
+               rel2.to: "base";
+               color: 255 0 0 200;
             }
-            dragable {
-               confine: "icon.dragable.area";
-               x: 1 1 0;
-               y: 0 0 0;
+            description { state: "inverted" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
-         }
-         part { name: "elm.drag_button";
-            type: RECT;
-            mouse_events: 1;
-            description { state: "default" 0.0;
-               min: 50 25;
-               color: 255 255 255 0;
-               rel1.to_x: "elm.drag_button_base";
-               rel1.to_y: "icon.dragable.area";
-               rel2.to_x: "elm.drag_button_base";
-               rel2.to_y: "icon.dragable.area";
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
             }
-            dragable {
-               events: "elm.drag_button_base";
+            description { state: "disabled_inverted" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 100;
+               visible: 1;
             }
          }
-         part { name: "button0";
+         part {
+            name: "base_over";
             mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "button2";
-               rel1.offset: -4 -4;
-               rel2.to: "button2";
-               rel2.offset: 3 3;
+               rel1.to: "base";
+               rel1.offset: -1 -1;
+               rel2.to: "base";
+               rel2.offset: 0 0;
                image {
-                  normal: "bt_bases.png";
-                  border: 11 11 11 11;
-                  middle: SOLID;
+                  normal: "sl_bg_over.png";
+                  border: 3 3 3 3;
                }
-               color: 255 255 255 128;
+               fill.smooth: 0;
             }
          }
-         part { name: "button2";
+         part { name: "bg";
+            type: RECT;
             mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
-               rel1.to: "elm.drag_button";
-               rel2.to: "elm.drag_button";
-               image {
-                  normal: "bt_basew.png";
-                  border: 7 7 7 7;
-                  middle: SOLID;
-               }
-               color: 255 255 255 210;
+               visible: 0;
+               rel1.to: "elm.swallow.bar";
+               rel2.to: "elm.swallow.bar";
+               color: 0 0 0 0;
             }
          }
-         part { name: "button3";
-            mouse_events: 0;
+         part { name: "elm.swallow.bar";
+            type: SWALLOW;
+            scale: 1;
             description { state: "default" 0.0;
-               rel1.to: "button2";
-               rel2.to: "button2";
-               rel2.relative: 1.0 0.5;
-               image {
-                  normal: "bt_hilightw.png";
-                  border: 4 4 4 0;
+               min: 48 24;
+               max: 99999 24;
+               align: 1.0 0.5;
+               rel1 {
+                  to_x: "elm.text";
+                  relative: 1.0 0.0;
+                  offset: 8 0;
+               }
+               rel2 {
+                  to_x: "elm.units";
+                  relative: 0.0 1.0;
+                  offset: -10 -1;
                }
-               color: 255 255 255 190;
             }
          }
-         part { name: "elm.text.indicator";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
+         part { name: "elm.swallow.icon";
+            type: SWALLOW;
             description { state: "default" 0.0;
+               visible: 0;
+               align: 0.0 0.5;
                rel1 {
-                  to: "elm.drag_button";
-                  offset: 5 0;
+                  offset: 4 0;
+                  to_y: "elm.swallow.bar";
                }
                rel2 {
-                  to: "elm.drag_button";
-                  offset: -5 0;
+                  offset: 3 -1;
+                  relative: 0.0 1.0;
+                  to_y: "elm.swallow.bar";
                }
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel2.offset: 4 -1;
+            }
+         }
+         part { name: "elm.text";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               fixed: 1 1;
+               align: 0.0 0.5;
+               rel1.to_x: "elm.swallow.icon";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: -1 4;
+               rel2.to_x: "elm.swallow.icon";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 -5;
                color: 0 0 0 255;
                text {
                   font: "Sans,Edje-Vera";
                   size: 10;
-                  align: 0.5 0.5;
-                  min: 0 1;
+                  min: 0 0;
+                  align: 0.0 0.5;
                }
             }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+               rel1.offset: 0 4;
+               rel2.offset: 0 -5;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 128 128 128;
+               visible: 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
+            }
          }
-      }
-      programs {
-        program { name: "elm.drag_button,mouse,up";
-           signal: "mouse,up,1";
-           source: "elm.drag_button";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,up" "";
-        }
-        program { name: "elm.drag_button,mouse,down";
-           signal: "mouse,down,1";
-           source: "elm.drag_button";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,down" "";
-        }
-        program { name: "elm.drag_button,mouse,move";
-           signal: "mouse,move";
-           source: "elm.drag_button_base";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,move" "";
-        }
-      }
-   }
-
-   group { name: "elm/actionslider/base/bar";
-
-      images {
-         image: "shelf_inset.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "bt_bases.png" COMP;
-         image: "bt_basew.png" COMP;
-         image: "bt_hilightw.png" COMP;
-      }
-
-      parts {
          part {
-            name: "base";
-            mouse_events: 0;
+            name: "elm.swallow.end";
+            type: SWALLOW;
             description {
                state: "default" 0.0;
-               min: 150 30;
-               rel1.offset: 1 1;
-               rel2.offset: -2 -2;
-               image {
-                  normal: "ilist_1.png";
-                  border: 2 2 2 2;
+               visible: 0;
+               align: 1.0 0.5;
+               rel1 {
+                  offset: -4 0;
+                  relative: 1.0 0.0;
+                  to_y: "elm.swallow.bar";
                }
-               fill.smooth: 0;
-            }
-         }
-         part { name: "conf_over";
-            mouse_events:  0;
-            description { state: "default" 0.0;
-               rel1.to: "base";
-               rel2.to: "base";
-               image {
-                  normal: "shelf_inset.png";
-                  border: 7 7 7 7;
-                  middle: 0;
+               rel2 {
+                  offset: -3 -1;
+                  to_y: "elm.swallow.bar";
                }
-               fill.smooth : 0;
             }
-         }
-         part { name: "icon.dragable.area";
-           type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               rel1.to: "base";
-               rel2.to: "base";
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel2.offset: -4 -1;
             }
          }
-         part { name: "elm.text.left";
-            type: TEXT;
+         part { name: "units";
             mouse_events: 0;
-            scale: 1;
             description { state: "default" 0.0;
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.05 0.5;
-                  min: 1 1;
+               visible: 0;
+               rel1 {
+                  to_x: "elm.units";
+                  offset: 0 5;
                }
-            }
-         }
-         part { name: "elm.text.center";
-            type: TEXT;
-            mouse_events: 0;
-            scale: 1;
-            description { state: "default" 0.0;
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.5 0.5;
-                  min: 1 1;
+               rel2 {
+                  to_x: "elm.units";
+                  offset: 5 -3;
                }
+               image {
+                  normal: "sl_units.png";
+                  border: 0 5 3 8;
+               }
+               fill.smooth: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "elm.text.right";
+         part { name: "elm.units";
             type: TEXT;
             mouse_events: 0;
             scale: 1;
             description { state: "default" 0.0;
+               visible: 0;
+               fixed: 1 1;
+               align: 1.0 0.5;
+               rel1.to_x: "elm.swallow.end";
+               rel1.relative: 0.0 0.0;
+               rel1.offset: 0 8;
+               rel2.to_x: "elm.swallow.end";
+               rel2.relative: 0.0 1.0;
+               rel2.offset: 0 -9;
                color: 0 0 0 255;
                text {
                   font: "Sans,Edje-Vera";
                   size: 10;
-                  align: 0.95 0.5;
-                  min: 1 1;
+                  min: 0 0;
+                  align: 0.0 0.5;
                }
             }
-         }
-         part { name: "bar";
-            type: RECT;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "base";
-               rel1.offset: 0 2;
-               rel2 {
-                  relative: 0 1;
-                  offset: 3 -3;
-                  to_x: "elm.drag_button_base";
-                  to_y: "base";
-               }
-               color: 0 0 0 180;
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               fixed: 1 1;
+               visible: 1;
+               text.min: 1 1;
+               rel1.offset: -5 0;
+               rel2.offset: -5 -1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 128 128 128;
+               visible: 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
             }
          }
-         part { name: "elm.drag_button_base";
-            type: SWALLOW;
+         part { name: "elm.dragable.slider";
+            type: GROUP;
+            source: "elm/slider/horizontal/indicator/default";
             mouse_events: 1;
+            repeat_events: 1;
             scale: 1;
+            dragable {
+               x: 1 1 0;
+               y: 0 0 0;
+               confine: "bg";
+            }
             description { state: "default" 0.0;
+               min: 0 24;
+               max: 0 24;
                fixed: 1 1;
-               min: 50 25;
-               align: 0.5 0.5;
-               rel1.to: "icon.dragable.area";
+               rel1 {
+                  relative: 0.5 0.0;
+                  to_x: "bg";
+               }
                rel2 {
-                  relative: 0.0 1.0;
-                  to: "icon.dragable.area";
+                  relative: 0.5 1.0;
+                  to_x: "bg";
                }
-            }
-            dragable {
-               confine: "icon.dragable.area";
-               x: 1 1 0;
-               y: 0 0 0;
+               color: 255 0 0 100;
             }
          }
-         part { name: "elm.drag_button";
+          part { name: "disabler";
             type: RECT;
-            mouse_events: 1;
             description { state: "default" 0.0;
-               min: 50 25;
-               color: 255 255 255 0;
-               rel1.to_x: "elm.drag_button_base";
-               rel1.to_y: "icon.dragable.area";
-               rel2.to_x: "elm.drag_button_base";
-               rel2.to_y: "icon.dragable.area";
+               color: 0 0 0 0;
+               visible: 0;
             }
-            dragable {
-               events: "elm.drag_button_base";
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "button0";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "button2";
-               rel1.offset: -4 -4;
-               rel2.to: "button2";
-               rel2.offset: 3 3;
-               image {
-                  normal: "bt_bases.png";
-                  border: 11 11 11 11;
-                  middle: SOLID;
-               }
-               color: 255 255 255 128;
-            }
+      }
+      programs {
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.text";
          }
-         part { name: "button2";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "elm.drag_button";
-               rel2.to: "elm.drag_button";
-               image {
-                  normal: "bt_basew.png";
-                  border: 7 7 7 7;
-                  middle: SOLID;
-               }
-               color: 255 255 255 210;
-            }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.text";
          }
-         part { name: "button3";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1.to: "button2";
-               rel2.to: "button2";
-               rel2.relative: 1.0 0.5;
-               image {
-                  normal: "bt_hilightw.png";
-                  border: 4 4 4 0;
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.icon";
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.icon";
+         }
+          program { name: "end_show";
+            signal: "elm,state,end,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "end_hide";
+            signal: "elm,state,end,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "units_show";
+            signal: "elm,state,units,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.units";
+            target: "units";
+         }
+         program { name: "units_hide";
+            signal: "elm,state,units,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.units";
+            target: "units";
+         }
+         program { name: "invert_on";
+            signal: "elm,state,inverted,on";
+            source: "elm";
+            action:  STATE_SET "inverted" 0.0;
+            target: "level";
+            target: "level2";
+         }
+         program { name: "invert_off";
+            signal: "elm,state,inverted,off";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "level";
+            target: "level2";
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+//            target: "button0";
+            target: "disabler";
+            after: "disable_text";
+            after: "disable_ind";
+         }
+
+         program { name: "disable_ind";
+            action: SIGNAL_EMIT "elm.dragable.slider:elm,state,disabled" "elm";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                  set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                  set_state(PART:"elm.text", "disabled", 0.0);
+
+               get_state(PART:"elm.units", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                  set_state(PART:"elm.units", "disabled_visible", 0.0);
+               else
+                  set_state(PART:"elm.units", "disabled", 0.0);
+
+               get_state(PART:"level2", st, 30, vl);
+               if (!strcmp(st, "inverted"))
+               {
+                  set_state(PART:"level", "disabled_inverted", 0.0);
+                  set_state(PART:"level2", "disabled_inverted", 0.0);
+               }
+               else
+               {
+                  set_state(PART:"level", "disabled", 0.0);
+                  set_state(PART:"level2", "disabled", 0.0);
                }
-               color: 255 255 255 190;
             }
          }
-         part { name: "elm.text.indicator";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               rel1 {
-                  to: "elm.drag_button";
-                  offset: 5 0;
-               }
-               rel2 {
-                  to: "elm.drag_button";
-                  offset: -5 0;
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            target: "button0";
+            target: "disabler";
+            after: "enable_text";
+            after: "enable_ind";
+         }
+
+         program { name: "enable_ind";
+            action: SIGNAL_EMIT "elm.dragable.slider:elm,state,enabled" "elm";
+         }
+
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                  set_state(PART:"elm.text", "visible", 0.0);
+               else
+                  set_state(PART:"elm.text", "default", 0.0);
+
+               get_state(PART:"elm.units", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                  set_state(PART:"elm.units", "visible", 0.0);
+               else
+                  set_state(PART:"elm.units", "default", 0.0);
+
+               get_state(PART:"level2", st, 30, vl);
+               if (!strcmp(st, "disabled_inverted"))
+               {
+                  set_state(PART:"level", "inverted", 0.0);
+                  set_state(PART:"level2", "inverted", 0.0);
                }
-               color: 0 0 0 255;
-               text {
-                  font: "Sans,Edje-Vera";
-                  size: 10;
-                  align: 0.5 0.5;
-                  min: 0 1;
+               else
+               {
+                  set_state(PART:"level", "default", 0.0);
+                  set_state(PART:"level2", "default", 0.0);
                }
             }
          }
       }
-      programs {
-        program { name: "elm.drag_button,mouse,up";
-           signal: "mouse,up,1";
-           source: "elm.drag_button";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,up" "";
-        }
-        program { name: "elm.drag_button,mouse,down";
-           signal: "mouse,down,1";
-           source: "elm.drag_button";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,down" "";
-        }
-        program { name: "elm.drag_button,mouse,move";
-           signal: "mouse,move";
-           source: "elm.drag_button_base";
-            action: SIGNAL_EMIT "elm.drag_button,mouse,move" "";
-        }
-      }
    }
 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/genlist/item/default/default";
-      data.item: "stacking" "above";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
+   group { name: "elm/slider/vertical/default";
       images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
+         image: "slv_bg.png" COMP;
+         image: "slv_bg_over.png" COMP;
+
+         image: "slv_units.png" COMP;
       }
       parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
+         part { name: "base";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               max: 6 99999;
+               min: 6 0;
+               rel1 { to: "bg";
+                  offset: 1 0;
+               }
+               rel2 { to: "bg";
+                  offset: -2 -1;
+               }
+               image.normal: "slv_bg.png";
+               fill.smooth: 0;
             }
          }
-         part {
-            name: "base_sh";
+         part { name: "level";
+            type: RECT;
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
+            description { state: "default" 0.0;
                fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
+               rel1.to: "base";
                rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
+                  to_x: "base";
+                  to_y: "elm.dragable.slider";
+                  relative: 1.0 0.5;
                }
-               image {
-                  normal: "ilist_item_shadow.png";
+               color: 255 0 0 200;
+            }
+            description { state: "inverted" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 100;
+            }
+            description { state: "disabled_inverted" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "level2";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               visible: 0;
+               rel1 {
+                  to_x: "base";
+                  to_y: "elm.dragable.slider";
+                  relative: 0.0 0.5;
                }
-               fill.smooth: 0;
+               rel2.to: "base";
+               color: 255 0 0 200;
+            }
+            description { state: "inverted" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 100;
+            }
+            description { state: "disabled_inverted" 0.0;
+               inherit: "default" 0.0;
+               color: 255 0 0 100;
+               visible: 1;
             }
          }
          part {
-            name: "base";
+            name: "base_over";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel1.offset: -1 -1;
+               rel2.to: "base";
+               rel2.offset: 0 0;
                image {
-                  normal: "ilist_1.png";
-                  border: 2 2 2 2;
+                  normal: "slv_bg_over.png";
+                  border: 3 3 3 3;
                }
                fill.smooth: 0;
             }
          }
          part { name: "bg";
-            clip_to: "disclip";
+            type: RECT;
             mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
-               }
-               image.middle: SOLID;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
+               rel1.to: "elm.swallow.bar";
+               rel2.to: "elm.swallow.bar";
+               color: 0 0 0 0;
             }
          }
-         part { name: "elm.swallow.pad";
+         part { name: "elm.swallow.bar";
             type: SWALLOW;
+            scale: 1;
             description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
+               min: 24 48;
+               max: 24 9999;
+               align: 0.5 1.0;
                rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
+                  to_y: "elm.text";
+                  relative: 0.0 1.0;
+                  offset: 0 10;
                }
                rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+                  to_y: "elm.units";
+                  relative: 1.0 0.0;
+                  offset: -1 -8;
                }
             }
          }
          part { name: "elm.swallow.icon";
-            clip_to: "disclip";
             type: SWALLOW;
             description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
+               visible: 0;
+               align: 0.5 0.0;
                rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
+                  offset: 0 4;
+                  to_x: "elm.swallow.bar";
                }
                rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+                  offset: -1 3;
+                  relative: 1.0 0.0;
+                  to_x: "elm.swallow.bar";
                }
             }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
                aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
+               aspect_preference: HORIZONTAL;
+               rel2.offset: -1 4;
             }
          }
          part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
+            type: TEXT;
+            mouse_events: 0;
             scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               fixed: 0 1;
+               align: 0.5 0.0;
+               rel1.to_y: "elm.swallow.icon";
+               rel1.relative: 0.0 1.0;
+               rel1.offset: 0 -1;
+               rel2.to_y: "elm.swallow.icon";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -1 -1;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  min: 0 0;
+                  align: 0.5 0.0;
+               }
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+               rel1.offset: 4 0;
+               rel2.offset: -5 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 128 128 128;
+               visible: 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
+            }
+         }
+         part {
+            name: "elm.swallow.end";
+            type: SWALLOW;
             description {
                state: "default" 0.0;
-//               min: 16 16;
+               visible: 0;
+               align: 0.5 1.0;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   0 4;
+                  offset: 0 -4;
+                  relative: 0.0 1.0;
+                  to_x: "elm.swallow.bar";
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
+                  offset: -1 -3;
+                  to_x: "elm.swallow.bar";
                }
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+               visible: 1;
+               aspect: 1.0 1.0;
+               aspect_preference: HORIZONTAL;
+               rel2.offset: -1 -4;
             }
          }
-         part { name: "fg1";
-            clip_to: "disclip";
+         part { name: "units";
             mouse_events: 0;
             description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+               rel1 {
+                  to: "elm.units";
+                  offset: -8 0;
+               }
+               rel2 {
+                  to: "elm.units";
+                  offset: 7 8;
+               }
+               image {
+                  normal: "slv_units.png";
+                  border: 8 8 0 9;
                }
+               fill.smooth: 0;
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
             }
          }
-         part { name: "fg2";
-            clip_to: "disclip";
+         part { name: "elm.units";
+            type: TEXT;
             mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+               fixed: 1 1;
+               align: 0.5 1.0;
+               rel1.relative: 0.0 0.0;
+               rel1.to_y: "elm.swallow.end";
+               rel1.offset: 8 0;
+               rel2.relative: 1.0 0.0;
+               rel2.to_y: "elm.swallow.end";
+               rel2.offset: -9 0;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  min: 0 0;
+                  align: 0.5 0.0;
                }
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
+               fixed: 1 1;
                visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "disclip";
-            type: RECT;
-            description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               text.min: 1 1;
+               rel1.offset: 8 -9;
+               rel2.offset: -9 -9;
             }
             description { state: "disabled" 0.0;
                inherit: "default" 0.0;
-               color: 255 255 255 64;
+               color:  0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               fixed: 1 1;
+               visible: 1;
+               text.min: 1 1;
+               rel1.offset: 8 -9;
+               rel2.offset: -9 -9;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
             }
          }
-      }
+         part { name: "elm.dragable.slider";
+            type: GROUP;
+            source: "elm/slider/vertical/indicator/default";
+            mouse_events: 1;
+            repeat_events: 1;
+            scale: 1;
+            dragable {
+               x: 0 0 0;
+               y: 1 1 0;
+               confine: "bg";
+            }
+            description { state: "default" 0.0;
+               min: 24 0;
+               max: 24 0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 0.5  0.0;
+                  to_y: "bg";
+               }
+               rel2 {
+                  relative: 0.5  1.0;
+                  to_y: "bg";
+               }
+               color: 0 0 0 0;
+            }
+         }
+              part { name: "disabler";
+                type: RECT;
+                description { state: "default" 0.0;
+                   color: 0 0 0 0;
+                   visible: 0;
+                }
+                description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                }
+             }
+          }
+
       programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.text";
          }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+            target: "elm.text";
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.icon";
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.icon";
+         }
+         program { name: "end_show";
+            signal: "elm,state,end,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "end_hide";
+            signal: "elm,state,end,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.end";
+         }
+         program { name: "units_show";
+            signal: "elm,state,units,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.units";
+            target: "units";
+         }
+         program { name: "units_hide";
+            signal: "elm,state,units,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.units";
+            target: "units";
+         }
+         program { name: "invert_on";
+            signal: "elm,state,inverted,on";
+            source: "elm";
+            action:  STATE_SET "inverted" 0.0;
+            target: "level";
+            target: "level2";
+         }
+         program { name: "invert_off";
+            signal: "elm,state,inverted,off";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "level";
+            target: "level2";
          }
          program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+            name:   "go_disabled";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+//            target: "button0";
+            target: "disabler";
+            after: "disable_text";
+            after: "disable_ind";
+         }
+
+         program { name: "disable_ind";
+            action: SIGNAL_EMIT "elm.dragable.slider:elm,state,disabled" "elm";
+         }
+
+         program { name: "disable_text";
+            script {
+            new st[31];
+            new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                  set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                  set_state(PART:"elm.text", "disabled", 0.0);
+
+               get_state(PART:"elm.units", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                  set_state(PART:"elm.units", "disabled_visible", 0.0);
+               else
+                  set_state(PART:"elm.units", "disabled", 0.0);
+
+               get_state(PART:"level2", st, 30, vl);
+               if (!strcmp(st, "inverted"))
+               {
+                  set_state(PART:"level", "disabled_inverted", 0.0);
+                  set_state(PART:"level2", "disabled_inverted", 0.0);
+               }
+               else
+               {
+                  set_state(PART:"level", "disabled", 0.0);
+                  set_state(PART:"level2", "disabled", 0.0);
+               }
+            }
+         }
+
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+//            target: "button0";
+            target: "disabler";
+            after: "enable_text";
+            after: "enable_ind";
+         }
+
+         program { name: "enable_ind";
+            action: SIGNAL_EMIT "elm.dragable.slider:elm,state,enabled" "elm";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                  set_state(PART:"elm.text", "visible", 0.0);
+               else
+                  set_state(PART:"elm.text", "default", 0.0);
+
+               get_state(PART:"elm.units", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                  set_state(PART:"elm.units", "visible", 0.0);
+               else
+                  set_state(PART:"elm.units", "default", 0.0);
+
+               get_state(PART:"level2", st, 30, vl);
+               if (!strcmp(st, "disabled_inverted"))
+               {
+                  set_state(PART:"level", "inverted", 0.0);
+                  set_state(PART:"level2", "inverted", 0.0);
+               }
+               else
+               {
+                  set_state(PART:"level", "default", 0.0);
+                  set_state(PART:"level2", "default", 0.0);
+               }
+            }
+         }
+      }
+   }
+   group { name: "elm/slider/horizontal/indicator/default";
+           alias: "elm/slider/horizontal/indicator/disabled";
+           alias: "elm/slider/vertical/indicator/default";
+           alias: "elm/slider/vertical/indicator/disabled";
+      images {
+         image: "sl_bt_0.png" COMP;
+         image: "sl_bt_1.png" COMP;
+         image: "sl_bt_2.png" COMP;
+         image: "sl_bt_3.png" COMP;
+         image: "sl_bt2_0_0.png" COMP;
+         image: "sl_bt2_0_1.png" COMP;
+         image: "sl_bt2_0_2.png" COMP;
+         image: "sl_bt2_1.png" COMP;
+         image: "sl_bt2_2.png" COMP;
+      }
+      script {
+         public value_hide = 0;
+         public set_value_show() {
+            set_int(value_hide, 0);
+         }
+         public set_value_hide() {
+            set_int(value_hide, 1);
+         }
+         public thumb_down() {
+            if (get_int(value_hide) == 1) {
+               set_state(PART:"elm.indicator", "default", 0.0);
+               set_state(PART:"button3", "default", 0.0);
+               set_state(PART:"button4", "default", 0.0);
+               set_state(PART:"button5", "default", 0.0);
+               set_state(PART:"button6", "default", 0.0);
+               set_state(PART:"button7", "default", 0.0);
+            } else {
+               set_state(PART:"elm.indicator", "visible", 0.0);
+               set_state(PART:"button3", "visible", 0.0);
+               set_state(PART:"button4", "visible", 0.0);
+               set_state(PART:"button5", "visible", 0.0);
+               set_state(PART:"button6", "visible", 0.0);
+               set_state(PART:"button7", "visible", 0.0);
+            }
          }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+         public thumb_up() {
+            set_state(PART:"elm.indicator", "default", 0.0);
+            set_state(PART:"button3", "default", 0.0);
+            set_state(PART:"button4", "default", 0.0);
+            set_state(PART:"button5", "default", 0.0);
+            set_state(PART:"button6", "default", 0.0);
+            set_state(PART:"button7", "default", 0.0);
          }
       }
-   }
-   group { name: "elm/genlist/item/group_index/default";
-      alias: "elm/genlist/item_odd/group_index/default";
-      data.item: "stacking" "above";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
-         image: "group_index.png" COMP;
-      }
       parts {
-         part {
-            name: "event";
+         part { name: "button_events";
             type: RECT;
-            repeat_events: 0;
-            description {
-               state: "default" 0.0;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 16 16;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
                color: 0 0 0 0;
             }
          }
-         part {
-            name: "base_sh";
+         part { name: "button0";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
+            description { state: "default" 0.0;
                fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
+               max: 17 999;
+               min: 17 24;
+               image {
+                  normal: "sl_bt_0.png";
+                  border: 5 5 5 10;
+               }
+               fill.smooth: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               image {
+                  normal: "sl_bt_3.png";
+                  border: 5 5 5 10;
                }
+            }
+         }
+         part { name: "button1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "button0";
                rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
+                  to: "button0";
+                  relative: 1.0 0.5;
+                  offset: -1 -5;
                }
                image {
-                  normal: "ilist_item_shadow.png";
+                  normal: "sl_bt_1.png";
+                  border: 5 5 5 0;
                }
-               fill.smooth: 0;
             }
          }
-         part {
-            name: "base";
+         part { name: "button2";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
+            description { state: "default" 0.0;
+               rel1.to: "button0";
+               rel2.to: "button0";
                image {
-                  normal: "group_index.png";
-                  border: 2 2 2 2;
+                  normal: "sl_bt_2.png";
+                  border: 5 5 5 10;
                }
                fill.smooth: 0;
             }
          }
-         part { name: "bg";
-            clip_to: "disclip";
+         part { name: "button3";
             mouse_events: 0;
             description { state: "default" 0.0;
+               fixed: 1 1;
                visible: 0;
-               color: 255 255 255 0;
+               min: 8 32;
+               align: 1.0 0.5;
                rel1 {
+                  to_x: "elm.indicator";
+                  to_y: "button4";
                   relative: 0.0 0.0;
-                  offset: -5 -5;
+                  offset: -7 0;
                }
                rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
+                  to: "button4";
+                  relative: 0.0 1.0;
+                  offset: -1 -1;
                }
                image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+                  normal: "sl_bt2_0_0.png";
+                  border: 6 0 6 12;
                }
-               image.middle: SOLID;
+               fill.smooth: 0;
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
             }
          }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
+         part { name: "button4";
+            mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
+               visible: 0;
+               max: 15 999;
+               min: 15 32;
                rel1 {
-                  relative: 0.0  0.0;
-                  offset: 4 4;
+                  to_x: "button0";
+                  to_y: "elm.indicator";
+                  offset: 0 0;
                }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset: 4 -5;
+               rel2.to: "button0";
+               image {
+                  normal: "sl_bt2_0_1.png";
+                  border: 0 0 6 12;
                }
+               fill.smooth: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
+         part { name: "button5";
+            mouse_events: 0;
             description { state: "default" 0.0;
-               fixed: 1 0;
+               fixed: 1 1;
+               visible: 0;
+               min: 8 32;
                align: 0.0 0.5;
                rel1 {
-                  to_x: "elm.swallow.pad";
+                  to: "button4";
                   relative: 1.0 0.0;
-                  offset: -1 4;
+                  offset: 0 0;
                }
                rel2 {
-                  to_x: "elm.swallow.pad";
+                  to_x: "elm.indicator";
+                  to_y: "button4";
                   relative: 1.0 1.0;
-                  offset: -1 -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0 0.0;
-                  offset: -5 4;
+                  offset: 6 -1;
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: -5 -5;
+               image {
+                  normal: "sl_bt2_0_2.png";
+                  border: 0 6 6 12;
                }
+               fill.smooth: 0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
             }
          }
-         part { name: "elm.text";
-            clip_to: "disclip";
+         part { name: "elm.indicator";
             type: TEXT;
-            effect: SOFT_SHADOW;
             mouse_events: 0;
+            effect: SOFT_SHADOW;
             scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
+            description { state: "default" 0.0;
+               visible: 0;
+               fixed: 1 1;
+               align: 0.5 1.0;
                rel1 {
-                  to_x: "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset: 0 4;
+                  to: "button0";
+                  relative: 0.0 -0.25;
+                  offset: 0 0;
                }
                rel2 {
-                  to_x: "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset: -1 -5;
+                  to_x: "button0";
+                  relative: 1.0 -0.25;
+                  offset: -1 0;
                }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
                text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: -1.0 0.5;
-                  text_class: "list_item";
+                  font:     "Sans,Edje-Vera";
+                  size:     10;
+                  min:      0 0;
+                  align:    0.5 0.5;
                }
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+               visible: 1;
+               text.min: 1 1;
+               rel1.offset: 0 -1;
+               rel2.offset: -1 -1;
             }
          }
-         part { name: "fg1";
-            clip_to: "disclip";
+         part { name: "button6";
             mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "button3";
+               rel2 {
+                  to: "button5";
+                  relative: 1.0 0.3;
+                  offset: -1 -1;
+               }
                image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+                  normal: "sl_bt2_1.png";
+                  border: 5 5 5 0;
                }
+               fill.smooth: 0;
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
             }
          }
-         part { name: "fg2";
-            clip_to: "disclip";
+         part { name: "button7";
             mouse_events: 0;
             description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               rel1.to: "button3";
+               rel2.to: "button5";
                image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+                  normal: "sl_bt2_2.png";
+                  border: 5 5 5 0;
+                  middle: 0;
                }
+               fill.smooth: 0;
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
             }
          }
-         part { name: "disclip";
-            type: RECT;
-            description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+      }
+      programs {
+         program { name: "set_val_show";
+            signal: "elm,state,val,show";
+            source: "elm";
+            script {
+               set_value_show();
             }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 64;
+         }
+         program { name: "set_val_hide";
+            signal: "elm,state,val,hide";
+            source: "elm";
+            script {
+               set_value_hide();
             }
          }
-      }
-      programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
+         program { name: "val_show";
+            signal: "mouse,down,*";
+            source: "button_events";
+            script {
+               thumb_down();
+            }
+
          }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+         program { name: "val_hide";
+            signal: "mouse,up,*";
+            source: "button_events";
+            script {
+               thumb_up();
+            }
          }
          program {
             name:    "go_disabled";
             signal:  "elm,state,disabled";
             source:  "elm";
             action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+            target:  "button0";
          }
          program {
             name:    "go_enabled";
             signal:  "elm,state,enabled";
             source:  "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+            target:  "button0";
          }
       }
    }
-   group { name: "elm/genlist/item_compress/message/default";
-      data.item: "stacking" "above";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.title.1 elm.title.2 elm.text";
-//      data.item: "icons" "elm.swallow.icon elm.swallow.end";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
+
+
+////////////////////////////////////////////////////////////////////////////////
+// actionslider
+////////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/actionslider/base/default";
+
       images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
+         image: "shelf_inset.png" COMP;
          image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
-      }
-      styles {
-        style { name: "genlist_textblock_style";
-          base: "font=Sans font_size=10 color=#000 wrap=char text_class=list_item";
-          tag:  "br" "\n";
-          tag:  "ps" "ps";
-          tag:  "tab" "\t";
-        }
-        style { name: "genlist_textblock_style2";
-          base: "font=Sans font_size=10 color=#fff wrap=char text_class=list_item";
-          tag:  "br" "\n";
-          tag:  "ps" "ps";
-          tag:  "tab" "\t";
-        }
+         image: "bt_bases.png" COMP;
+         image: "bt_basew.png" COMP;
+         image: "bt_hilightw.png" COMP;
       }
-     parts {
+
+      parts {
          part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
+            name: "base";
+            mouse_events: 0;
             description {
                state: "default" 0.0;
-               color: 0 0 0 0;
+               min: 75 25;
+               rel1.offset: 1 1;
+               rel2.offset: -2 -2;
+               image {
+                  normal: "ilist_1.png";
+                  border: 2 2 2 2;
+               }
+               fill.smooth: 0;
+            }
+         }
+         part { name: "conf_over";
+            mouse_events:  0;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               image {
+                  normal: "shelf_inset.png";
+                  border: 7 7 7 7;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "icon.dragable.area";
+           type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "base";
+               rel2.to: "base";
+            }
+         }
+         part { name: "elm.text.left";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.05 0.5;
+                  min: 1 1;
+               }
+            }
+         }
+         part { name: "elm.text.center";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.5 0.5;
+                  min: 1 1;
+               }
+            }
+         }
+         part { name: "elm.text.right";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.95 0.5;
+                  min: 1 1;
+               }
+            }
+         }
+         part { name: "elm.drag_button_base";
+            type: SWALLOW;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 50 25;
+               align: 0.5 0.5;
+               rel1.to: "icon.dragable.area";
+               rel2 {
+                  relative: 0.0 1.0;
+                  to: "icon.dragable.area";
+               }
+            }
+            dragable {
+               confine: "icon.dragable.area";
+               x: 1 1 0;
+               y: 0 0 0;
+            }
+         }
+         part { name: "elm.drag_button";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               min: 50 25;
+               color: 255 255 255 0;
+               rel1.to_x: "elm.drag_button_base";
+               rel1.to_y: "icon.dragable.area";
+               rel2.to_x: "elm.drag_button_base";
+               rel2.to_y: "icon.dragable.area";
+            }
+            dragable {
+               events: "elm.drag_button_base";
+            }
+         }
+         part { name: "button0";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "button2";
+               rel1.offset: -4 -4;
+               rel2.to: "button2";
+               rel2.offset: 3 3;
+               image {
+                  normal: "bt_bases.png";
+                  border: 11 11 11 11;
+                  middle: SOLID;
+               }
+               color: 255 255 255 128;
+            }
+         }
+         part { name: "button2";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.drag_button";
+               rel2.to: "elm.drag_button";
+               image {
+                  normal: "bt_basew.png";
+                  border: 7 7 7 7;
+                  middle: SOLID;
+               }
+               color: 255 255 255 210;
             }
          }
-         part {
-            name: "base_sh";
+         part { name: "button3";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
+            description { state: "default" 0.0;
+               rel1.to: "button2";
+               rel2.to: "button2";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilightw.png";
+                  border: 4 4 4 0;
+               }
+               color: 255 255 255 190;
+            }
+         }
+         part { name: "elm.text.indicator";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description { state: "default" 0.0;
                rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
+                  to: "elm.drag_button";
+                  offset: 5 0;
                }
                rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
+                  to: "elm.drag_button";
+                  offset: -5 0;
                }
-               image {
-                  normal: "ilist_item_shadow.png";
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.5 0.5;
+                  min: 0 1;
                }
-               fill.smooth: 0;
             }
          }
+      }
+      programs {
+         program { name: "elm.drag_button,mouse,up";
+            signal: "mouse,up,1";
+            source: "elm.drag_button";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,up" "";
+         }
+         program { name: "elm.drag_button,mouse,down";
+            signal: "mouse,down,1";
+            source: "elm.drag_button";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,down" "";
+         }
+         program { name: "elm.drag_button,mouse,move";
+            signal: "mouse,move";
+            source: "elm.drag_button_base";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,move" "";
+         }
+      }
+   }
+
+   group { name: "elm/actionslider/base/bar";
+
+      images {
+         image: "shelf_inset.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "bt_bases.png" COMP;
+         image: "bt_basew.png" COMP;
+         image: "bt_hilightw.png" COMP;
+      }
+
+      parts {
          part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
+               min: 150 30;
+               rel1.offset: 1 1;
+               rel2.offset: -2 -2;
                image {
                   normal: "ilist_1.png";
                   border: 2 2 2 2;
@@ -16553,278 +15623,297 @@ collections {
                fill.smooth: 0;
             }
          }
-         part { name: "bg";
-            clip_to: "disclip";
-            mouse_events: 0;
+         part { name: "conf_over";
+            mouse_events:  0;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
+               rel1.to: "base";
+               rel2.to: "base";
                image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+                  normal: "shelf_inset.png";
+                  border: 7 7 7 7;
+                  middle: 0;
                }
-               image.middle: SOLID;
+               fill.smooth : 0;
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
+         }
+         part { name: "icon.dragable.area";
+           type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to: "base";
+               rel2.to: "base";
             }
          }
-         part { name: "elm.title.1";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
+         part { name: "elm.text.left";
+            type: TEXT;
+            mouse_events: 0;
             scale: 1;
-            description {
-               state: "default" 0.0;
-               fixed: 0 1;
-//               min: 16 16;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  relative: 1.0  0.0;
-                  offset:   -5 4;
-               }
+            description { state: "default" 0.0;
                color: 0 0 0 255;
-               color3: 0 0 0 0;
-               align: 0.0 0.0;
                text {
-                  font: "Sans";
+                  font: "Sans,Edje-Vera";
                   size: 10;
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
-                  text_class: "list_item";
+                  align: 0.05 0.5;
+                  min: 1 1;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
          }
-         part { name: "elm.title.2";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
+         part { name: "elm.text.center";
+            type: TEXT;
+            mouse_events: 0;
             scale: 1;
-            description {
-               state: "default" 0.0;
-               fixed: 0 1;
-//               min: 16 16;
-               rel1 {
-                  to_y:     "elm.title.1";
-                  relative: 0.0  1.0;
-                  offset:   4 0;
-               }
-               rel2 {
-                  to_y:     "elm.title.1";
-                  relative: 1.0  1.0;
-                  offset:   -5 0;
-               }
+            description { state: "default" 0.0;
                color: 0 0 0 255;
-               color3: 0 0 0 0;
-               align: 0.0 0.0;
                text {
-                  font: "Sans";
+                  font: "Sans,Edje-Vera";
                   size: 10;
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
-                  text_class: "list_item";
+                  align: 0.5 0.5;
+                  min: 1 1;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
          }
-         part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXTBLOCK;
-            mouse_events:   0;
+         part { name: "elm.text.right";
+            type: TEXT;
+            mouse_events: 0;
             scale: 1;
-            description {
-               state: "default" 0.0;
-//               fixed: 0 1;
-//               min: 16 16;
-               rel1 {
-                  to_y:     "elm.title.2";
-                  relative: 0.0  1.0;
-                  offset:   4 0;
+            description { state: "default" 0.0;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.95 0.5;
+                  min: 1 1;
                }
+            }
+         }
+         part { name: "bar";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel1.offset: 0 2;
                rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5 -5;
+                  relative: 0 1;
+                  offset: 3 -3;
+                  to_x: "elm.drag_button_base";
+                  to_y: "base";
                }
-               align: 0.0 0.0;
-               text {
-                  style: "genlist_textblock_style";
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
+               color: 0 0 0 180;
+            }
+         }
+         part { name: "elm.drag_button_base";
+            type: SWALLOW;
+            mouse_events: 1;
+            scale: 1;
+            description { state: "default" 0.0;
+               fixed: 1 1;
+               min: 50 25;
+               align: 0.5 0.5;
+               rel1.to: "icon.dragable.area";
+               rel2 {
+                  relative: 0.0 1.0;
+                  to: "icon.dragable.area";
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "genlist_textblock_style2";
-               }
+            dragable {
+               confine: "icon.dragable.area";
+               x: 1 1 0;
+               y: 0 0 0;
             }
          }
-         part { name: "fg1";
-            clip_to: "disclip";
-            mouse_events: 0;
+         part { name: "elm.drag_button";
+            type: RECT;
+            mouse_events: 1;
             description { state: "default" 0.0;
-               visible: 0;
+               min: 50 25;
                color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+               rel1.to_x: "elm.drag_button_base";
+               rel1.to_y: "icon.dragable.area";
+               rel2.to_x: "elm.drag_button_base";
+               rel2.to_y: "icon.dragable.area";
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+            dragable {
+               events: "elm.drag_button_base";
             }
          }
-         part { name: "fg2";
-            clip_to: "disclip";
+         part { name: "button0";
             mouse_events: 0;
             description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               rel1.to: "button2";
+               rel1.offset: -4 -4;
+               rel2.to: "button2";
+               rel2.offset: 3 3;
                image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+                  normal: "bt_bases.png";
+                  border: 11 11 11 11;
+                  middle: SOLID;
                }
+               color: 255 255 255 128;
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
+         }
+         part { name: "button2";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "elm.drag_button";
+               rel2.to: "elm.drag_button";
+               image {
+                  normal: "bt_basew.png";
+                  border: 7 7 7 7;
+                  middle: SOLID;
+               }
+               color: 255 255 255 210;
             }
          }
-         part { name: "disclip";
-            type: RECT;
+         part { name: "button3";
+            mouse_events: 0;
             description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               rel1.to: "button2";
+               rel2.to: "button2";
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilightw.png";
+                  border: 4 4 4 0;
+               }
+               color: 255 255 255 190;
             }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 64;
+         }
+         part { name: "elm.text.indicator";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1 {
+                  to: "elm.drag_button";
+                  offset: 5 0;
+               }
+               rel2 {
+                  to: "elm.drag_button";
+                  offset: -5 0;
+               }
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  align: 0.5 0.5;
+                  min: 0 1;
+               }
             }
          }
       }
       programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.title.1";
-            target:  "elm.title.2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.title.1";
-            target:  "elm.title.2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+         program { name: "elm.drag_button,mouse,up";
+            signal: "mouse,up,1";
+            source: "elm.drag_button";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,up" "";
          }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+         program { name: "elm.drag_button,mouse,down";
+            signal: "mouse,down,1";
+            source: "elm.drag_button";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,down" "";
          }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+         program { name: "elm.drag_button,mouse,move";
+            signal: "mouse,move";
+            source: "elm.drag_button_base";
+            action: SIGNAL_EMIT "elm.drag_button,mouse,move" "";
          }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/message/default";
-      data.item: "stacking" "below";
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/genlist/item/default/default";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.title.1 elm.title.2 elm.text";
-//      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.text";
+      data.item: "icons" "elm.swallow.icon elm.swallow.end";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
          image: "ilist_2.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
       parts {
-         part { name: "event";
-            type: RECT;
+         part {
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
                color: 0 0 0 0;
             }
          }
+         part { name: "reorder_bg";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -7 -7;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 9 9;
+               }
+               image {
+                  normal: "bt_bases.png";
+                  border: 6 6 6 6;
+               }
+            }
+            description { state: "enabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
          part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -16846,6 +15935,9 @@ collections {
                }
                image.middle: SOLID;
             }
+            description { state: "default" 0.1;
+               inherit: "default" 0.0;
+            }
             description { state: "selected" 0.0;
                inherit: "default" 0.0;
                visible: 1;
@@ -16859,44 +15951,63 @@ collections {
                   offset: 1 1;
                }
             }
+            description {
+               state: "selected" 1.0;
+               inherit: "selected" 0.0;
+            }
+         }
+         part { name: "elm.swallow.pad";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  relative: 0.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
+               }
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
+               }
+               rel2 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
+               }
+            }
          }
-         part { name: "elm.title.1";
+         part { name: "elm.swallow.end";
             clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               fixed: 0 1;
-//               min: 16 16;
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
                rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
                   relative: 1.0  0.0;
-                  offset:   -5 4;
+                  offset:   -5    4;
                }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               align: 0.0 0.0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
-                  text_class: "list_item";
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
          }
-         part { name: "elm.title.2";
+         part { name: "elm.text";
             clip_to: "disclip";
             type:           TEXT;
             effect:         SOFT_SHADOW;
@@ -16904,27 +16015,25 @@ collections {
             scale: 1;
             description {
                state: "default" 0.0;
-               fixed: 0 1;
 //               min: 16 16;
                rel1 {
-                  to_y:     "elm.title.1";
-                  relative: 0.0  1.0;
-                  offset:   4 0;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   0 4;
                }
                rel2 {
-                  to_y:     "elm.title.1";
-                  relative: 1.0  1.0;
-                  offset:   -5 0;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
-               align: 0.0 0.0;
                text {
                   font: "Sans";
                   size: 10;
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: -1.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -16934,39 +16043,6 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXTBLOCK;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               fixed: 0 1;
-//               min: 16 16;
-               rel1 {
-                  to_y:     "elm.title.2";
-                  relative: 0.0  1.0;
-                  offset:   4 0;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5 -5;
-               }
-               align: 0.0 0.0;
-               text {
-                  style: "genlist_textblock_style";
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.0;
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               text {
-                  style: "genlist_textblock_style2";
-               }
-            }
-         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -16986,6 +16062,12 @@ collections {
                visible: 1;
                color: 255 255 255 255;
             }
+            description {
+               state: "selected" 1.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
          }
          part { name: "fg2";
             clip_to: "disclip";
@@ -17005,6 +16087,12 @@ collections {
                visible: 1;
                color: 255 255 255 255;
             }
+            description {
+               state: "selected" 1.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
          }
          part { name: "disclip";
             type: RECT;
@@ -17025,29 +16113,48 @@ collections {
          //   a "check" item named %s went passive
          // default is passive
          program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
             name:    "go_active";
             signal:  "elm,state,selected";
             source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.title.1";
-            target:  "elm.title.2";
-            target:  "elm.text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"base", st, 30, vl);
+               set_state(PART:"bg", "selected", vl);
+               set_state(PART:"fg1", "selected", vl);
+               set_state(PART:"fg2", "selected", vl);
+               set_state(PART:"elm.text", "selected", vl);
+            }
          }
          program {
             name:    "go_passive";
             signal:  "elm,state,unselected";
             source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.title.1";
-            target:  "elm.title.2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"base", st, 30, vl);
+               set_state(PART:"bg", "default", vl);
+               set_state(PART:"fg1", "default", vl);
+               set_state(PART:"fg2", "default", vl);
+               set_state(PART:"elm.text", "default", vl);
+            }
          }
          program {
             name:    "go_disabled";
@@ -17063,10 +16170,26 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
+         program {
+            name:    "go_reorder_disabled";
+            signal:  "elm,state,reorder,disabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "reorder_bg";
+            transition: DECELERATE 0.5;
+         }
+         program {
+            name:    "go_reorder_enabled";
+            signal:  "elm,state,reorder,enabled";
+            source:  "elm";
+            action:  STATE_SET "enabled" 0.0;
+            target:  "reorder_bg";
+            transition: DECELERATE 0.5;
+         }
       }
    }
-   group { name: "elm/genlist/item_compress/default/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/item/group_index/default";
+      alias: "elm/genlist/item_compress/group_index/default";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text";
       data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -17076,14 +16199,14 @@ collections {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
+         image: "group_index.png" COMP;
       }
       parts {
          part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
+            name: "event";
+            type: RECT;
+            repeat_events: 0;
             description {
                state: "default" 0.0;
                color: 0 0 0 0;
@@ -17119,7 +16242,7 @@ collections {
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1.png";
+                  normal: "group_index.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -17166,11 +16289,11 @@ collections {
                align: 0.0 0.5;
                rel1 {
                   relative: 0.0  0.0;
-                  offset:   4    4;
+                  offset: 4 4;
                }
                rel2 {
                   relative: 0.0  1.0;
-                  offset:   4   -5;
+                  offset: 4 -5;
                }
             }
          }
@@ -17182,13 +16305,13 @@ collections {
                align: 0.0 0.5;
                rel1 {
                   to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
+                  relative: 1.0 0.0;
+                  offset: -1 4;
                }
                rel2 {
                   to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+                  relative: 1.0 1.0;
+                  offset: -1 -5;
                }
             }
          }
@@ -17201,42 +16324,42 @@ collections {
                aspect: 1.0 1.0;
                aspect_preference: VERTICAL;
                rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
+                  relative: 1.0 0.0;
+                  offset: -5 4;
                }
                rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
+                  relative: 1.0 1.0;
+                  offset: -5 -5;
                }
             }
          }
          part { name: "elm.text";
             clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            mouse_events: 0;
             scale: 1;
             description {
                state: "default" 0.0;
 //               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
+                  to_x: "elm.swallow.icon";
                   relative: 1.0  0.0;
-                  offset:   0 4;
+                  offset: 0 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
+                  to_x: "elm.swallow.end";
                   relative: 0.0  1.0;
-                  offset:   -1 -5;
+                  offset: -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
                text {
                   font: "Sans";
                   size: 10;
-                  min: 0 1;
-//                  min: 1 1;
-                  align: 0.0 0.5;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: -1.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -17340,22 +16463,38 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/item_odd/default/default";
-      data.item: "stacking" "below";
+   group { name: "elm/genlist/item_compress/message/default";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.title.1 elm.title.2 elm.text";
+//      data.item: "icons" "elm.swallow.icon elm.swallow.end";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
          image: "ilist_2.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
-      parts {
-         part { name: "event";
-            type: RECT;
+      styles {
+        style { name: "genlist_textblock_style";
+          base: "font=Sans font_size=10 color=#000 wrap=char text_class=list_item";
+          tag:  "br" "\n";
+          tag:  "ps" "ps";
+          tag:  "tab" "\t";
+        }
+        style { name: "genlist_textblock_style2";
+          base: "font=Sans font_size=10 color=#fff wrap=char text_class=list_item";
+          tag:  "br" "\n";
+          tag:  "ps" "ps";
+          tag:  "tab" "\t";
+        }
+      }
+     parts {
+         part {
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -17363,16 +16502,50 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -17408,58 +16581,43 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
+         part { name: "elm.title.1";
+            clip_to: "disclip";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               fixed: 0 1;
+//               min: 16 16;
                rel1 {
                   relative: 0.0  0.0;
-                  offset:   4    4;
+                  offset:   4 4;
                }
                rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "elm.swallow.pad";
                   relative: 1.0  0.0;
-                  offset:   -1    4;
+                  offset:   -5 4;
                }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               align: 0.0 0.0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 0 1;
+//                  min: 1 1;
+                  align: 0.0 0.0;
+                  text_class: "list_item";
                }
             }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
-               fixed: 1 0;
-               align:    1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text";
+         part { name: "elm.title.2";
             clip_to: "disclip";
             type:           TEXT;
             effect:         SOFT_SHADOW;
@@ -17467,25 +16625,27 @@ collections {
             scale: 1;
             description {
                state: "default" 0.0;
-//               min:      16 16;
+               fixed: 0 1;
+//               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   0 4;
+                  to_y:     "elm.title.1";
+                  relative: 0.0  1.0;
+                  offset:   4 0;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
+                  to_y:     "elm.title.1";
+                  relative: 1.0  1.0;
+                  offset:   -5 0;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
+               align: 0.0 0.0;
                text {
                   font: "Sans";
                   size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: -1.0 0.5;
+                  min: 0 1;
+//                  min: 1 1;
+                  align: 0.0 0.0;
                   text_class: "list_item";
                }
             }
@@ -17495,6 +16655,39 @@ collections {
                color3: 0 0 0 64;
             }
          }
+         part { name: "elm.text";
+            clip_to: "disclip";
+            type:           TEXTBLOCK;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               fixed: 0 1;
+//               min: 16 16;
+               rel1 {
+                  to_y:     "elm.title.2";
+                  relative: 0.0  1.0;
+                  offset:   4 0;
+               }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5 -5;
+               }
+               align: 0.0 0.0;
+               text {
+                  style: "genlist_textblock_style";
+                  min: 0 1;
+//                  min: 1 1;
+                  align: 0.0 0.0;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               text {
+                  style: "genlist_textblock_style2";
+               }
+            }
+         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -17553,6 +16746,22 @@ collections {
          //   a "check" item named %s went passive
          // default is passive
          program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
             name:    "go_active";
             signal:  "elm,state,selected";
             source:  "elm";
@@ -17560,6 +16769,8 @@ collections {
             target:  "bg";
             target:  "fg1";
             target:  "fg2";
+            target:  "elm.title.1";
+            target:  "elm.title.2";
             target:  "elm.text";
          }
          program {
@@ -17570,6 +16781,8 @@ collections {
             target:  "bg";
             target:  "fg1";
             target:  "fg2";
+            target:  "elm.title.1";
+            target:  "elm.title.2";
             target:  "elm.text";
             transition: LINEAR 0.1;
          }
@@ -17589,8 +16802,8 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/default/default";
-      data.item: "stacking" "below";
+
+   group { name: "elm/genlist/item_compress/default/default";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text";
       data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -17600,11 +16813,14 @@ collections {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
          image: "ilist_2.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
       parts {
-         part { name: "event";
-            type: RECT;
+         part {
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -17612,16 +16828,50 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -17692,10 +16942,10 @@ collections {
          }
          part { name: "elm.swallow.end";
             clip_to: "disclip";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 1 0;
-               align:    1.0 0.5;
+               align: 1.0 0.5;
                aspect: 1.0 1.0;
                aspect_preference: VERTICAL;
                rel1 {
@@ -17716,7 +16966,7 @@ collections {
             scale: 1;
             description {
                state: "default" 0.0;
-//               min:      16 16;
+//               min: 16 16;
                rel1 {
                   to_x:     "elm.swallow.icon";
                   relative: 1.0  0.0;
@@ -17802,6 +17052,22 @@ collections {
          //   a "check" item named %s went passive
          // default is passive
          program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
             name:    "go_active";
             signal:  "elm,state,selected";
             source:  "elm";
@@ -17840,7 +17106,6 @@ collections {
    }
 
    group { name: "elm/genlist/tree/default/default";
-      data.item: "stacking" "above";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text";
       data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -17851,7 +17116,9 @@ collections {
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_1.png" COMP;
+         image: "ilist_2.png" COMP;
          image: "ilist_item_shadow.png" COMP;
+         image: "icon_arrow_left.png" COMP;
          image: "icon_arrow_right.png" COMP;
          image: "icon_arrow_down.png" COMP;
       }
@@ -17888,6 +17155,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
          }
          part {
             name: "base";
@@ -17900,6 +17172,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -17969,10 +17246,18 @@ collections {
                }
                image.normal: "icon_arrow_right.png";
             }
+            description { state: "default" 0.1;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_left.png";
+            }
             description { state: "active" 0.0;
                inherit: "default" 0.0;
                image.normal: "icon_arrow_down.png";
             }
+            description { state: "active" 0.1;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
          }
          part { name: "elm.swallow.icon";
             clip_to: "disclip";
@@ -18104,6 +17389,22 @@ collections {
          //   a "check" item named %s went passive
          // default is passive
          program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
             name:    "go_active";
             signal:  "elm,state,selected";
             source:  "elm";
@@ -18148,15 +17449,47 @@ collections {
             name:    "go_expanded";
             signal:  "elm,state,expanded";
             source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               set_state(PART:"arrow", "active", vl);
+            }
          }
          program {
             name:    "go_contracted";
             signal:  "elm,state,contracted";
             source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               set_state(PART:"arrow", "default", vl);
+            }
+         }
+         program { name: "to_rtl";
+            signal: "edje,state,rtl";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               if (vl == 0.0) {
+                  set_state(PART:"arrow", st, 0.1);
+               }
+            }
+         }
+         program { name: "to_ltr";
+            signal: "edje,state,ltr";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               if (vl == 0.1) {
+                  set_state(PART:"arrow", st, 0.0);
+               }
+            }
          }
       }
    }
@@ -18173,6 +17506,7 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
+         image: "icon_arrow_left.png" COMP;
          image: "icon_arrow_right.png" COMP;
          image: "icon_arrow_down.png" COMP;
       }
@@ -18209,6 +17543,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
          }
          part {
             name: "base";
@@ -18221,6 +17560,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -18290,10 +17634,18 @@ collections {
                }
                image.normal: "icon_arrow_right.png";
             }
+            description { state: "default" 0.1;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_left.png";
+            }
             description { state: "active" 0.0;
                inherit: "default" 0.0;
                image.normal: "icon_arrow_down.png";
             }
+            description { state: "active" 0.1;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
          }
          part { name: "elm.swallow.icon";
             clip_to: "disclip";
@@ -18380,721 +17732,1014 @@ collections {
                   normal: "bt_sm_hilight.png";
                   border: 6 6 6 0;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "fg2";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "fg2";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 64;
+            }
+         }
+      }
+      programs {
+         // signal: elm,state,%s,active
+         //   a "check" item named %s went active
+         // signal: elm,state,%s,passive
+         //   a "check" item named %s went passive
+         // default is passive
+         program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "expand";
+            signal:  "mouse,up,1";
+            source:  "arrow";
+            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+         }
+         program {
+            name:    "go_expanded";
+            signal:  "elm,state,expanded";
+            source:  "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               set_state(PART:"arrow", "active", vl);
+            }
+         }
+         program {
+            name:    "go_contracted";
+            signal:  "elm,state,contracted";
+            source:  "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               set_state(PART:"arrow", "default", vl);
+            }
+         }
+         program { name: "to_rtl";
+            signal: "edje,state,rtl";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               if (vl == 0.0) {
+                  set_state(PART:"arrow", st, 0.1);
+               }
+            }
+         }
+         program { name: "to_ltr";
+            signal: "edje,state,ltr";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow", st, 30, vl);
+               if (vl == 0.1) {
+                  set_state(PART:"arrow", st, 0.0);
+               }
+            }
+         }
+      }
+   }
+   group { name: "elm/genlist/item/default_style/default";
+       styles
+       {
+           style { name: "genlist_style";
+               base: "font=Sans font_size=10 align=left valign=0.5 color=#000 text_class=list_item";
+               tag:  "br" "\n";
+               tag:  "ps" "ps";
+               tag:  "hilight" "+ font=Sans:style=Bold";
+               tag:  "b" "+ font=Sans:style=Bold";
+               tag:  "tab" "\t";
+           }
+           style { name: "genlist_selected_style";
+               base: "font=Sans font_size=10 align=left valign=0.5 color=#fff text_class=list_item";
+               tag:  "br" "\n";
+               tag:  "ps" "ps";
+               tag:  "hilight" "+ font=Sans:style=Bold";
+               tag:  "b" "+ font=Sans:style=Bold";
+               tag:  "tab" "\t";
+           }
+       }
+       data.item: "stacking" "above";
+       data.item: "selectraise" "on";
+       data.item: "labels" "elm.text";
+       data.item: "icons" "elm.swallow.icon elm.swallow.end";
+       data.item: "treesize" "20";
+       images {
+           image: "bt_sm_base1.png" COMP;
+           image: "bt_sm_shine.png" COMP;
+           image: "bt_sm_hilight.png" COMP;
+           image: "ilist_1.png" COMP;
+           image: "ilist_item_shadow.png" COMP;
+       }
+       parts {
+           part {
+               name:           "event";
+               type:           RECT;
+               repeat_events: 1;
+               description {
+                   state: "default" 0.0;
+                   color: 0 0 0 0;
+               }
+           }
+           part {
+               name: "base_sh";
+               mouse_events: 0;
+               description {
+                   state: "default" 0.0;
+                   align: 0.0 0.0;
+                   min: 0 10;
+                   fixed: 1 1;
+                   rel1 {
+                       to: "base";
+                       relative: 0.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "base";
+                       relative: 1.0 1.0;
+                       offset: -1 0;
+                   }
+                   image {
+                       normal: "ilist_item_shadow.png";
+                   }
+                   fill.smooth: 0;
+               }
+           }
+           part {
+               name: "base";
+               mouse_events: 0;
+               description {
+                   state: "default" 0.0;
+                   min: 16 28;
+                   image {
+                       normal: "ilist_1.png";
+                       border: 2 2 2 2;
+                   }
+                   fill.smooth: 0;
+               }
+           }
+           part { name: "bg";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -5 -5;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 4 4;
+                   }
+                   image {
+                       normal: "bt_sm_base1.png";
+                       border: 6 6 6 6;
+                   }
+                   image.middle: SOLID;
+               }
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -2 -2;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 1 1;
+                   }
+               }
+           }
+           part { name: "elm.swallow.pad";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       relative: 0.0  0.0;
+                       offset:   4    4;
+                   }
+                   rel2 {
+                       relative: 0.0  1.0;
+                       offset:   4   -5;
+                   }
+               }
+           }
+           part { name: "elm.swallow.icon";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  0.0;
+                       offset:   -1    4;
+                   }
+                   rel2 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  1.0;
+                       offset:   -1   -5;
+                   }
+               }
+           }
+           part { name: "elm.swallow.end";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 1.0 0.5;
+                   aspect: 1.0 1.0;
+                   aspect_preference: VERTICAL;
+                   rel1 {
+                       relative: 1.0  0.0;
+                       offset:   -5    4;
+                   }
+                   rel2 {
+                       relative: 1.0  1.0;
+                       offset:   -5   -5;
+                   }
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "disclip";
-            type: RECT;
-            description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 64;
-            }
-         }
-      }
-      programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
-      }
-   }
-   group { name: "elm/genlist/tree_odd/default/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
-      }
-      parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-            }
-         }
-         part {
-            name: "base";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_2.png";
-                  border: 2 2 2 2;
+           }
+           part { name: "elm.text";
+               clip_to: "disclip";
+               type: TEXTBLOCK;
+               mouse_events: 0;
+               scale: 1;
+               description {
+                   state: "default" 0.0;
+                   align: 0.0 0.5;
+                   fixed: 0 1;
+                   rel1 {
+                       to_x: "elm.swallow.icon";
+                       to_y: "base";
+                       relative: 1.0  0.5;
+                       offset:   0 4;
+                   }
+                   rel2 {
+                       to_x: "elm.swallow.end";
+                       to_y: "base";
+                       relative: 0.0  0.5;
+                       offset:   -1 -5;
+                   }
+                   text {
+                       style: "genlist_style";
+                       min: 1 1;
+                   }
                }
-               fill.smooth: 0;
-            }
-         }
-         part { name: "bg";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   text {
+                       style: "genlist_selected_style";
+                   }
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
+           }
+           part { name: "fg1";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.relative: 1.0 0.5;
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_hilight.png";
+                       border: 6 6 6 0;
+                   }
                }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-               image.middle: SOLID;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
+           }
+           part { name: "fg2";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_shine.png";
+                       border: 6 6 6 0;
+                   }
+               }
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
+           }
+           part { name: "disclip";
+               type: RECT;
+               description { state: "default" 0.0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
                }
-            }
-         }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 255 255 255 64;
                }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+           }
+       }
+       programs {
+           // signal: elm,state,%s,active
+           //   a "check" item named %s went active
+           // signal: elm,state,%s,passive
+           //   a "check" item named %s went passive
+           // default is passive
+           program {
+               name:    "go_active";
+               signal:  "elm,state,selected";
+               source:  "elm";
+               action:  STATE_SET "selected" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+           }
+           program {
+               name:    "go_passive";
+               signal:  "elm,state,unselected";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+               transition: LINEAR 0.1;
+           }
+           program {
+               name:    "go_disabled";
+               signal:  "elm,state,disabled";
+               source:  "elm";
+               action:  STATE_SET "disabled" 0.0;
+               target:  "disclip";
+           }
+           program {
+               name:    "go_enabled";
+               signal:  "elm,state,enabled";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "disclip";
+           }
+       }
+   }
+   group { name: "elm/genlist/item_odd/default_style/default";
+       data.item: "stacking" "below";
+       data.item: "selectraise" "on";
+       data.item: "labels" "elm.text";
+       data.item: "icons" "elm.swallow.icon elm.swallow.end";
+       data.item: "treesize" "20";
+       images {
+           image: "bt_sm_base1.png" COMP;
+           image: "bt_sm_shine.png" COMP;
+           image: "bt_sm_hilight.png" COMP;
+           image: "ilist_2.png" COMP;
+       }
+       parts {
+           part { name: "event";
+               type: RECT;
+               repeat_events: 1;
+               description {
+                   state: "default" 0.0;
+                   color: 0 0 0 0;
                }
-            }
-         }
-         part { name: "arrow";
-            clip_to: "disclip";
-            ignore_flags: ON_HOLD;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
+           }
+           part {
+               name: "base";
+               mouse_events: 0;
+               description {
+                   state: "default" 0.0;
+                   min: 16 28;
+                   image {
+                       normal: "ilist_2.png";
+                       border: 2 2 2 2;
+                   }
+                   fill.smooth: 0;
                }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+           }
+           part { name: "bg";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -5 -5;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 4 4;
+                   }
+                   image {
+                       normal: "bt_sm_base1.png";
+                       border: 6 6 6 6;
+                   }
+                   image.middle: SOLID;
                }
-               image.normal: "icon_arrow_right.png";
-            }
-            description { state: "active" 0.0;
-               inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -2 -2;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 1 1;
+                   }
                }
-               rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
+           }
+           part { name: "elm.swallow.pad";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       relative: 0.0  0.0;
+                       offset:   4    4;
+                   }
+                   rel2 {
+                       relative: 0.0  1.0;
+                       offset:   4   -5;
+                   }
                }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
+           }
+           part { name: "elm.swallow.icon";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  0.0;
+                       offset:   -1    4;
+                   }
+                   rel2 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  1.0;
+                       offset:   -1   -5;
+                   }
                }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
+           }
+           part { name: "elm.swallow.end";
+               clip_to: "disclip";
+               type:          SWALLOW;
+               description { state:    "default" 0.0;
+                   fixed: 1 0;
+                   align:    1.0 0.5;
+                   aspect: 1.0 1.0;
+                   aspect_preference: VERTICAL;
+                   rel1 {
+                       relative: 1.0  0.0;
+                       offset:   -5    4;
+                   }
+                   rel2 {
+                       relative: 1.0  1.0;
+                       offset:   -5   -5;
+                   }
+               }
+           }
+           part { name: "elm.text";
+               clip_to: "disclip";
+               type:           TEXTBLOCK;
+               mouse_events:   0;
+               scale: 1;
+               description {
+                   state: "default" 0.0;
+                   align: 0.0 0.5;
+                   fixed: 0 1;
+                   rel1 {
+                       to_x: "elm.swallow.icon";
+                       to_y: "base";
+                       relative: 1.0  0.5;
+                       offset:   0 4;
+                   }
+                   rel2 {
+                       to_x: "elm.swallow.end";
+                       to_y: "base";
+                       relative: 0.0  0.5;
+                       offset:   -1 -5;
+                   }
+                   text {
+                       style: "genlist_style";
+                       min: 1 1;
+                   }
                }
-            }
-         }
-         part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   0 4;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   text {
+                       style: "genlist_selected_style";
+                   }
                }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
+           }
+           part { name: "fg1";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.relative: 1.0 0.5;
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_hilight.png";
+                       border: 6 6 6 0;
+                   }
                }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: -1.0 0.5;
-                  text_class: "list_item";
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part { name: "fg1";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+           }
+           part { name: "fg2";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_shine.png";
+                       border: 6 6 6 0;
+                   }
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "fg2";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "disclip";
-            type: RECT;
-            description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 64;
-            }
-         }
-      }
-      programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
-      }
-   }
-   group { name: "elm/genlist/tree_compress_odd/default/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
-      images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
-      }
-      parts {
-         part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-            }
-         }
-         part {
-            name: "base";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_2.png";
-                  border: 2 2 2 2;
+           }
+           part { name: "disclip";
+               type: RECT;
+               description { state: "default" 0.0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
                }
-               fill.smooth: 0;
-            }
-         }
-         part { name: "bg";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 255 255 255 64;
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
+           }
+       }
+       programs {
+           // signal: elm,state,%s,active
+           //   a "check" item named %s went active
+           // signal: elm,state,%s,passive
+           //   a "check" item named %s went passive
+           // default is passive
+           program {
+               name:    "go_active";
+               signal:  "elm,state,selected";
+               source:  "elm";
+               action:  STATE_SET "selected" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+           }
+           program {
+               name:    "go_passive";
+               signal:  "elm,state,unselected";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+               transition: LINEAR 0.1;
+           }
+           program {
+               name:    "go_disabled";
+               signal:  "elm,state,disabled";
+               source:  "elm";
+               action:  STATE_SET "disabled" 0.0;
+               target:  "disclip";
+           }
+           program {
+               name:    "go_enabled";
+               signal:  "elm,state,enabled";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "disclip";
+           }
+       }
+   }
+
+   group { name: "elm/genlist/tree/default_style/default";
+       data.item: "stacking" "above";
+       data.item: "selectraise" "on";
+       data.item: "labels" "elm.text";
+       data.item: "icons" "elm.swallow.icon elm.swallow.end";
+       data.item: "treesize" "20";
+       images {
+           image: "bt_sm_base1.png" COMP;
+           image: "bt_sm_shine.png" COMP;
+           image: "bt_sm_hilight.png" COMP;
+           image: "ilist_1.png" COMP;
+           image: "ilist_item_shadow.png" COMP;
+           image: "icon_arrow_right.png" COMP;
+           image: "icon_arrow_down.png" COMP;
+       }
+       parts {
+           part {
+               name:           "event";
+               type:           RECT;
+               repeat_events: 1;
+               description {
+                   state: "default" 0.0;
+                   color: 0 0 0 0;
                }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
+           }
+           part {
+               name: "base_sh";
+               mouse_events: 0;
+               description {
+                   state: "default" 0.0;
+                   align: 0.0 0.0;
+                   min: 0 10;
+                   fixed: 1 1;
+                   rel1 {
+                       to: "base";
+                       relative: 0.0 1.0;
+                       offset: 0 0;
+                   }
+                   rel2 {
+                       to: "base";
+                       relative: 1.0 1.0;
+                       offset: -1 0;
+                   }
+                   image {
+                       normal: "ilist_item_shadow.png";
+                   }
+                   fill.smooth: 0;
                }
-               image.middle: SOLID;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
+           }
+           part {
+               name: "base";
+               mouse_events: 0;
+               description {
+                   state: "default" 0.0;
+                   min: 16 28;
+                   image {
+                       normal: "ilist_1.png";
+                       border: 2 2 2 2;
+                   }
+                   fill.smooth: 0;
                }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
+           }
+           part { name: "bg";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -5 -5;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 4 4;
+                   }
+                   image {
+                       normal: "bt_sm_base1.png";
+                       border: 6 6 6 6;
+                   }
+                   image.middle: SOLID;
                }
-            }
-         }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
+                   rel1 {
+                       relative: 0.0 0.0;
+                       offset: -2 -2;
+                   }
+                   rel2 {
+                       relative: 1.0 1.0;
+                       offset: 1 1;
+                   }
                }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+           }
+           part { name: "elm.swallow.pad";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       relative: 0.0  0.0;
+                       offset:   4    4;
+                   }
+                   rel2 {
+                       relative: 0.0  1.0;
+                       offset:   4   -5;
+                   }
                }
-            }
-         }
-         part { name: "arrow";
-            clip_to: "disclip";
-            ignore_flags: ON_HOLD;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
+           }
+           part { name: "arrow";
+               clip_to: "disclip";
+               ignore_flags: ON_HOLD;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   aspect: 1.0 1.0;
+                   rel1 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  0.0;
+                       offset:   -1    4;
+                   }
+                   rel2 {
+                       to_x: "elm.swallow.pad";
+                       relative: 1.0  1.0;
+                       offset:   -1   -5;
+                   }
+                   image.normal: "icon_arrow_right.png";
                }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+               description { state: "active" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "icon_arrow_down.png";
                }
-               image.normal: "icon_arrow_right.png";
-            }
-            description { state: "active" 0.0;
-               inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
+           }
+           part { name: "elm.swallow.icon";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       to_x: "arrow";
+                       relative: 1.0  0.0;
+                       offset:   4    4;
+                   }
+                   rel2 {
+                       to_x: "arrow";
+                       relative: 1.0  1.0;
+                       offset:   4   -5;
+                   }
                }
-               rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
+           }
+           part { name: "elm.swallow.end";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 1.0 0.5;
+                   aspect: 1.0 1.0;
+                   aspect_preference: VERTICAL;
+                   rel1 {
+                       relative: 1.0  0.0;
+                       offset:   -5    4;
+                   }
+                   rel2 {
+                       relative: 1.0  1.0;
+                       offset:   -5   -5;
+                   }
                }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
+           }
+           part { name: "elm.text";
+               clip_to: "disclip";
+               type:           TEXTBLOCK;
+               effect:         SOFT_SHADOW;
+               mouse_events:   0;
+               scale: 1;
+               description {
+                   state: "default" 0.0;
+                   align: 0.0 0.5;
+                   fixed: 0 1;
+                   rel1 {
+                       to_x:     "elm.swallow.icon";
+                       to_y: "base";
+                       relative: 1.0  0.5;
+                       offset:   0 4;
+                   }
+                   rel2 {
+                       to_x:     "elm.swallow.end";
+                       to_y: "base";
+                       relative: 0.0  0.5;
+                       offset:   -1 -5;
+                   }
+                   text {
+                       style: "genlist_style";
+                       min: 1 1;
+                   }
                }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   text {
+                       style: "genlist_selected_style";
+                   }
                }
-            }
-         }
-         part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   0 4;
+           }
+           part { name: "fg1";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.relative: 1.0 0.5;
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_hilight.png";
+                       border: 6 6 6 0;
+                   }
                }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-//                  min: 1 1;
-                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
+           }
+           part { name: "fg2";
+               clip_to: "disclip";
+               mouse_events: 0;
+               description { state: "default" 0.0;
+                   visible: 0;
+                   color: 255 255 255 0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
+                   image {
+                       normal: "bt_sm_shine.png";
+                       border: 6 6 6 0;
+                   }
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part { name: "fg1";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
+               description { state: "selected" 0.0;
+                   inherit: "default" 0.0;
+                   visible: 1;
+                   color: 255 255 255 255;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "fg2";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+           }
+           part { name: "disclip";
+               type: RECT;
+               description { state: "default" 0.0;
+                   rel1.to: "bg";
+                   rel2.to: "bg";
+               }
+               description { state: "disabled" 0.0;
+                   inherit: "default" 0.0;
+                   color: 255 255 255 64;
                }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-               color: 255 255 255 255;
-            }
-         }
-         part { name: "disclip";
-            type: RECT;
-            description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-            }
-            description { state: "disabled" 0.0;
-               inherit: "default" 0.0;
-               color: 255 255 255 64;
-            }
-         }
-      }
-      programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
-      }
-   }
-
-   group { name: "elm/genlist/item/default_style/default";
-       styles
-       {
-           style { name: "genlist_style";
-               base: "font=Sans font_size=10 align=left valign=0.5 color=#000 text_class=list_item";
-               tag:  "br" "\n";
-               tag:  "ps" "ps";
-               tag:  "hilight" "+ font=Sans:style=Bold";
-               tag:  "b" "+ font=Sans:style=Bold";
-               tag:  "tab" "\t";
            }
-           style { name: "genlist_selected_style";
-               base: "font=Sans font_size=10 align=left valign=0.5 color=#fff text_class=list_item";
-               tag:  "br" "\n";
-               tag:  "ps" "ps";
-               tag:  "hilight" "+ font=Sans:style=Bold";
-               tag:  "b" "+ font=Sans:style=Bold";
-               tag:  "tab" "\t";
+       }
+       programs {
+           // signal: elm,state,%s,active
+           //   a "check" item named %s went active
+           // signal: elm,state,%s,passive
+           //   a "check" item named %s went passive
+           // default is passive
+           program {
+               name:    "go_active";
+               signal:  "elm,state,selected";
+               source:  "elm";
+               action:  STATE_SET "selected" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+           }
+           program {
+               name:    "go_passive";
+               signal:  "elm,state,unselected";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "bg";
+               target:  "fg1";
+               target:  "fg2";
+               target:  "elm.text";
+               transition: LINEAR 0.1;
+           }
+           program {
+               name:    "go_disabled";
+               signal:  "elm,state,disabled";
+               source:  "elm";
+               action:  STATE_SET "disabled" 0.0;
+               target:  "disclip";
+           }
+           program {
+               name:    "go_enabled";
+               signal:  "elm,state,enabled";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "disclip";
+           }
+           program {
+               name:    "expand";
+               signal:  "mouse,up,1";
+               source:  "arrow";
+               action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+           }
+           program {
+               name:    "go_expanded";
+               signal:  "elm,state,expanded";
+               source:  "elm";
+               action:  STATE_SET "active" 0.0;
+               target:  "arrow";
+           }
+           program {
+               name:    "go_contracted";
+               signal:  "elm,state,contracted";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "arrow";
            }
        }
-       data.item: "stacking" "above";
+   }
+   group { name: "elm/genlist/tree_odd/default_style/default";
+       data.item: "stacking" "below";
        data.item: "selectraise" "on";
        data.item: "labels" "elm.text";
        data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -19103,8 +18748,9 @@ collections {
            image: "bt_sm_base1.png" COMP;
            image: "bt_sm_shine.png" COMP;
            image: "bt_sm_hilight.png" COMP;
-           image: "ilist_1.png" COMP;
-           image: "ilist_item_shadow.png" COMP;
+           image: "ilist_2.png" COMP;
+           image: "icon_arrow_right.png" COMP;
+           image: "icon_arrow_down.png" COMP;
        }
        parts {
            part {
@@ -19117,37 +18763,13 @@ collections {
                }
            }
            part {
-               name: "base_sh";
-               mouse_events: 0;
-               description {
-                   state: "default" 0.0;
-                   align: 0.0 0.0;
-                   min: 0 10;
-                   fixed: 1 1;
-                   rel1 {
-                       to: "base";
-                       relative: 0.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "base";
-                       relative: 1.0 1.0;
-                       offset: -1 0;
-                   }
-                   image {
-                       normal: "ilist_item_shadow.png";
-                   }
-                   fill.smooth: 0;
-               }
-           }
-           part {
                name: "base";
                mouse_events: 0;
                description {
                    state: "default" 0.0;
                    min: 16 28;
                    image {
-                       normal: "ilist_1.png";
+                       normal: "ilist_2.png";
                        border: 2 2 2 2;
                    }
                    fill.smooth: 0;
@@ -19202,12 +18824,13 @@ collections {
                    }
                }
            }
-           part { name: "elm.swallow.icon";
+           part { name: "arrow";
                clip_to: "disclip";
-               type: SWALLOW;
+               ignore_flags: ON_HOLD;
                description { state: "default" 0.0;
                    fixed: 1 0;
                    align: 0.0 0.5;
+                   aspect: 1.0 1.0;
                    rel1 {
                        to_x: "elm.swallow.pad";
                        relative: 1.0  0.0;
@@ -19218,6 +18841,29 @@ collections {
                        relative: 1.0  1.0;
                        offset:   -1   -5;
                    }
+                   image.normal: "icon_arrow_right.png";
+               }
+               description { state: "active" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "icon_arrow_down.png";
+               }
+           }
+           part { name: "elm.swallow.icon";
+               clip_to: "disclip";
+               type: SWALLOW;
+               description { state: "default" 0.0;
+                   fixed: 1 0;
+                   align: 0.0 0.5;
+                   rel1 {
+                       to_x: "arrow";
+                       relative: 1.0  0.0;
+                       offset:   4    4;
+                   }
+                   rel2 {
+                       to_x: "arrow";
+                       relative: 1.0  1.0;
+                       offset:   4   -5;
+                   }
                }
            }
            part { name: "elm.swallow.end";
@@ -19240,21 +18886,22 @@ collections {
            }
            part { name: "elm.text";
                clip_to: "disclip";
-               type: TEXTBLOCK;
-               mouse_events: 0;
+               type:           TEXTBLOCK;
+               effect:         SOFT_SHADOW;
+               mouse_events:   0;
                scale: 1;
                description {
                    state: "default" 0.0;
                    align: 0.0 0.5;
                    fixed: 0 1;
                    rel1 {
-                       to_x: "elm.swallow.icon";
+                       to_x:     "elm.swallow.icon";
                        to_y: "base";
                        relative: 1.0  0.5;
                        offset:   0 4;
                    }
                    rel2 {
-                       to_x: "elm.swallow.end";
+                       to_x:     "elm.swallow.end";
                        to_y: "base";
                        relative: 0.0  0.5;
                        offset:   -1 -5;
@@ -19363,872 +19010,942 @@ collections {
                action:  STATE_SET "default" 0.0;
                target:  "disclip";
            }
+           program {
+               name:    "expand";
+               signal:  "mouse,up,1";
+               source:  "arrow";
+               action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+           }
+           program {
+               name:    "go_expanded";
+               signal:  "elm,state,expanded";
+               source:  "elm";
+               action:  STATE_SET "active" 0.0;
+               target:  "arrow";
+           }
+           program {
+               name:    "go_contracted";
+               signal:  "elm,state,contracted";
+               source:  "elm";
+               action:  STATE_SET "default" 0.0;
+               target:  "arrow";
+           }
        }
    }
-   group { name: "elm/genlist/item_odd/default_style/default";
-       data.item: "stacking" "below";
-       data.item: "selectraise" "on";
-       data.item: "labels" "elm.text";
-       data.item: "icons" "elm.swallow.icon elm.swallow.end";
-       data.item: "treesize" "20";
-       images {
-           image: "bt_sm_base1.png" COMP;
-           image: "bt_sm_shine.png" COMP;
-           image: "bt_sm_hilight.png" COMP;
-           image: "ilist_2.png" COMP;
-       }
-       parts {
-           part { name: "event";
-               type: RECT;
-               repeat_events: 1;
-               description {
-                   state: "default" 0.0;
-                   color: 0 0 0 0;
+
+
+   group { name: "elm/genlist/item/double_label/default";
+      data.item: "stacking" "above";
+      data.item: "selectraise" "on";
+      data.item: "labels" "elm.text elm.text.sub";
+      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "treesize" "20";
+//      data.item: "states" "";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
+      }
+      parts {
+         part {
+            name:           "event";
+            type:           RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+         part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
+            name: "base";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_1.png";
+                  border: 2 2 2 2;
+               }
+               fill.smooth: 0;
+            }
+         }
+         part { name: "bg";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
-           }
-           part {
-               name: "base";
-               mouse_events: 0;
-               description {
-                   state: "default" 0.0;
-                   min: 16 28;
-                   image {
-                       normal: "ilist_2.png";
-                       border: 2 2 2 2;
-                   }
-                   fill.smooth: 0;
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-           }
-           part { name: "bg";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -5 -5;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 4 4;
-                   }
-                   image {
-                       normal: "bt_sm_base1.png";
-                       border: 6 6 6 6;
-                   }
-                   image.middle: SOLID;
+               image.middle: SOLID;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -2 -2;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 1 1;
-                   }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
                }
-           }
-           part { name: "elm.swallow.pad";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       relative: 0.0  0.0;
-                       offset:   4    4;
-                   }
-                   rel2 {
-                       relative: 0.0  1.0;
-                       offset:   4   -5;
-                   }
+            }
+         }
+         part { name: "elm.swallow.pad";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
-           }
-           part { name: "elm.swallow.icon";
-               clip_to: "disclip";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  0.0;
-                       offset:   -1    4;
-                   }
-                   rel2 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  1.0;
-                       offset:   -1   -5;
-                   }
+               rel2 {
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
-           }
-           part { name: "elm.swallow.end";
-               clip_to: "disclip";
-               type:          SWALLOW;
-               description { state:    "default" 0.0;
-                   fixed: 1 0;
-                   align:    1.0 0.5;
-                   aspect: 1.0 1.0;
-                   aspect_preference: VERTICAL;
-                   rel1 {
-                       relative: 1.0  0.0;
-                       offset:   -5    4;
-                   }
-                   rel2 {
-                       relative: 1.0  1.0;
-                       offset:   -5   -5;
-                   }
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
                }
-           }
-           part { name: "elm.text";
-               clip_to: "disclip";
-               type:           TEXTBLOCK;
-               mouse_events:   0;
-               scale: 1;
-               description {
-                   state: "default" 0.0;
-                   align: 0.0 0.5;
-                   fixed: 0 1;
-                   rel1 {
-                       to_x: "elm.swallow.icon";
-                       to_y: "base";
-                       relative: 1.0  0.5;
-                       offset:   0 4;
-                   }
-                   rel2 {
-                       to_x: "elm.swallow.end";
-                       to_y: "base";
-                       relative: 0.0  0.5;
-                       offset:   -1 -5;
-                   }
-                   text {
-                       style: "genlist_style";
-                       min: 1 1;
-                   }
+               rel2 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   text {
-                       style: "genlist_selected_style";
-                   }
+            }
+         }
+         part { name: "elm.swallow.end";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel1 {
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
                }
-           }
-           part { name: "fg1";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.relative: 1.0 0.5;
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_hilight.png";
-                       border: 6 6 6 0;
-                   }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
+               }
+            }
+         }
+         part { name: "elm.text";
+            clip_to: "disclip";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   0 4;
+               }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  0.5;
+                  offset:   -1 -5;
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+            }
+         }
+         part { name: "elm.text.sub";
+            clip_to: "disclip";
+            type:           TEXT;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.5;
+                  offset:   0 4;
+               }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
+               }
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 8;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               color3: 0 0 0 32;
+            }
+         }
+         part { name: "fg1";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-           }
-           part { name: "fg2";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_shine.png";
-                       border: 6 6 6 0;
-                   }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "fg2";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 64;
+            }
+         }
+      }
+      programs {
+         // signal: elm,state,%s,active
+         //   a "check" item named %s went active
+         // signal: elm,state,%s,passive
+         //   a "check" item named %s went passive
+         // default is passive
+         program {
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+      }
+   }
+   group { name: "elm/genlist/item_compress/double_label/default";
+      data.item: "stacking" "above";
+      data.item: "selectraise" "on";
+      data.item: "labels" "elm.text elm.text.sub";
+      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "treesize" "20";
+//      data.item: "states" "";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
+      }
+      parts {
+         part {
+            name:           "event";
+            type:           RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+         part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
                }
-           }
-           part { name: "disclip";
-               type: RECT;
-               description { state: "default" 0.0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 64;
+               image {
+                  normal: "ilist_item_shadow.png";
                }
-           }
-       }
-       programs {
-           // signal: elm,state,%s,active
-           //   a "check" item named %s went active
-           // signal: elm,state,%s,passive
-           //   a "check" item named %s went passive
-           // default is passive
-           program {
-               name:    "go_active";
-               signal:  "elm,state,selected";
-               source:  "elm";
-               action:  STATE_SET "selected" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-           }
-           program {
-               name:    "go_passive";
-               signal:  "elm,state,unselected";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-               transition: LINEAR 0.1;
-           }
-           program {
-               name:    "go_disabled";
-               signal:  "elm,state,disabled";
-               source:  "elm";
-               action:  STATE_SET "disabled" 0.0;
-               target:  "disclip";
-           }
-           program {
-               name:    "go_enabled";
-               signal:  "elm,state,enabled";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "disclip";
-           }
-       }
-   }
-
-   group { name: "elm/genlist/tree/default_style/default";
-       data.item: "stacking" "above";
-       data.item: "selectraise" "on";
-       data.item: "labels" "elm.text";
-       data.item: "icons" "elm.swallow.icon elm.swallow.end";
-       data.item: "treesize" "20";
-       images {
-           image: "bt_sm_base1.png" COMP;
-           image: "bt_sm_shine.png" COMP;
-           image: "bt_sm_hilight.png" COMP;
-           image: "ilist_1.png" COMP;
-           image: "ilist_item_shadow.png" COMP;
-           image: "icon_arrow_right.png" COMP;
-           image: "icon_arrow_down.png" COMP;
-       }
-       parts {
-           part {
-               name:           "event";
-               type:           RECT;
-               repeat_events: 1;
-               description {
-                   state: "default" 0.0;
-                   color: 0 0 0 0;
+               fill.smooth: 0;
+            }
+         }
+         part {
+            name: "base";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_1.png";
+                  border: 2 2 2 2;
                }
-           }
-           part {
-               name: "base_sh";
-               mouse_events: 0;
-               description {
-                   state: "default" 0.0;
-                   align: 0.0 0.0;
-                   min: 0 10;
-                   fixed: 1 1;
-                   rel1 {
-                       to: "base";
-                       relative: 0.0 1.0;
-                       offset: 0 0;
-                   }
-                   rel2 {
-                       to: "base";
-                       relative: 1.0 1.0;
-                       offset: -1 0;
-                   }
-                   image {
-                       normal: "ilist_item_shadow.png";
-                   }
-                   fill.smooth: 0;
+               fill.smooth: 0;
+            }
+         }
+         part { name: "bg";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
                }
-           }
-           part {
-               name: "base";
-               mouse_events: 0;
-               description {
-                   state: "default" 0.0;
-                   min: 16 28;
-                   image {
-                       normal: "ilist_1.png";
-                       border: 2 2 2 2;
-                   }
-                   fill.smooth: 0;
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
-           }
-           part { name: "bg";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -5 -5;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 4 4;
-                   }
-                   image {
-                       normal: "bt_sm_base1.png";
-                       border: 6 6 6 6;
-                   }
-                   image.middle: SOLID;
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -2 -2;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 1 1;
-                   }
+               image.middle: SOLID;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
                }
-           }
-           part { name: "elm.swallow.pad";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       relative: 0.0  0.0;
-                       offset:   4    4;
-                   }
-                   rel2 {
-                       relative: 0.0  1.0;
-                       offset:   4   -5;
-                   }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
                }
-           }
-           part { name: "arrow";
-               clip_to: "disclip";
-               ignore_flags: ON_HOLD;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   aspect: 1.0 1.0;
-                   rel1 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  0.0;
-                       offset:   -1    4;
-                   }
-                   rel2 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  1.0;
-                       offset:   -1   -5;
-                   }
-                   image.normal: "icon_arrow_right.png";
+            }
+         }
+         part { name: "elm.swallow.pad";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
-               description { state: "active" 0.0;
-                   inherit: "default" 0.0;
-                   image.normal: "icon_arrow_down.png";
+               rel2 {
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
-           }
-           part { name: "elm.swallow.icon";
-               clip_to: "disclip";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       to_x: "arrow";
-                       relative: 1.0  0.0;
-                       offset:   4    4;
-                   }
-                   rel2 {
-                       to_x: "arrow";
-                       relative: 1.0  1.0;
-                       offset:   4   -5;
-                   }
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
                }
-           }
-           part { name: "elm.swallow.end";
-               clip_to: "disclip";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 1.0 0.5;
-                   aspect: 1.0 1.0;
-                   aspect_preference: VERTICAL;
-                   rel1 {
-                       relative: 1.0  0.0;
-                       offset:   -5    4;
-                   }
-                   rel2 {
-                       relative: 1.0  1.0;
-                       offset:   -5   -5;
-                   }
+               rel2 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
                }
-           }
-           part { name: "elm.text";
-               clip_to: "disclip";
-               type:           TEXTBLOCK;
-               effect:         SOFT_SHADOW;
-               mouse_events:   0;
-               scale: 1;
-               description {
-                   state: "default" 0.0;
-                   align: 0.0 0.5;
-                   fixed: 0 1;
-                   rel1 {
-                       to_x:     "elm.swallow.icon";
-                       to_y: "base";
-                       relative: 1.0  0.5;
-                       offset:   0 4;
-                   }
-                   rel2 {
-                       to_x:     "elm.swallow.end";
-                       to_y: "base";
-                       relative: 0.0  0.5;
-                       offset:   -1 -5;
-                   }
-                   text {
-                       style: "genlist_style";
-                       min: 1 1;
-                   }
+            }
+         }
+         part { name: "elm.swallow.end";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel1 {
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
+               }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
+               }
+            }
+         }
+         part { name: "elm.text";
+            clip_to: "disclip";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   0 4;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   text {
-                       style: "genlist_selected_style";
-                   }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  0.5;
+                  offset:   -1 -5;
                }
-           }
-           part { name: "fg1";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.relative: 1.0 0.5;
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_hilight.png";
-                       border: 6 6 6 0;
-                   }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+            }
+         }
+         part { name: "elm.text.sub";
+            clip_to: "disclip";
+            type:           TEXT;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.5;
+                  offset:   0 4;
                }
-           }
-           part { name: "fg2";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_shine.png";
-                       border: 6 6 6 0;
-                   }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 8;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
                }
-           }
-           part { name: "disclip";
-               type: RECT;
-               description { state: "default" 0.0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               color3: 0 0 0 32;
+            }
+         }
+         part { name: "fg1";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 64;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "fg2";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
                }
-           }
-       }
-       programs {
-           // signal: elm,state,%s,active
-           //   a "check" item named %s went active
-           // signal: elm,state,%s,passive
-           //   a "check" item named %s went passive
-           // default is passive
-           program {
-               name:    "go_active";
-               signal:  "elm,state,selected";
-               source:  "elm";
-               action:  STATE_SET "selected" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-           }
-           program {
-               name:    "go_passive";
-               signal:  "elm,state,unselected";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-               transition: LINEAR 0.1;
-           }
-           program {
-               name:    "go_disabled";
-               signal:  "elm,state,disabled";
-               source:  "elm";
-               action:  STATE_SET "disabled" 0.0;
-               target:  "disclip";
-           }
-           program {
-               name:    "go_enabled";
-               signal:  "elm,state,enabled";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "disclip";
-           }
-           program {
-               name:    "expand";
-               signal:  "mouse,up,1";
-               source:  "arrow";
-               action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-           }
-           program {
-               name:    "go_expanded";
-               signal:  "elm,state,expanded";
-               source:  "elm";
-               action:  STATE_SET "active" 0.0;
-               target:  "arrow";
-           }
-           program {
-               name:    "go_contracted";
-               signal:  "elm,state,contracted";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "arrow";
-           }
-       }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 64;
+            }
+         }
+      }
+      programs {
+         // signal: elm,state,%s,active
+         //   a "check" item named %s went active
+         // signal: elm,state,%s,passive
+         //   a "check" item named %s went passive
+         // default is passive
+         program {
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+      }
    }
-   group { name: "elm/genlist/tree_odd/default_style/default";
-       data.item: "stacking" "below";
-       data.item: "selectraise" "on";
-       data.item: "labels" "elm.text";
-       data.item: "icons" "elm.swallow.icon elm.swallow.end";
-       data.item: "treesize" "20";
-       images {
-           image: "bt_sm_base1.png" COMP;
-           image: "bt_sm_shine.png" COMP;
-           image: "bt_sm_hilight.png" COMP;
-           image: "ilist_2.png" COMP;
-           image: "icon_arrow_right.png" COMP;
-           image: "icon_arrow_down.png" COMP;
-       }
-       parts {
-           part {
-               name:           "event";
-               type:           RECT;
-               repeat_events: 1;
-               description {
-                   state: "default" 0.0;
-                   color: 0 0 0 0;
+   group { name: "elm/genlist/item_odd/double_label/default";
+      data.item: "stacking" "below";
+      data.item: "selectraise" "on";
+      data.item: "labels" "elm.text elm.text.sub";
+      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "treesize" "20";
+//      data.item: "states" "";
+      images {
+         image: "bt_sm_base1.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_2.png" COMP;
+      }
+      parts {
+         part { name: "event";
+            type: RECT;
+            repeat_events: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+         part {
+            name: "base";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               image {
+                  normal: "ilist_2.png";
+                  border: 2 2 2 2;
                }
-           }
-           part {
-               name: "base";
-               mouse_events: 0;
-               description {
-                   state: "default" 0.0;
-                   min: 16 28;
-                   image {
-                       normal: "ilist_2.png";
-                       border: 2 2 2 2;
-                   }
-                   fill.smooth: 0;
+               fill.smooth: 0;
+            }
+         }
+         part { name: "bg";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -5 -5;
                }
-           }
-           part { name: "bg";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -5 -5;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 4 4;
-                   }
-                   image {
-                       normal: "bt_sm_base1.png";
-                       border: 6 6 6 6;
-                   }
-                   image.middle: SOLID;
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 4 4;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
-                   rel1 {
-                       relative: 0.0 0.0;
-                       offset: -2 -2;
-                   }
-                   rel2 {
-                       relative: 1.0 1.0;
-                       offset: 1 1;
-                   }
+               image {
+                  normal: "bt_sm_base1.png";
+                  border: 6 6 6 6;
                }
-           }
-           part { name: "elm.swallow.pad";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       relative: 0.0  0.0;
-                       offset:   4    4;
-                   }
-                   rel2 {
-                       relative: 0.0  1.0;
-                       offset:   4   -5;
-                   }
+               image.middle: SOLID;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -2 -2;
                }
-           }
-           part { name: "arrow";
-               clip_to: "disclip";
-               ignore_flags: ON_HOLD;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   aspect: 1.0 1.0;
-                   rel1 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  0.0;
-                       offset:   -1    4;
-                   }
-                   rel2 {
-                       to_x: "elm.swallow.pad";
-                       relative: 1.0  1.0;
-                       offset:   -1   -5;
-                   }
-                   image.normal: "icon_arrow_right.png";
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 1 1;
                }
-               description { state: "active" 0.0;
-                   inherit: "default" 0.0;
-                   image.normal: "icon_arrow_down.png";
+            }
+         }
+         part { name: "elm.swallow.pad";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  relative: 0.0  0.0;
+                  offset:   4    4;
                }
-           }
-           part { name: "elm.swallow.icon";
-               clip_to: "disclip";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 0.0 0.5;
-                   rel1 {
-                       to_x: "arrow";
-                       relative: 1.0  0.0;
-                       offset:   4    4;
-                   }
-                   rel2 {
-                       to_x: "arrow";
-                       relative: 1.0  1.0;
-                       offset:   4   -5;
-                   }
+               rel2 {
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
-           }
-           part { name: "elm.swallow.end";
-               clip_to: "disclip";
-               type: SWALLOW;
-               description { state: "default" 0.0;
-                   fixed: 1 0;
-                   align: 1.0 0.5;
-                   aspect: 1.0 1.0;
-                   aspect_preference: VERTICAL;
-                   rel1 {
-                       relative: 1.0  0.0;
-                       offset:   -5    4;
-                   }
-                   rel2 {
-                       relative: 1.0  1.0;
-                       offset:   -5   -5;
-                   }
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
                }
-           }
-           part { name: "elm.text";
-               clip_to: "disclip";
-               type:           TEXTBLOCK;
-               effect:         SOFT_SHADOW;
-               mouse_events:   0;
-               scale: 1;
-               description {
-                   state: "default" 0.0;
-                   align: 0.0 0.5;
-                   fixed: 0 1;
-                   rel1 {
-                       to_x:     "elm.swallow.icon";
-                       to_y: "base";
-                       relative: 1.0  0.5;
-                       offset:   0 4;
-                   }
-                   rel2 {
-                       to_x:     "elm.swallow.end";
-                       to_y: "base";
-                       relative: 0.0  0.5;
-                       offset:   -1 -5;
-                   }
-                   text {
-                       style: "genlist_style";
-                       min: 1 1;
-                   }
+               rel2 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   text {
-                       style: "genlist_selected_style";
-                   }
+            }
+         }
+         part { name: "elm.swallow.end";
+            clip_to: "disclip";
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
+               fixed: 1 0;
+               align:    1.0 0.5;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel1 {
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
                }
-           }
-           part { name: "fg1";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.relative: 1.0 0.5;
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_hilight.png";
-                       border: 6 6 6 0;
-                   }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+            }
+         }
+         part { name: "elm.text";
+            clip_to: "disclip";
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
+                  offset:   0 4;
                }
-           }
-           part { name: "fg2";
-               clip_to: "disclip";
-               mouse_events: 0;
-               description { state: "default" 0.0;
-                   visible: 0;
-                   color: 255 255 255 0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
-                   image {
-                       normal: "bt_sm_shine.png";
-                       border: 6 6 6 0;
-                   }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  0.5;
+                  offset:   -1 -5;
                }
-               description { state: "selected" 0.0;
-                   inherit: "default" 0.0;
-                   visible: 1;
-                   color: 255 255 255 255;
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
                }
-           }
-           part { name: "disclip";
-               type: RECT;
-               description { state: "default" 0.0;
-                   rel1.to: "bg";
-                   rel2.to: "bg";
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+            }
+         }
+         part { name: "elm.text.sub";
+            clip_to: "disclip";
+            type:           TEXT;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.5;
+                  offset:   0 4;
                }
-               description { state: "disabled" 0.0;
-                   inherit: "default" 0.0;
-                   color: 255 255 255 64;
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
                }
-           }
-       }
-       programs {
-           // signal: elm,state,%s,active
-           //   a "check" item named %s went active
-           // signal: elm,state,%s,passive
-           //   a "check" item named %s went passive
-           // default is passive
-           program {
-               name:    "go_active";
-               signal:  "elm,state,selected";
-               source:  "elm";
-               action:  STATE_SET "selected" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-           }
-           program {
-               name:    "go_passive";
-               signal:  "elm,state,unselected";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "bg";
-               target:  "fg1";
-               target:  "fg2";
-               target:  "elm.text";
-               transition: LINEAR 0.1;
-           }
-           program {
-               name:    "go_disabled";
-               signal:  "elm,state,disabled";
-               source:  "elm";
-               action:  STATE_SET "disabled" 0.0;
-               target:  "disclip";
-           }
-           program {
-               name:    "go_enabled";
-               signal:  "elm,state,enabled";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "disclip";
-           }
-           program {
-               name:    "expand";
-               signal:  "mouse,up,1";
-               source:  "arrow";
-               action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-           }
-           program {
-               name:    "go_expanded";
-               signal:  "elm,state,expanded";
-               source:  "elm";
-               action:  STATE_SET "active" 0.0;
-               target:  "arrow";
-           }
-           program {
-               name:    "go_contracted";
-               signal:  "elm,state,contracted";
-               source:  "elm";
-               action:  STATE_SET "default" 0.0;
-               target:  "arrow";
-           }
-       }
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 8;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               color3: 0 0 0 32;
+            }
+         }
+         part { name: "fg1";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.relative: 1.0 0.5;
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_hilight.png";
+                  border: 6 6 6 0;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "fg2";
+            clip_to: "disclip";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+               image {
+                  normal: "bt_sm_shine.png";
+                  border: 6 6 6 0;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         part { name: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 64;
+            }
+         }
+      }
+      programs {
+         // signal: elm,state,%s,active
+         //   a "check" item named %s went active
+         // signal: elm,state,%s,passive
+         //   a "check" item named %s went passive
+         // default is passive
+         program {
+            name:    "go_active";
+            signal:  "elm,state,selected";
+            source:  "elm";
+            action:  STATE_SET "selected" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text";
+            target:  "elm.text.sub";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+      }
    }
-
-
-   group { name: "elm/genlist/item/double_label/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/item_compress_odd/double_label/default";
+      data.item: "stacking" "below";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text elm.text.sub";
       data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -20238,13 +19955,11 @@ collections {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
+         image: "ilist_2.png" COMP;
       }
       parts {
-         part {
-            name:           "event";
-            type:           RECT;
+         part { name: "event";
+            type: RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -20252,36 +19967,12 @@ collections {
             }
          }
          part {
-            name: "base_sh";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
-               }
-               image {
-                  normal: "ilist_item_shadow.png";
-               }
-               fill.smooth: 0;
-            }
-         }
-         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1.png";
+                  normal: "ilist_2.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -20356,10 +20047,10 @@ collections {
          }
          part { name: "elm.swallow.end";
             clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
+            type:          SWALLOW;
+            description { state:    "default" 0.0;
                fixed: 1 0;
-               align: 1.0 0.5;
+               align:    1.0 0.5;
                aspect: 1.0 1.0;
                aspect_preference: VERTICAL;
                rel1 {
@@ -20396,8 +20087,8 @@ collections {
                text {
                   font: "Sans";
                   size: 10;
-                  min: 1 1;
-//                  min: 0 1;
+//                  min: 1 1;
+                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -20431,8 +20122,8 @@ collections {
                text {
                   font: "Sans";
                   size: 8;
-                  min: 1 1;
-//                  min: 0 1;
+//                  min: 1 1;
+                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -20539,7 +20230,8 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/item_compress/double_label/default";
+
+   group { name: "elm/genlist/tree/double_label/default";
       data.item: "stacking" "above";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text elm.text.sub";
@@ -20552,6 +20244,8 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
+         image: "icon_arrow_right.png" COMP;
+         image: "icon_arrow_down.png" COMP;
       }
       parts {
          part {
@@ -20648,12 +20342,13 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.icon";
+         part { name: "arrow";
             clip_to: "disclip";
-            type: SWALLOW;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
                fixed: 1 0;
                align: 0.0 0.5;
+               aspect: 1.0 1.0;
                rel1 {
                   to_x: "elm.swallow.pad";
                   relative: 1.0  0.0;
@@ -20664,6 +20359,29 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
+               image.normal: "icon_arrow_right.png";
+            }
+            description { state: "active" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "arrow";
+                  relative: 1.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  to_x: "arrow";
+                  relative: 1.0  1.0;
+                  offset:   4   -5;
+               }
             }
          }
          part { name: "elm.swallow.end";
@@ -20708,8 +20426,8 @@ collections {
                text {
                   font: "Sans";
                   size: 10;
-//                  min: 1 1;
-                  min: 0 1;
+                  min: 1 1;
+//                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -20743,8 +20461,8 @@ collections {
                text {
                   font: "Sans";
                   size: 8;
-//                  min: 1 1;
-                  min: 0 1;
+                  min: 1 1;
+//                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -20849,10 +20567,30 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
+         program {
+            name:    "expand";
+            signal:  "mouse,up,1";
+            source:  "arrow";
+            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+         }
+         program {
+            name:    "go_expanded";
+            signal:  "elm,state,expanded";
+            source:  "elm";
+            action:  STATE_SET "active" 0.0;
+            target:  "arrow";
+         }
+         program {
+            name:    "go_contracted";
+            signal:  "elm,state,contracted";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "arrow";
+         }
       }
    }
-   group { name: "elm/genlist/item_odd/double_label/default";
-      data.item: "stacking" "below";
+   group { name: "elm/genlist/tree_compress/double_label/default";
+      data.item: "stacking" "above";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text elm.text.sub";
       data.item: "icons" "elm.swallow.icon elm.swallow.end";
@@ -20862,11 +20600,15 @@ collections {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
+         image: "icon_arrow_right.png" COMP;
+         image: "icon_arrow_down.png" COMP;
       }
       parts {
-         part { name: "event";
-            type: RECT;
+         part {
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -20874,12 +20616,36 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -20934,12 +20700,13 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.icon";
+         part { name: "arrow";
             clip_to: "disclip";
-            type: SWALLOW;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
                fixed: 1 0;
                align: 0.0 0.5;
+               aspect: 1.0 1.0;
                rel1 {
                   to_x: "elm.swallow.pad";
                   relative: 1.0  0.0;
@@ -20950,14 +20717,37 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
+               image.normal: "icon_arrow_right.png";
+            }
+            description { state: "active" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "arrow";
+                  relative: 1.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  to_x: "arrow";
+                  relative: 1.0  1.0;
+                  offset:   4   -5;
+               }
             }
          }
          part { name: "elm.swallow.end";
             clip_to: "disclip";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 1 0;
-               align:    1.0 0.5;
+               align: 1.0 0.5;
                aspect: 1.0 1.0;
                aspect_preference: VERTICAL;
                rel1 {
@@ -20994,8 +20784,8 @@ collections {
                text {
                   font: "Sans";
                   size: 10;
-                  min: 1 1;
-//                  min: 0 1;
+//                  min: 1 1;
+                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -21029,8 +20819,8 @@ collections {
                text {
                   font: "Sans";
                   size: 8;
-                  min: 1 1;
-//                  min: 0 1;
+//                  min: 1 1;
+                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -21125,19 +20915,39 @@ collections {
             name:    "go_disabled";
             signal:  "elm,state,disabled";
             source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "expand";
+            signal:  "mouse,up,1";
+            source:  "arrow";
+            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+         }
+         program {
+            name:    "go_expanded";
+            signal:  "elm,state,expanded";
+            source:  "elm";
+            action:  STATE_SET "active" 0.0;
+            target:  "arrow";
          }
          program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
+            name:    "go_contracted";
+            signal:  "elm,state,contracted";
             source:  "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+            target:  "arrow";
          }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/double_label/default";
+   group { name: "elm/genlist/tree_odd/double_label/default";
       data.item: "stacking" "below";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text elm.text.sub";
@@ -21149,10 +20959,13 @@ collections {
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_2.png" COMP;
+         image: "icon_arrow_right.png" COMP;
+         image: "icon_arrow_down.png" COMP;
       }
       parts {
-         part { name: "event";
-            type: RECT;
+         part {
+            name:           "event";
+            type:           RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -21220,12 +21033,13 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.icon";
+         part { name: "arrow";
             clip_to: "disclip";
-            type: SWALLOW;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
                fixed: 1 0;
                align: 0.0 0.5;
+               aspect: 1.0 1.0;
                rel1 {
                   to_x: "elm.swallow.pad";
                   relative: 1.0  0.0;
@@ -21236,14 +21050,37 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
+               image.normal: "icon_arrow_right.png";
+            }
+            description { state: "active" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "arrow";
+                  relative: 1.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  to_x: "arrow";
+                  relative: 1.0  1.0;
+                  offset:   4   -5;
+               }
             }
          }
          part { name: "elm.swallow.end";
             clip_to: "disclip";
-            type:          SWALLOW;
-            description { state:    "default" 0.0;
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 1 0;
-               align:    1.0 0.5;
+               align: 1.0 0.5;
                aspect: 1.0 1.0;
                aspect_preference: VERTICAL;
                rel1 {
@@ -21280,8 +21117,8 @@ collections {
                text {
                   font: "Sans";
                   size: 10;
-//                  min: 1 1;
-                  min: 0 1;
+                  min: 1 1;
+//                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -21315,8 +21152,8 @@ collections {
                text {
                   font: "Sans";
                   size: 8;
-//                  min: 1 1;
-                  min: 0 1;
+                  min: 1 1;
+//                  min: 0 1;
                   align: 0.0 0.5;
                   text_class: "list_item";
                }
@@ -21421,14 +21258,34 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
+         program {
+            name:    "expand";
+            signal:  "mouse,up,1";
+            source:  "arrow";
+            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+         }
+         program {
+            name:    "go_expanded";
+            signal:  "elm,state,expanded";
+            source:  "elm";
+            action:  STATE_SET "active" 0.0;
+            target:  "arrow";
+         }
+         program {
+            name:    "go_contracted";
+            signal:  "elm,state,contracted";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "arrow";
+         }
       }
    }
 
-   group { name: "elm/genlist/tree/double_label/default";
+   group { name: "elm/genlist/item/icon_top_text_bottom/default";
       data.item: "stacking" "above";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text elm.text.sub";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.text";
+      data.item: "icons" "elm.swallow.icon";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
@@ -21437,8 +21294,6 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
       }
       parts {
          part {
@@ -21530,21 +21385,20 @@ collections {
                   offset:   4    4;
                }
                rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+                  relative: 1.0  1.0;
+                  offset:   -4   -5;
                }
             }
          }
-         part { name: "arrow";
+         part { name: "elm.swallow.icon";
             clip_to: "disclip";
-            ignore_flags: ON_HOLD;
+            type: SWALLOW;
             description { state: "default" 0.0;
                fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
+               align: 0.5 0.5;
                rel1 {
                   to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
+                  relative: 0.0  0.0;
                   offset:   -1    4;
                }
                rel2 {
@@ -21552,47 +21406,6 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
-               image.normal: "icon_arrow_right.png";
-            }
-            description { state: "active" 0.0;
-               inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
             }
          }
          part { name: "elm.text";
@@ -21605,14 +21418,13 @@ collections {
                state: "default" 0.0;
 //               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
+                  to_y:     "elm.swallow.icon";
+                  relative: 0.0  1.0;
                   offset:   0 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  0.5;
-                  offset:   -1 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
@@ -21621,7 +21433,7 @@ collections {
                   size: 10;
                   min: 1 1;
 //                  min: 0 1;
-                  align: 0.0 0.5;
+                  align: 0.5 0.5;
                   text_class: "list_item";
                }
             }
@@ -21631,41 +21443,6 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.sub";
-            clip_to: "disclip";
-            type:           TEXT;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.5;
-                  offset:   0 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 128;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 8;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 128 128 128 255;
-               color3: 0 0 0 32;
-            }
-         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -21732,7 +21509,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
          }
          program {
             name:    "go_passive";
@@ -21743,7 +21519,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
             transition: LINEAR 0.1;
          }
          program {
@@ -21760,48 +21535,24 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
       }
    }
-   group { name: "elm/genlist/tree_compress/double_label/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/item_odd/icon_top_text_bottom/default";
+      data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text elm.text.sub";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.text";
+      data.item: "icons" "elm.swallow.icon";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
+         image: "ilist_2.png" COMP;
       }
       parts {
-         part {
-            name:           "event";
-            type:           RECT;
+         part { name: "event";
+            type: RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -21809,36 +21560,12 @@ collections {
             }
          }
          part {
-            name: "base_sh";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
-               }
-               image {
-                  normal: "ilist_item_shadow.png";
-               }
-               fill.smooth: 0;
-            }
-         }
-         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1.png";
+                  normal: "ilist_2.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -21888,21 +21615,20 @@ collections {
                   offset:   4    4;
                }
                rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
+                  relative: 1.0  1.0;
+                  offset:   -4   -5;
                }
             }
          }
-         part { name: "arrow";
+         part { name: "elm.swallow.icon";
             clip_to: "disclip";
-            ignore_flags: ON_HOLD;
+            type: SWALLOW;
             description { state: "default" 0.0;
                fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
+               align: 0.5 0.5;
                rel1 {
                   to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
+                  relative: 0.0  0.0;
                   offset:   -1    4;
                }
                rel2 {
@@ -21910,47 +21636,6 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
-               image.normal: "icon_arrow_right.png";
-            }
-            description { state: "active" 0.0;
-               inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
             }
          }
          part { name: "elm.text";
@@ -21961,25 +21646,24 @@ collections {
             scale: 1;
             description {
                state: "default" 0.0;
-//               min: 16 16;
+//               min:      16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
+                  to_y:     "elm.swallow.icon";
+                  relative: 0.0  1.0;
                   offset:   0 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  0.5;
-                  offset:   -1 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
                text {
                   font: "Sans";
                   size: 10;
-//                  min: 1 1;
-                  min: 0 1;
-                  align: 0.0 0.5;
+                  min: 1 1;
+//                  min: 0 1;
+                  align: 0.5 0.5;
                   text_class: "list_item";
                }
             }
@@ -21989,41 +21673,6 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.sub";
-            clip_to: "disclip";
-            type:           TEXT;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.5;
-                  offset:   0 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 128;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 8;
-//                  min: 1 1;
-                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 128 128 128 255;
-               color3: 0 0 0 32;
-            }
-         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -22090,7 +21739,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
          }
          program {
             name:    "go_passive";
@@ -22101,7 +21749,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
             transition: LINEAR 0.1;
          }
          program {
@@ -22118,40 +21765,22 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
       }
    }
-   group { name: "elm/genlist/tree_odd/double_label/default";
-      data.item: "stacking" "below";
+
+   group { name: "elm/genlist/tree/icon_top_text_bottom/default";
+      data.item: "stacking" "above";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text elm.text.sub";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.text";
+      data.item: "icons" "elm.swallow.icon";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
          image: "icon_arrow_right.png" COMP;
          image: "icon_arrow_down.png" COMP;
       }
@@ -22166,12 +21795,36 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -22255,34 +21908,15 @@ collections {
             type: SWALLOW;
             description { state: "default" 0.0;
                fixed: 1 0;
-               align: 0.0 0.5;
+               align: 0.5 0.5;
                rel1 {
                   to_x: "arrow";
                   relative: 1.0  0.0;
                   offset:   4    4;
                }
                rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
                   relative: 1.0  1.0;
-                  offset:   -5   -5;
+                  offset:   -4   -5;
                }
             }
          }
@@ -22296,14 +21930,13 @@ collections {
                state: "default" 0.0;
 //               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
+                  to_y:     "elm.swallow.icon";
+                  relative: 0.0  1.0;
                   offset:   0 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  0.5;
-                  offset:   -1 -5;
+                  relative: 1.0  1.0;
+                  offset:   -5 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
@@ -22312,7 +21945,7 @@ collections {
                   size: 10;
                   min: 1 1;
 //                  min: 0 1;
-                  align: 0.0 0.5;
+                  align: 0.5 0.5;
                   text_class: "list_item";
                }
             }
@@ -22322,41 +21955,6 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.sub";
-            clip_to: "disclip";
-            type:           TEXT;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min: 16 16;
-               rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.5;
-                  offset:   0 4;
-               }
-               rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 128;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 8;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.0 0.5;
-                  text_class: "list_item";
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 128 128 128 255;
-               color3: 0 0 0 32;
-            }
-         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -22423,7 +22021,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
          }
          program {
             name:    "go_passive";
@@ -22434,7 +22031,6 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
-            target:  "elm.text.sub";
             transition: LINEAR 0.1;
          }
          program {
@@ -22473,9 +22069,8 @@ collections {
          }
       }
    }
-
-   group { name: "elm/genlist/item/icon_top_text_bottom/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/tree_odd/icon_top_text_bottom/default";
+      data.item: "stacking" "below";
       data.item: "selectraise" "on";
       data.item: "labels" "elm.text";
       data.item: "icons" "elm.swallow.icon";
@@ -22485,41 +22080,18 @@ collections {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
+         image: "ilist_2.png" COMP;
+         image: "icon_arrow_right.png" COMP;
+         image: "icon_arrow_down.png" COMP;
       }
       parts {
          part {
-            name:           "event";
-            type:           RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-            }
-         }
-         part {
-            name: "base_sh";
-            mouse_events: 0;
+            name:           "event";
+            type:           RECT;
+            repeat_events: 1;
             description {
                state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
-               }
-               image {
-                  normal: "ilist_item_shadow.png";
-               }
-               fill.smooth: 0;
+               color: 0 0 0 0;
             }
          }
          part {
@@ -22528,7 +22100,7 @@ collections {
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1.png";
+                  normal: "ilist_2.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -22578,20 +22150,21 @@ collections {
                   offset:   4    4;
                }
                rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -4   -5;
+                  relative: 0.0  1.0;
+                  offset:   4   -5;
                }
             }
          }
-         part { name: "elm.swallow.icon";
+         part { name: "arrow";
             clip_to: "disclip";
-            type: SWALLOW;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
                fixed: 1 0;
-               align: 0.5 0.5;
+               align: 0.0 0.5;
+               aspect: 1.0 1.0;
                rel1 {
                   to_x: "elm.swallow.pad";
-                  relative: 0.0  0.0;
+                  relative: 1.0  0.0;
                   offset:   -1    4;
                }
                rel2 {
@@ -22599,6 +22172,28 @@ collections {
                   relative: 1.0  1.0;
                   offset:   -1   -5;
                }
+               image.normal: "icon_arrow_right.png";
+            }
+            description { state: "active" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "icon_arrow_down.png";
+            }
+         }
+         part { name: "elm.swallow.icon";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.5 0.5;
+               rel1 {
+                  to_x: "arrow";
+                  relative: 1.0  0.0;
+                  offset:   4    4;
+               }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -4   -5;
+               }
             }
          }
          part { name: "elm.text";
@@ -22714,266 +22309,522 @@ collections {
             target:  "elm.text";
             transition: LINEAR 0.1;
          }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "expand";
+            signal:  "mouse,up,1";
+            source:  "arrow";
+            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
+         }
+         program {
+            name:    "go_expanded";
+            signal:  "elm,state,expanded";
+            source:  "elm";
+            action:  STATE_SET "active" 0.0;
+            target:  "arrow";
+         }
+         program {
+            name:    "go_contracted";
+            signal:  "elm,state,contracted";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "arrow";
+         }
+      }
+   }
+
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/check/base/default";
+      images {
+         image: "check_base.png" COMP;
+         image: "check.png" COMP;
+         image: "check2.png" COMP;
+      }
+      parts {
+         part { name: "bg";
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.offset: 1 1;
+               rel2.relative: 0.0 1.0;
+               rel2.offset: 1 -2;
+               align: 0.0 0.5;
+               min: 16 16;
+               max: 16 16;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               image {
+                  normal: "check_base.png";
+                  border: 5 5 5 5;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "check";
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1 {
+                  to: "bg";
+                  offset: 1 1;
+               }
+               rel2 {
+                  to: "bg";
+                  offset: -2 -2;
+               }
+               visible: 0;
+               color: 255 255 255 255;
+               image.normal: "check.png";
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               color: 128 128 128 128;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+               visible: 1;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               visible: 0;
+               align: 0.0 0.5;
+          rel1.to_x: "bg";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 1 1;
+          rel2.to_x: "bg";
+               rel2.offset: 1 -2;
+               rel2.relative: 1.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+          fixed: 1 0;
+               visible: 1;
+               aspect: 1.0 1.0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
+          fixed: 1 0;
+               visible: 1;
+               aspect: 1.0 1.0;
+            }
+         }
+         part { name: "elm.text";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               visible: 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 1 1;
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -2 -2;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  min: 0 1;
+                  align: 0.0 0.5;
+               }
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
+            }
+         }
+         part { name: "events";
+            type: RECT;
+            ignore_flags: ON_HOLD;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+         }
+      }
+      programs {
+         program { name: "click";
+            signal: "mouse,up,1";
+            source: "events";
+            action: SIGNAL_EMIT "elm,action,check,toggle" "";
+         }
+         program { name: "check_on";
+            signal: "elm,state,check,on";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "check";
+         }
+         program { name: "check_off";
+            signal: "elm,state,check,off";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "check";
+         }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.text";
+         }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.text";
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.content";
          }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "disabled", 0.0);
+
+               get_state(PART:"check", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"check", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"check", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "disabler";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "default", 0.0);
+
+               get_state(PART:"check", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"check", "visible", 0.0);
+               else
+                 set_state(PART:"check", "default", 0.0);
+            }
          }
       }
    }
-   group { name: "elm/genlist/item_odd/icon_top_text_bottom/default";
-      data.item: "stacking" "below";
-      data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon";
-      data.item: "treesize" "20";
-//      data.item: "states" "";
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/radio/base/default";
       images {
-         image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
+         image: "radio_base.png" COMP;
+         image: "radio.png" COMP;
+         image: "radio2.png" COMP;
       }
       parts {
-         part { name: "event";
-            type: RECT;
-            repeat_events: 1;
-            description {
-               state: "default" 0.0;
-               color: 0 0 0 0;
-            }
-         }
-         part {
-            name: "base";
+         part { name: "bg";
             mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               image {
-                  normal: "ilist_2.png";
-                  border: 2 2 2 2;
-               }
-               fill.smooth: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.offset: 1 1;
+               rel2.relative: 0.0 1.0;
+               rel2.offset: 1 -2;
+               align: 0.0 0.5;
+               min: 16 16;
+               max: 16 16;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               image.normal: "radio_base.png";
             }
          }
-         part { name: "bg";
-            clip_to: "disclip";
+         part { name: "radio";
             mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
+               rel1.to: "bg";
+               rel2.to: "bg";
                visible: 0;
-               color: 255 255 255 0;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -5 -5;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 4 4;
-               }
-               image {
-                  normal: "bt_sm_base1.png";
-                  border: 6 6 6 6;
-               }
-               image.middle: SOLID;
+               image.normal: "radio.png";
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: -2 -2;
-               }
-               rel2 {
-                  relative: 1.0 1.0;
-                  offset: 1 1;
-               }
             }
          }
-         part { name: "elm.swallow.pad";
+         part { name: "elm.swallow.content";
             type: SWALLOW;
             description { state: "default" 0.0;
                fixed: 1 0;
+               visible: 0;
                align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.5 0.5;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 0.0  0.0;
-                  offset:   -1    4;
-               }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
-               }
-            }
-         }
-         part { name: "elm.text";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-//               min:      16 16;
-               rel1 {
-                  to_y:     "elm.swallow.icon";
-                  relative: 0.0  1.0;
-                  offset:   0 4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.5 0.5;
-                  text_class: "list_item";
-               }
+               color: 0 0 0 0;
+               rel1.to_x: "bg";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 1 1;
+               rel2.to_x: "bg";
+               rel2.relative: 1.0 1.0;
+               rel2.offset: 2 -2;
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+               visible: 1;
+               color: 255 255 255 255;
+               aspect: 1.0 1.0;
             }
-         }
-         part { name: "fg1";
-            clip_to: "disclip";
-            mouse_events: 0;
-            description { state: "default" 0.0;
-               visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.relative: 1.0 0.5;
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_hilight.png";
-                  border: 6 6 6 0;
-               }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 128;
             }
-            description { state: "selected" 0.0;
+            description { state: "disabled_visible" 0.0;
                inherit: "default" 0.0;
+               color: 128 128 128 128;
                visible: 1;
-               color: 255 255 255 255;
+               aspect: 1.0 1.0;
             }
          }
-         part { name: "fg2";
-            clip_to: "disclip";
+         part { name: "elm.text";
+            type: TEXT;
             mouse_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
                visible: 0;
-               color: 255 255 255 0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               image {
-                  normal: "bt_sm_shine.png";
-                  border: 6 6 6 0;
+               rel1.to_x: "elm.swallow.content";
+               rel1.relative: 1.0 0.0;
+               rel1.offset: 1 1;
+               rel2.relative: 1.0 1.0;
+               rel2.offset: -2 -2;
+               color: 0 0 0 255;
+               text {
+                  font: "Sans,Edje-Vera";
+                  size: 10;
+                  min: 0 0;
+                  align: 0.0 0.5;
                }
             }
-            description { state: "selected" 0.0;
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                visible: 1;
-               color: 255 255 255 255;
+               text.min: 1 1;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+            }
+            description { state: "disabled_visible" 0.0;
+               inherit: "default" 0.0;
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               visible: 1;
+               text.min: 1 1;
             }
          }
-         part { name: "disclip";
+         part { name: "events";
             type: RECT;
+            ignore_flags: ON_HOLD;
             description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
+               color: 0 0 0 0;
+            }
+         }
+          part { name: "disabler";
+            type: RECT;
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+               visible: 0;
             }
             description { state: "disabled" 0.0;
                inherit: "default" 0.0;
-               color: 255 255 255 64;
+               visible: 1;
             }
          }
       }
       programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
-         program {
-            name:    "go_active";
-            signal:  "elm,state,selected";
-            source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
+         program { name: "click";
+            signal: "mouse,up,1";
+            source: "events";
+            action: SIGNAL_EMIT "elm,action,radio,toggle" "";
          }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
+         program { name: "radio_on";
+            signal: "elm,state,radio,on";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "radio";
+         }
+         program { name: "radio_off";
+            signal: "elm,state,radio,off";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
+            target: "radio";
          }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.text";
          }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+            target: "elm.text";
+         }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.content";
+         }
+         program { name: "disable";
+            signal: "elm,state,disabled";
+            source: "elm";
+            action: STATE_SET "disabled" 0.0;
+            target: "disabler";
+            after: "disable_text";
+         }
+         program { name: "disable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.text", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "disabled", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "disabled", 0.0);
+            }
+         }
+         program { name: "enable";
+            signal: "elm,state,enabled";
+            source: "elm";
+            action: STATE_SET "default" 0.0;
+            target: "disabler";
+            after: "enable_text";
+         }
+         program { name: "enable_text";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "disabled_visible"))
+                 set_state(PART:"elm.text", "visible", 0.0);
+               else
+                 set_state(PART:"elm.text", "default", 0.0);
+
+               get_state(PART:"elm.swallow.content", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 set_state(PART:"elm.swallow.content", "visible", 0.0);
+               else
+                 set_state(PART:"elm.swallow.content", "default", 0.0);
+            }
          }
       }
    }
-
-   group { name: "elm/genlist/tree/icon_top_text_bottom/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/tree_compress_odd/double_label/default";
+      data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon";
+      data.item: "labels" "elm.text elm.text.sub";
+      data.item: "icons" "elm.swallow.icon elm.swallow.end";
       data.item: "treesize" "20";
 //      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
-         image: "ilist_1.png" COMP;
-         image: "ilist_item_shadow.png" COMP;
+         image: "ilist_2.png" COMP;
          image: "icon_arrow_right.png" COMP;
          image: "icon_arrow_down.png" COMP;
       }
@@ -22988,36 +22839,12 @@ collections {
             }
          }
          part {
-            name: "base_sh";
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 0 10;
-               fixed: 1 1;
-               rel1 {
-                  to: "base";
-                  relative: 0.0 1.0;
-                  offset: 0 0;
-               }
-               rel2 {
-                  to: "base";
-                  relative: 1.0 1.0;
-                  offset: -1 0;
-               }
-               image {
-                  normal: "ilist_item_shadow.png";
-               }
-               fill.smooth: 0;
-            }
-         }
-         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_1.png";
+                  normal: "ilist_2.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -23101,15 +22928,34 @@ collections {
             type: SWALLOW;
             description { state: "default" 0.0;
                fixed: 1 0;
-               align: 0.5 0.5;
+               align: 0.0 0.5;
                rel1 {
                   to_x: "arrow";
                   relative: 1.0  0.0;
                   offset:   4    4;
                }
                rel2 {
+                  to_x: "arrow";
                   relative: 1.0  1.0;
-                  offset:   -4   -5;
+                  offset:   4   -5;
+               }
+            }
+         }
+         part { name: "elm.swallow.end";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 1.0 0.5;
+               aspect: 1.0 1.0;
+               aspect_preference: VERTICAL;
+               rel1 {
+                  relative: 1.0  0.0;
+                  offset:   -5    4;
+               }
+               rel2 {
+                  relative: 1.0  1.0;
+                  offset:   -5   -5;
                }
             }
          }
@@ -23123,22 +22969,23 @@ collections {
                state: "default" 0.0;
 //               min: 16 16;
                rel1 {
-                  to_y:     "elm.swallow.icon";
-                  relative: 0.0  1.0;
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.0;
                   offset:   0 4;
                }
                rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5 -5;
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  0.5;
+                  offset:   -1 -5;
                }
                color: 0 0 0 255;
                color3: 0 0 0 0;
                text {
                   font: "Sans";
                   size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.5 0.5;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
                   text_class: "list_item";
                }
             }
@@ -23148,6 +22995,41 @@ collections {
                color3: 0 0 0 64;
             }
          }
+         part { name: "elm.text.sub";
+            clip_to: "disclip";
+            type:           TEXT;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+//               min: 16 16;
+               rel1 {
+                  to_x:     "elm.swallow.icon";
+                  relative: 1.0  0.5;
+                  offset:   0 4;
+               }
+               rel2 {
+                  to_x:     "elm.swallow.end";
+                  relative: 0.0  1.0;
+                  offset:   -1 -5;
+               }
+               color: 0 0 0 128;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 8;
+//                  min: 1 1;
+                  min: 0 1;
+                  align: 0.0 0.5;
+                  text_class: "list_item";
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               color3: 0 0 0 32;
+            }
+         }
          part { name: "fg1";
             clip_to: "disclip";
             mouse_events: 0;
@@ -23214,6 +23096,7 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
+            target:  "elm.text.sub";
          }
          program {
             name:    "go_passive";
@@ -23224,6 +23107,7 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text";
+            target:  "elm.text.sub";
             transition: LINEAR 0.1;
          }
          program {
@@ -23262,20 +23146,18 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/tree_odd/icon_top_text_bottom/default";
-      data.item: "stacking" "below";
+
+   group { name: "elm/genlist/item_compress/media/default";
+      data.item: "stacking" "above";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text";
-      data.item: "icons" "elm.swallow.icon";
+      data.item: "labels" "elm.text.title elm.text.album-artist";
       data.item: "treesize" "20";
-//      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
-         image: "bt_sm_shine.png" COMP;
-         image: "bt_sm_hilight.png" COMP;
-         image: "ilist_2.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
+         image: "bt_sm_shine.png" COMP;
+         image: "bt_sm_hilight.png" COMP;
+         image: "ilist_1.png" COMP;
+         image: "ilist_item_shadow.png" COMP;
       }
       parts {
          part {
@@ -23288,12 +23170,36 @@ collections {
             }
          }
          part {
+            name: "base_sh";
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 0 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "base";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to: "base";
+                  relative: 1.0 1.0;
+                  offset: -1 0;
+               }
+               image {
+                  normal: "ilist_item_shadow.png";
+               }
+               fill.smooth: 0;
+            }
+         }
+         part {
             name: "base";
             mouse_events: 0;
             description {
                state: "default" 0.0;
                image {
-                  normal: "ilist_2.png";
+                  normal: "ilist_1.png";
                   border: 2 2 2 2;
                }
                fill.smooth: 0;
@@ -23348,80 +23254,65 @@ collections {
                }
             }
          }
-         part { name: "arrow";
+         part { name: "elm.text.title";
             clip_to: "disclip";
-            ignore_flags: ON_HOLD;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
+            type:           TEXT;
+            effect:         SOFT_SHADOW;
+            mouse_events:   0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
                rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
+                  relative: 0.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
+                  relative: 1.0  0.5;
+                  offset:   -1 -5;
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 0 1;
+                  align: 0.0 0.5;
                }
-               image.normal: "icon_arrow_right.png";
             }
-            description { state: "active" 0.0;
+            description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.5 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -4   -5;
-               }
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text";
+         part { name: "elm.text.album-artist";
             clip_to: "disclip";
             type:           TEXT;
-            effect:         SOFT_SHADOW;
             mouse_events:   0;
             scale: 1;
             description {
                state: "default" 0.0;
-//               min: 16 16;
                rel1 {
-                  to_y:     "elm.swallow.icon";
-                  relative: 0.0  1.0;
-                  offset:   0 4;
+                  relative: 0.0  0.5;
+                  offset:   4 4;
                }
                rel2 {
                   relative: 1.0  1.0;
-                  offset:   -5 -5;
+                  offset:   -1 -5;
                }
-               color: 0 0 0 255;
+               color: 0 0 0 128;
                color3: 0 0 0 0;
                text {
                   font: "Sans";
-                  size: 10;
-                  min: 1 1;
-//                  min: 0 1;
-                  align: 0.5 0.5;
-                  text_class: "list_item";
+                  size: 8;
+                  min: 0 1;
+                  align: 0.0 0.5;
                }
             }
             description { state: "selected" 0.0;
                inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+               color: 128 128 128 255;
+               color3: 0 0 0 32;
             }
          }
          part { name: "fg1";
@@ -23486,545 +23377,54 @@ collections {
             signal:  "elm,state,selected";
             source:  "elm";
             action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-         }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text";
-            transition: LINEAR 0.1;
-         }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "disclip";
-         }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
-      }
-   }
-
-
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/check/base/default";
-      images {
-         image: "check_base.png" COMP;
-        image: "check.png" COMP;
-        image: "check2.png" COMP;
-      }
-      parts {
-         part { name: "bg";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.offset: 1 1;
-              rel2.relative: 0.0 1.0;
-              rel2.offset: 1 -2;
-              align: 0.0 0.5;
-              min: 16 16;
-              max: 16 16;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-               image {
-                  normal: "check_base.png";
-                  border: 5 5 5 5;
-                  middle: 0;
-               }
-               fill.smooth : 0;
-           }
-        }
-         part { name: "check";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-               rel1 {
-                  to: "bg";
-                  offset: 1 1;
-               }
-               rel2 {
-                  to: "bg";
-                  offset: -2 -2;
-               }
-               visible: 0;
-               color: 255 255 255 255;
-               image.normal: "check.png";
-           }
-           description { state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-               visible: 0;
-              color: 128 128 128 128;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-              visible: 1;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-          rel1.to_x: "bg";
-              rel1.relative: 1.0 0.0;
-              rel1.offset: 1 1;
-          rel2.to_x: "bg";
-              rel2.offset: 1 -2;
-              rel2.relative: 1.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-          fixed: 1 0;
-              visible: 1;
-              aspect: 1.0 1.0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-          fixed: 1 0;
-              visible: 1;
-              aspect: 1.0 1.0;
-           }
-        }
-         part { name: "elm.text";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 1 1;
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -2 -2;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 1;
-                 align: 0.0 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-         part { name: "events";
-           type: RECT;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program { name: "click";
-           signal: "mouse,up,1";
-           source: "events";
-            action: SIGNAL_EMIT "elm,action,check,toggle" "";
-        }
-        program { name: "check_on";
-           signal: "elm,state,check,on";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "check";
-        }
-        program { name: "check_off";
-           signal: "elm,state,check,off";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "check";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.text";
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.text";
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
-
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "disabled", 0.0);
-
-               get_state(PART:"check", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"check", "disabled_visible", 0.0);
-              else
-                set_state(PART:"check", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
-
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "default", 0.0);
-
-               get_state(PART:"check", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"check", "visible", 0.0);
-              else
-                set_state(PART:"check", "default", 0.0);
-           }
-         }
-      }
-   }
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/radio/base/default";
-      images {
-         image: "radio_base.png" COMP;
-        image: "radio.png" COMP;
-        image: "radio2.png" COMP;
-      }
-      parts {
-         part { name: "bg";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.offset: 1 1;
-              rel2.relative: 0.0 1.0;
-              rel2.offset: 1 -2;
-              align: 0.0 0.5;
-              min: 16 16;
-              max: 16 16;
-              aspect: 1.0 1.0;
-              aspect_preference: VERTICAL;
-               image.normal: "radio_base.png";
-           }
-        }
-         part { name: "radio";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-               rel1.to: "bg";
-               rel2.to: "bg";
-               visible: 0;
-               image.normal: "radio.png";
-           }
-           description { state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           description { state: "default" 0.0;
-               fixed: 1 0;
-              visible: 0;
-              align: 0.0 0.5;
-               color: 0 0 0 0;
-               rel1.to_x: "bg";
-               rel1.relative: 1.0 0.0;
-              rel1.offset: 1 1;
-               rel2.to_x: "bg";
-              rel2.relative: 1.0 1.0;
-              rel2.offset: 2 -2;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-               color: 255 255 255 255;
-              aspect: 1.0 1.0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 128;
-              visible: 1;
-              aspect: 1.0 1.0;
-           }
-        }
-         part { name: "elm.text";
-           type: TEXT;
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              visible: 0;
-              rel1.to_x: "elm.swallow.content";
-              rel1.relative: 1.0 0.0;
-               rel1.offset: 1 1;
-              rel2.relative: 1.0 1.0;
-              rel2.offset: -2 -2;
-              color: 0 0 0 255;
-              text {
-                 font: "Sans,Edje-Vera";
-                 size: 10;
-                 min: 0 0;
-                 align: 0.0 0.5;
-              }
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-              text.min: 1 1;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-           }
-           description { state: "disabled_visible" 0.0;
-              inherit: "default" 0.0;
-              color: 0 0 0 128;
-              color3: 0 0 0 0;
-              visible: 1;
-              text.min: 1 1;
-           }
-        }
-         part { name: "events";
-           type: RECT;
-            ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-        }
-        part { name: "disabler";
-           type: RECT;
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-              visible: 0;
-           }
-           description { state: "disabled" 0.0;
-              inherit: "default" 0.0;
-              visible: 1;
-           }
-        }
-      }
-      programs {
-        program { name: "click";
-           signal: "mouse,up,1";
-           source: "events";
-            action: SIGNAL_EMIT "elm,action,radio,toggle" "";
-        }
-        program { name: "radio_on";
-           signal: "elm,state,radio,on";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "radio";
-        }
-        program { name: "radio_off";
-           signal: "elm,state,radio,off";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "radio";
-        }
-        program { name: "text_show";
-           signal: "elm,state,text,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.text";
-        }
-        program { name: "text_hide";
-           signal: "elm,state,text,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.text";
-        }
-        program { name: "icon_show";
-           signal: "elm,state,icon,visible";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "icon_hide";
-           signal: "elm,state,icon,hidden";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "elm.swallow.content";
-        }
-        program { name: "disable";
-           signal: "elm,state,disabled";
-           source: "elm";
-           action: STATE_SET "disabled" 0.0;
-           target: "disabler";
-            after: "disable_text";
-        }
-         program { name: "disable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.text", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.text", "disabled", 0.0);
-
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "disabled_visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "disabled", 0.0);
-           }
-         }
-        program { name: "enable";
-           signal: "elm,state,enabled";
-           source: "elm";
-           action: STATE_SET "default" 0.0;
-           target: "disabler";
-            after: "enable_text";
-        }
-         program { name: "enable_text";
-           script {
-              new st[31];
-              new Float:vl;
-              get_state(PART:"elm.text", st, 30, vl);
-              if (!strcmp(st, "disabled_visible"))
-                set_state(PART:"elm.text", "visible", 0.0);
-              else
-                set_state(PART:"elm.text", "default", 0.0);
-
-               get_state(PART:"elm.swallow.content", st, 30, vl);
-              if (!strcmp(st, "visible"))
-                set_state(PART:"elm.swallow.content", "visible", 0.0);
-              else
-                set_state(PART:"elm.swallow.content", "default", 0.0);
-           }
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text.title";
+            target:  "elm.text.album-artist";
+         }
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            target:  "elm.text.title";
+            target:  "elm.text.album-artist";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
          }
       }
    }
-   group { name: "elm/genlist/tree_compress_odd/double_label/default";
+   group { name: "elm/genlist/item_compress_odd/media/default";
       data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text elm.text.sub";
-      data.item: "icons" "elm.swallow.icon elm.swallow.end";
+      data.item: "labels" "elm.text.title elm.text.album-artist";
       data.item: "treesize" "20";
-//      data.item: "states" "";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_2.png" COMP;
-         image: "icon_arrow_right.png" COMP;
-         image: "icon_arrow_down.png" COMP;
       }
       parts {
-         part {
-            name:           "event";
-            type:           RECT;
+         part { name: "event";
+            type: RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -24092,67 +23492,7 @@ collections {
                }
             }
          }
-         part { name: "arrow";
-            clip_to: "disclip";
-            ignore_flags: ON_HOLD;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               aspect: 1.0 1.0;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
-               }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
-               }
-               image.normal: "icon_arrow_right.png";
-            }
-            description { state: "active" 0.0;
-               inherit: "default" 0.0;
-               image.normal: "icon_arrow_down.png";
-            }
-         }
-         part { name: "elm.swallow.icon";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  to_x: "arrow";
-                  relative: 1.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  to_x: "arrow";
-                  relative: 1.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.end";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 1.0 0.5;
-               aspect: 1.0 1.0;
-               aspect_preference: VERTICAL;
-               rel1 {
-                  relative: 1.0  0.0;
-                  offset:   -5    4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -5   -5;
-               }
-            }
-         }
-         part { name: "elm.text";
+         part { name: "elm.text.title";
             clip_to: "disclip";
             type:           TEXT;
             effect:         SOFT_SHADOW;
@@ -24160,15 +23500,12 @@ collections {
             scale: 1;
             description {
                state: "default" 0.0;
-//               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.0;
-                  offset:   0 4;
+                  relative: 0.0  0.0;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  0.5;
+                  relative: 1.0  0.5;
                   offset:   -1 -5;
                }
                color: 0 0 0 255;
@@ -24176,10 +23513,8 @@ collections {
                text {
                   font: "Sans";
                   size: 10;
-//                  min: 1 1;
                   min: 0 1;
                   align: 0.0 0.5;
-                  text_class: "list_item";
                }
             }
             description { state: "selected" 0.0;
@@ -24188,22 +23523,19 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.sub";
+         part { name: "elm.text.album-artist";
             clip_to: "disclip";
             type:           TEXT;
             mouse_events:   0;
             scale: 1;
             description {
                state: "default" 0.0;
-//               min: 16 16;
                rel1 {
-                  to_x:     "elm.swallow.icon";
-                  relative: 1.0  0.5;
-                  offset:   0 4;
+                  relative: 0.0  0.5;
+                  offset:   4 4;
                }
                rel2 {
-                  to_x:     "elm.swallow.end";
-                  relative: 0.0  1.0;
+                  relative: 1.0  1.0;
                   offset:   -1 -5;
                }
                color: 0 0 0 128;
@@ -24211,10 +23543,8 @@ collections {
                text {
                   font: "Sans";
                   size: 8;
-//                  min: 1 1;
                   min: 0 1;
                   align: 0.0 0.5;
-                  text_class: "list_item";
                }
             }
             description { state: "selected" 0.0;
@@ -24288,8 +23618,8 @@ collections {
             target:  "bg";
             target:  "fg1";
             target:  "fg2";
-            target:  "elm.text";
-            target:  "elm.text.sub";
+            target:  "elm.text.title";
+            target:  "elm.text.album-artist";
          }
          program {
             name:    "go_passive";
@@ -24299,8 +23629,8 @@ collections {
             target:  "bg";
             target:  "fg1";
             target:  "fg2";
-            target:  "elm.text";
-            target:  "elm.text.sub";
+            target:  "elm.text.title";
+            target:  "elm.text.album-artist";
             transition: LINEAR 0.1;
          }
          program {
@@ -24317,33 +23647,14 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
-         program {
-            name:    "expand";
-            signal:  "mouse,up,1";
-            source:  "arrow";
-            action:  SIGNAL_EMIT "elm,action,expand,toggle" "elm";
-         }
-         program {
-            name:    "go_expanded";
-            signal:  "elm,state,expanded";
-            source:  "elm";
-            action:  STATE_SET "active" 0.0;
-            target:  "arrow";
-         }
-         program {
-            name:    "go_contracted";
-            signal:  "elm,state,contracted";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "arrow";
-         }
       }
    }
 
-   group { name: "elm/genlist/item_compress/media/default";
+   group { name: "elm/genlist/item_compress/media-album/default";
       data.item: "stacking" "above";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.album-artist";
+      data.item: "labels" "elm.text.title elm.text.trackno elm.text.length";
+      data.item: "states" "elm.state.trackno";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
@@ -24352,10 +23663,13 @@ collections {
          image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
       }
+      script {
+         public dot_visible;
+      }
       parts {
          part {
-            name:           "event";
-            type:           RECT;
+            name: "event";
+            type: RECT;
             repeat_events: 1;
             description {
                state: "default" 0.0;
@@ -24447,6 +23761,97 @@ collections {
                }
             }
          }
+         part {
+            name: "elm.text.trackno";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+               align: 0.0 0.0;
+               fixed: 1 0;
+               rel1 {
+                  to_y: "elm.text.title";
+                  relative: 0.0 0.0;
+                  offset: 5 0;
+               }
+               rel2 {
+                  to_y: "elm.text.title";
+                  relative: 0.0 1.0;
+                  offset: 20 0;
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 1.0 0.5;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+            }
+         }
+         part {
+            name: "dot";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+               visible: 0;
+               fixed: 1 1;
+               align: 0.0 0.0;
+               rel1 {
+                  to_x: "elm.text.trackno";
+                  to_y: "elm.text.title";
+                  relative: 1.0 0.0;
+                  offset: 1 0;
+               }
+               rel2 {
+                  to_x: "elm.text.trackno";
+                  to_y: "elm.text.title";
+                  relative: 1.0 1.0;
+                  offset: 1 0;
+
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.0 0.5;
+                  text: ".";
+               }
+            }
+            description {
+               state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               visible: 1;
+            }
+         }
+         programs {
+            program {
+               signal: "elm,state,elm.state.trackno,active";
+               source: "elm";
+               script {
+                  set_state(PART:"dot", "visible", 0.0);
+                  set_int(dot_visible, 1);
+               }
+            }
+         }
          part { name: "elm.text.title";
             clip_to: "disclip";
             type:           TEXT;
@@ -24456,6 +23861,7 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
+                  to_x: "dot";
                   relative: 0.0  0.0;
                   offset:   4 4;
                }
@@ -24478,7 +23884,7 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.album-artist";
+         part { name: "elm.text.length";
             clip_to: "disclip";
             type:           TEXT;
             mouse_events:   0;
@@ -24574,7 +23980,16 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.album-artist";
+            target:  "elm.text.trackno";
+            target:  "elm.text.length";
+            after:   "dot_active";
+         }
+         program {
+            name: "dot_active";
+            script {
+               if (get_int(dot_visible) == 1)
+                  set_state(PART:"dot", "selected", 0.0);
+            }
          }
          program {
             name:    "go_passive";
@@ -24585,8 +24000,17 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.album-artist";
+            target:  "elm.text.length";
+            target:  "elm.text.trackno";
             transition: LINEAR 0.1;
+            after:   "dot_passive";
+         }
+         program {
+            name: "dot_passive";
+            script {
+               if (get_int(dot_visible) == 1)
+                  set_state(PART:"dot", "visible", 0.0);
+            }
          }
          program {
             name:    "go_disabled";
@@ -24604,10 +24028,11 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/media/default";
+   group { name: "elm/genlist/item_compress_odd/media-album/default";
       data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.album-artist";
+      data.item: "labels" "elm.text.title elm.text.trackno elm.text.length";
+      data.item: "states" "elm.state.trackno";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
@@ -24615,6 +24040,9 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_2.png" COMP;
       }
+      script {
+         public dot_visible;
+      }
       parts {
          part { name: "event";
             type: RECT;
@@ -24685,6 +24113,97 @@ collections {
                }
             }
          }
+         part {
+            name: "elm.text.trackno";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+               align: 0.0 0.0;
+               fixed: 1 0;
+               rel1 {
+                  to_y: "elm.text.title";
+                  relative: 0.0 0.0;
+                  offset: 5 0;
+               }
+               rel2 {
+                  to_y: "elm.text.title";
+                  relative: 0.0 1.0;
+                  offset: 20 0;
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 1.0 0.5;
+               }
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+            }
+         }
+         part {
+            name: "dot";
+            type: TEXT;
+            scale: 1;
+            mouse_events: 0;
+            description {
+               state: "default" 0.0;
+               color: 255 255 255 255;
+               visible: 0;
+               fixed: 1 1;
+               align: 0.0 0.0;
+               rel1 {
+                  to_x: "elm.text.trackno";
+                  to_y: "elm.text.title";
+                  relative: 1.0 0.0;
+                  offset: 1 0;
+               }
+               rel2 {
+                  to_x: "elm.text.trackno";
+                  to_y: "elm.text.title";
+                  relative: 1.0 1.0;
+                  offset: 1 0;
+
+               }
+               color: 0 0 0 255;
+               color3: 0 0 0 0;
+               text {
+                  font: "Sans";
+                  size: 10;
+                  min: 1 1;
+                  align: 0.0 0.5;
+                  text: ".";
+               }
+            }
+            description {
+               state: "visible" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               visible: 1;
+            }
+         }
+         programs {
+            program {
+               signal: "elm,state,elm.state.trackno,active";
+               source: "elm";
+               script {
+                  set_state(PART:"dot", "visible", 0.0);
+                  set_int(dot_visible, 1);
+               }
+            }
+         }
          part { name: "elm.text.title";
             clip_to: "disclip";
             type:           TEXT;
@@ -24694,7 +24213,8 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
-                  relative: 0.0  0.0;
+                  to_x: "dot";
+                  relative: 1.0  0.0;
                   offset:   4 4;
                }
                rel2 {
@@ -24716,7 +24236,7 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.album-artist";
+         part { name: "elm.text.length";
             clip_to: "disclip";
             type:           TEXT;
             mouse_events:   0;
@@ -24812,7 +24332,16 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.album-artist";
+            target:  "elm.text.length";
+            target:  "elm.text.trackno";
+            after:   "dot_active";
+         }
+         program {
+            name: "dot_active";
+            script {
+               if (get_int(dot_visible) == 1)
+                  set_state(PART:"dot", "selected", 0.0);
+            }
          }
          program {
             name:    "go_passive";
@@ -24823,8 +24352,17 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.album-artist";
+            target:  "elm.text.length";
+            target:  "elm.text.trackno";
             transition: LINEAR 0.1;
+            after:   "dot_passive";
+         }
+         program {
+            name: "dot_passive";
+            script {
+               if (get_int(dot_visible) == 1)
+                  set_state(PART:"dot", "visible", 0.0);
+            }
          }
          program {
             name:    "go_disabled";
@@ -24843,11 +24381,11 @@ collections {
       }
    }
 
-   group { name: "elm/genlist/item_compress/media-album/default";
+   group { name: "elm/genlist/item_compress/media-preview/default";
       data.item: "stacking" "above";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.trackno elm.text.length";
-      data.item: "states" "elm.state.trackno";
+      data.item: "labels" "elm.text.title elm.text.artist";
+      data.item: "icons" "elm.swallow.preview";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
@@ -24856,9 +24394,6 @@ collections {
          image: "ilist_1.png" COMP;
          image: "ilist_item_shadow.png" COMP;
       }
-      script {
-         public dot_visible;
-      }
       parts {
          part {
             name: "event";
@@ -24954,94 +24489,23 @@ collections {
                }
             }
          }
-         part {
-            name: "elm.text.trackno";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-               align: 0.0 0.0;
+         part { name: "elm.swallow.preview";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 1 0;
-               rel1 {
-                  to_y: "elm.text.title";
-                  relative: 0.0 0.0;
-                  offset: 5 0;
-               }
-               rel2 {
-                  to_y: "elm.text.title";
-                  relative: 0.0 1.0;
-                  offset: 20 0;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-                  align: 1.0 0.5;
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part {
-            name: "dot";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-               visible: 0;
-               fixed: 1 1;
-               align: 0.0 0.0;
-               rel1 {
-                  to_x: "elm.text.trackno";
-                  to_y: "elm.text.title";
-                  relative: 1.0 0.0;
-                  offset: 1 0;
-               }
-               rel2 {
-                  to_x: "elm.text.trackno";
-                  to_y: "elm.text.title";
-                  relative: 1.0 1.0;
-                  offset: 1 0;
-
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-                  align: 0.0 0.5;
-                  text: ".";
-               }
-            }
-            description {
-               state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-               visible: 1;
-            }
-         }
-         programs {
-            program {
-               signal: "elm,state,elm.state.trackno,active";
-               source: "elm";
-               script {
-                  set_state(PART:"dot", "visible", 0.0);
-                  set_int(dot_visible, 1);
+               align: 0.0 0.5;
+               min: 68 68;
+               max: 68 68;
+               rel1 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
+               }
+               rel2 {
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
                }
             }
          }
@@ -25054,8 +24518,8 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
-                  to_x: "dot";
-                  relative: 0.0  0.0;
+                  to_x:     "elm.swallow.preview";
+                  relative: 1.0  0.0;
                   offset:   4 4;
                }
                rel2 {
@@ -25077,7 +24541,7 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.length";
+         part { name: "elm.text.artist";
             clip_to: "disclip";
             type:           TEXT;
             mouse_events:   0;
@@ -25085,7 +24549,8 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
-                  relative: 0.0  0.5;
+                  to_x:     "elm.swallow.preview";
+                  relative: 1.0  0.5;
                   offset:   4 4;
                }
                rel2 {
@@ -25173,16 +24638,7 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.trackno";
-            target:  "elm.text.length";
-            after:   "dot_active";
-         }
-         program {
-            name: "dot_active";
-            script {
-               if (get_int(dot_visible) == 1)
-                  set_state(PART:"dot", "selected", 0.0);
-            }
+            target:  "elm.text.artist";
          }
          program {
             name:    "go_passive";
@@ -25193,17 +24649,8 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.length";
-            target:  "elm.text.trackno";
+            target:  "elm.text.artist";
             transition: LINEAR 0.1;
-            after:   "dot_passive";
-         }
-         program {
-            name: "dot_passive";
-            script {
-               if (get_int(dot_visible) == 1)
-                  set_state(PART:"dot", "visible", 0.0);
-            }
          }
          program {
             name:    "go_disabled";
@@ -25221,11 +24668,11 @@ collections {
          }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/media-album/default";
+   group { name: "elm/genlist/item_compress_odd/media-preview/default";
       data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.trackno elm.text.length";
-      data.item: "states" "elm.state.trackno";
+      data.item: "labels" "elm.text.title elm.text.artist";
+      data.item: "icons" "elm.swallow.preview";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
@@ -25233,9 +24680,6 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_2.png" COMP;
       }
-      script {
-         public dot_visible;
-      }
       parts {
          part { name: "event";
             type: RECT;
@@ -25306,94 +24750,23 @@ collections {
                }
             }
          }
-         part {
-            name: "elm.text.trackno";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-               align: 0.0 0.0;
+         part { name: "elm.swallow.preview";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
                fixed: 1 0;
+               align: 0.0 0.5;
+               min: 68 68;
+               max: 68 68;
                rel1 {
-                  to_y: "elm.text.title";
-                  relative: 0.0 0.0;
-                  offset: 5 0;
-               }
-               rel2 {
-                  to_y: "elm.text.title";
-                  relative: 0.0 1.0;
-                  offset: 20 0;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-                  align: 1.0 0.5;
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part {
-            name: "dot";
-            type: TEXT;
-            scale: 1;
-            mouse_events: 0;
-            description {
-               state: "default" 0.0;
-               color: 255 255 255 255;
-               visible: 0;
-               fixed: 1 1;
-               align: 0.0 0.0;
-               rel1 {
-                  to_x: "elm.text.trackno";
-                  to_y: "elm.text.title";
-                  relative: 1.0 0.0;
-                  offset: 1 0;
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  0.0;
+                  offset:   -1    4;
                }
                rel2 {
-                  to_x: "elm.text.trackno";
-                  to_y: "elm.text.title";
-                  relative: 1.0 1.0;
-                  offset: 1 0;
-
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 1 1;
-                  align: 0.0 0.5;
-                  text: ".";
-               }
-            }
-            description {
-               state: "visible" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-               visible: 1;
-            }
-         }
-         programs {
-            program {
-               signal: "elm,state,elm.state.trackno,active";
-               source: "elm";
-               script {
-                  set_state(PART:"dot", "visible", 0.0);
-                  set_int(dot_visible, 1);
+                  to_x: "elm.swallow.pad";
+                  relative: 1.0  1.0;
+                  offset:   -1   -5;
                }
             }
          }
@@ -25406,7 +24779,7 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
-                  to_x: "dot";
+                  to_x:     "elm.swallow.preview";
                   relative: 1.0  0.0;
                   offset:   4 4;
                }
@@ -25429,7 +24802,7 @@ collections {
                color3: 0 0 0 64;
             }
          }
-         part { name: "elm.text.length";
+         part { name: "elm.text.artist";
             clip_to: "disclip";
             type:           TEXT;
             mouse_events:   0;
@@ -25437,7 +24810,8 @@ collections {
             description {
                state: "default" 0.0;
                rel1 {
-                  relative: 0.0  0.5;
+                  to_x:     "elm.swallow.preview";
+                  relative: 1.0  0.5;
                   offset:   4 4;
                }
                rel2 {
@@ -25525,16 +24899,7 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.length";
-            target:  "elm.text.trackno";
-            after:   "dot_active";
-         }
-         program {
-            name: "dot_active";
-            script {
-               if (get_int(dot_visible) == 1)
-                  set_state(PART:"dot", "selected", 0.0);
-            }
+            target:  "elm.text.artist";
          }
          program {
             name:    "go_passive";
@@ -25545,17 +24910,8 @@ collections {
             target:  "fg1";
             target:  "fg2";
             target:  "elm.text.title";
-            target:  "elm.text.length";
-            target:  "elm.text.trackno";
+            target:  "elm.text.artist";
             transition: LINEAR 0.1;
-            after:   "dot_passive";
-         }
-         program {
-            name: "dot_passive";
-            script {
-               if (get_int(dot_visible) == 1)
-                  set_state(PART:"dot", "visible", 0.0);
-            }
          }
          program {
             name:    "go_disabled";
@@ -25574,19 +24930,21 @@ collections {
       }
    }
 
-   group { name: "elm/genlist/item_compress/media-preview/default";
-      data.item: "stacking" "above";
+   group { name: "elm/genlist/item/mode/default";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.artist";
-      data.item: "icons" "elm.swallow.preview";
+      data.item: "labels" "elm.text.mode";
+      data.item: "icons" "elm.swallow.mode";
+      data.item: "mode_part" "elm.swallow.origin";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
          image: "bt_sm_shine.png" COMP;
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_1.png" COMP;
+         image: "ilist_2.png" COMP;
          image: "ilist_item_shadow.png" COMP;
       }
+
       parts {
          part {
             name: "event";
@@ -25620,6 +24978,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
          }
          part {
             name: "base";
@@ -25632,6 +24995,11 @@ collections {
                }
                fill.smooth: 0;
             }
+            description {
+               state: "default" 1.0;
+               inherit: "default" 0.0;
+               image.normal: "ilist_2.png";
+            }
          }
          part { name: "bg";
             clip_to: "disclip";
@@ -25653,6 +25021,9 @@ collections {
                }
                image.middle: SOLID;
             }
+            description { state: "default" 0.1;
+               inherit: "default" 0.0;
+            }
             description { state: "selected" 0.0;
                inherit: "default" 0.0;
                visible: 1;
@@ -25663,106 +25034,35 @@ collections {
                }
                rel2 {
                   relative: 1.0 1.0;
-                  offset: 1 1;
-               }
-            }
-         }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.preview";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               min: 68 68;
-               max: 68 68;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
-               }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
-               }
-            }
-         }
-         part { name: "elm.text.title";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               rel1 {
-                  to_x:     "elm.swallow.preview";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  relative: 1.0  0.5;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 0 1;
-                  align: 0.0 0.5;
+                  offset: 1 1;
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
+            description {
+               state: "selected" 1.0;
+               inherit: "selected" 0.0;
             }
          }
-         part { name: "elm.text.artist";
+         part { name: "elm.text.mode";
             clip_to: "disclip";
-            type:           TEXT;
-            mouse_events:   0;
+            type: TEXT;
             scale: 1;
-            description {
-               state: "default" 0.0;
-               rel1 {
-                  to_x:     "elm.swallow.preview";
-                  relative: 1.0  0.5;
-                  offset:   4 4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 128;
-               color3: 0 0 0 0;
+            description { state: "default" 0.0;
+               rel2.relative: 0.5 1.0;
+               color: 0 0 0 255;
                text {
                   font: "Sans";
-                  size: 8;
-                  min: 0 1;
-                  align: 0.0 0.5;
+                  size: 10;
+                  min: 1 1;
+                  align: -1.0 0.5;
+                  text_class: "list_item";
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 128 128 128 255;
-               color3: 0 0 0 32;
+         }
+        part { name: "elm.swallow.mode";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.5 0.0;
             }
          }
          part { name: "fg1";
@@ -25784,6 +25084,12 @@ collections {
                visible: 1;
                color: 255 255 255 255;
             }
+            description {
+               state: "selected" 1.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
          }
          part { name: "fg2";
             clip_to: "disclip";
@@ -25803,6 +25109,79 @@ collections {
                visible: 1;
                color: 255 255 255 255;
             }
+            description {
+               state: "selected" 1.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
+         // Transparent part between base parts and slidable parts
+         part { name: "event_block_layer";
+            type: RECT;
+            clip_to: "disclip";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               color: 0 0 0 0;
+            }
+            description { state: "repeat_events" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "pers";
+            clip_to: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 1.0;
+            }
+         }
+         part { name: "elm.swallow.origin";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+            }
+            description { state: "slide" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1 0;
+               rel2.relative: 2 1;
+            }
+            description { state: "rotate" 0.0;
+               inherit: "default" 0.0;
+               map {
+                  perspective: "pers";
+                  on: 1;
+                  smooth: 1;
+                  perspective_on: 1;
+                  backface_cull: 1;
+                  rotation {
+                     center: "pers";
+                     x: 0.0;
+                     y: 0.0;
+                     z: 0.0;
+                  }
+               }
+            }
+            description { state: "rotate" 1.0;
+               inherit: "default" 0.0;
+               map {
+                  perspective: "pers";
+                  on: 1;
+                  smooth: 1;
+                  perspective_on: 1;
+                  backface_cull: 1;
+                  rotation {
+                     center: "pers";
+                     x: 90.0;
+                     y: 0.0;
+                     z: 0.0;
+                  }
+               }
+            }
          }
          part { name: "disclip";
             type: RECT;
@@ -25817,33 +25196,47 @@ collections {
          }
       }
       programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
+         program {
+            name:    "odd";
+            signal:  "elm,state,odd";
+            source:  "elm";
+            action:  STATE_SET "default" 1.0;
+            target:  "base_sh";
+            target:  "base";
+         }
+         program {
+            name:    "even";
+            signal:  "elm,state,even";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "base_sh";
+            target:  "base";
+         }
          program {
             name:    "go_active";
             signal:  "elm,state,selected";
             source:  "elm";
-            action:  STATE_SET "selected" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text.title";
-            target:  "elm.text.artist";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"base", st, 30, vl);
+               set_state(PART:"bg", "selected", vl);
+               set_state(PART:"fg1", "selected", vl);
+               set_state(PART:"fg2", "selected", vl);
+            }
          }
          program {
             name:    "go_passive";
             signal:  "elm,state,unselected";
             source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text.title";
-            target:  "elm.text.artist";
-            transition: LINEAR 0.1;
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"base", st, 30, vl);
+               set_state(PART:"bg", "default", vl);
+               set_state(PART:"fg1", "default", vl);
+               set_state(PART:"fg2", "default", vl);
+            }
          }
          program {
             name:    "go_disabled";
@@ -25859,13 +25252,88 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
+         program {
+            name:    "slide_right";
+            signal:  "elm,state,slide,active";
+            source:  "elm";
+            action:  STATE_SET "slide" 0.0;
+            target:  "elm.swallow.origin";
+            transition: ACCELERATE 0.5;
+            after:   "unblock_event";
+         }
+         program {
+            name:    "unblock_event";
+            action:  STATE_SET "repeat_events" 0.0;
+            target:  "event_block_layer";
+         }
+         program {
+            name:    "slide_left";
+            signal:  "elm,state,slide,passive";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "event_block_layer";
+            after:   "slide_left2";
+         }
+         program {
+            name:    "slide_left2";
+            action:  STATE_SET "default" 0.0;
+            target:  "elm.swallow.origin";
+            transition: DECELERATE 0.5;
+            after:   "slide_left_finished";
+         }
+         program {
+            name:    "slide_left_finished";
+            action:  SIGNAL_EMIT "elm,state,slide,passive,finished" "elm";
+         }
+         program {
+            name:    "rotate_on";
+            signal:  "elm,state,rotate,active";
+            source:  "elm";
+            action:  STATE_SET "rotate" 0.0;
+            target:  "elm.swallow.origin";
+            after:   "rotate_on2";
+         }
+         program {
+            name:    "rotate_on2";
+            action:  STATE_SET "rotate" 1.0;
+            target:  "elm.swallow.origin";
+            transition: LINEAR 0.5;
+            after:   "unblock_event";
+         }
+         program {
+            name:    "rotate_off";
+            signal:  "elm,state,rotate,passive";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "event_block_layer";
+            after:   "rotate_off2";
+         }
+         program {
+            name:    "rotate_off2";
+            action:  STATE_SET "rotate" 0.0;
+            transition: LINEAR 0.5;
+            target:  "elm.swallow.origin";
+            after:   "rotate_off3";
+         }
+         program {
+            name:    "rotate_off3";
+            action:  STATE_SET "default" 0.0;
+            target:  "elm.swallow.origin";
+            after:   "rotate_off_finished";
+         }
+         program {
+            name:    "rotate_off_finished";
+            action:  SIGNAL_EMIT "elm,state,rotate,passive,finished" "elm";
+         }
       }
    }
-   group { name: "elm/genlist/item_compress_odd/media-preview/default";
+
+   group { name: "elm/genlist/item_odd/mode/default";
       data.item: "stacking" "below";
       data.item: "selectraise" "on";
-      data.item: "labels" "elm.text.title elm.text.artist";
-      data.item: "icons" "elm.swallow.preview";
+      data.item: "labels" "elm.text.mode";
+      data.item: "icons" "elm.swallow.mode";
+      data.item: "mode_part" "elm.swallow.origin";
       data.item: "treesize" "20";
       images {
          image: "bt_sm_base1.png" COMP;
@@ -25873,8 +25341,10 @@ collections {
          image: "bt_sm_hilight.png" COMP;
          image: "ilist_2.png" COMP;
       }
+
       parts {
-         part { name: "event";
+         part {
+            name: "event";
             type: RECT;
             repeat_events: 1;
             description {
@@ -25928,102 +25398,27 @@ collections {
                }
             }
          }
-         part { name: "elm.swallow.pad";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               rel1 {
-                  relative: 0.0  0.0;
-                  offset:   4    4;
-               }
-               rel2 {
-                  relative: 0.0  1.0;
-                  offset:   4   -5;
-               }
-            }
-         }
-         part { name: "elm.swallow.preview";
-            clip_to: "disclip";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               fixed: 1 0;
-               align: 0.0 0.5;
-               min: 68 68;
-               max: 68 68;
-               rel1 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  0.0;
-                  offset:   -1    4;
-               }
-               rel2 {
-                  to_x: "elm.swallow.pad";
-                  relative: 1.0  1.0;
-                  offset:   -1   -5;
-               }
-            }
-         }
-         part { name: "elm.text.title";
-            clip_to: "disclip";
-            type:           TEXT;
-            effect:         SOFT_SHADOW;
-            mouse_events:   0;
-            scale: 1;
-            description {
-               state: "default" 0.0;
-               rel1 {
-                  to_x:     "elm.swallow.preview";
-                  relative: 1.0  0.0;
-                  offset:   4 4;
-               }
-               rel2 {
-                  relative: 1.0  0.5;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 255;
-               color3: 0 0 0 0;
-               text {
-                  font: "Sans";
-                  size: 10;
-                  min: 0 1;
-                  align: 0.0 0.5;
-               }
-            }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 224 224 224 255;
-               color3: 0 0 0 64;
-            }
-         }
-         part { name: "elm.text.artist";
+         part { name: "elm.text.mode";
             clip_to: "disclip";
-            type:           TEXT;
-            mouse_events:   0;
+            type: TEXT;
             scale: 1;
-            description {
-               state: "default" 0.0;
-               rel1 {
-                  to_x:     "elm.swallow.preview";
-                  relative: 1.0  0.5;
-                  offset:   4 4;
-               }
-               rel2 {
-                  relative: 1.0  1.0;
-                  offset:   -1 -5;
-               }
-               color: 0 0 0 128;
-               color3: 0 0 0 0;
+            description { state: "default" 0.0;
+               rel2.relative: 0.5 1.0;
+               color: 0 0 0 255;
                text {
                   font: "Sans";
-                  size: 8;
-                  min: 0 1;
-                  align: 0.0 0.5;
+                  size: 10;
+                  min: 1 1;
+                  align: 0.5 0.5;
+                  text_class: "list_item";
                }
             }
-            description { state: "selected" 0.0;
-               inherit: "default" 0.0;
-               color: 128 128 128 255;
-               color3: 0 0 0 32;
+         }
+        part { name: "elm.swallow.mode";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1.relative: 0.5 0.0;
             }
          }
          part { name: "fg1";
@@ -26065,6 +25460,73 @@ collections {
                color: 255 255 255 255;
             }
          }
+         // Transparent part between base parts and slidable parts
+         part { name: "event_block_layer";
+            type: RECT;
+            clip_to: "disclip";
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               color: 0 0 0 0;
+            }
+            description { state: "repeat_events" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "pers";
+            clip_to: "disclip";
+            type: RECT;
+            description { state: "default" 0.0;
+               rel1.relative: 0.0 1.0;
+            }
+         }
+         part { name: "elm.swallow.origin";
+            clip_to: "disclip";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               fixed: 1 0;
+               align: 0.0 0.5;
+            }
+            description { state: "slide" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1 0;
+               rel2.relative: 2 1;
+            }
+            description { state: "rotate" 0.0;
+               inherit: "default" 0.0;
+               map {
+                  perspective: "pers";
+                  on: 1;
+                  smooth: 1;
+                  perspective_on: 1;
+                  backface_cull: 1;
+                  rotation {
+                     center: "pers";
+                     x: 0.0;
+                     y: 0.0;
+                     z: 0.0;
+                  }
+               }
+            }
+            description { state: "rotate" 1.0;
+               inherit: "default" 0.0;
+               map {
+                  perspective: "pers";
+                  on: 1;
+                  smooth: 1;
+                  perspective_on: 1;
+                  backface_cull: 1;
+                  rotation {
+                     center: "pers";
+                     x: 90.0;
+                     y: 0.0;
+                     z: 0.0;
+                  }
+               }
+            }
+         }
          part { name: "disclip";
             type: RECT;
             description { state: "default" 0.0;
@@ -26078,11 +25540,6 @@ collections {
          }
       }
       programs {
-         // signal: elm,state,%s,active
-         //   a "check" item named %s went active
-         // signal: elm,state,%s,passive
-         //   a "check" item named %s went passive
-         // default is passive
          program {
             name:    "go_active";
             signal:  "elm,state,selected";
@@ -26091,520 +25548,589 @@ collections {
             target:  "bg";
             target:  "fg1";
             target:  "fg2";
-            target:  "elm.text.title";
-            target:  "elm.text.artist";
          }
-         program {
-            name:    "go_passive";
-            signal:  "elm,state,unselected";
-            source:  "elm";
-            action:  STATE_SET "default" 0.0;
-            target:  "bg";
-            target:  "fg1";
-            target:  "fg2";
-            target:  "elm.text.title";
-            target:  "elm.text.artist";
-            transition: LINEAR 0.1;
+         program {
+            name:    "go_passive";
+            signal:  "elm,state,unselected";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "bg";
+            target:  "fg1";
+            target:  "fg2";
+            transition: LINEAR 0.1;
+         }
+         program {
+            name:    "go_disabled";
+            signal:  "elm,state,disabled";
+            source:  "elm";
+            action:  STATE_SET "disabled" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "go_enabled";
+            signal:  "elm,state,enabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "disclip";
+         }
+         program {
+            name:    "slide_right";
+            signal:  "elm,state,slide,active";
+            source:  "elm";
+            action:  STATE_SET "slide" 0.0;
+            target:  "elm.swallow.origin";
+            transition: ACCELERATE 0.5;
+            after:   "unblock_event";
+         }
+         program {
+            name:    "unblock_event";
+            action:  STATE_SET "repeat_events" 0.0;
+            target:  "event_block_layer";
+         }
+         program {
+            name:    "slide_left";
+            signal:  "elm,state,slide,passive";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:   "event_block_layer";
+            after:   "slide_left2";
+         }
+         program {
+            name:    "slide_left2";
+            action:  STATE_SET "default" 0.0;
+            target:  "elm.swallow.origin";
+            transition: DECELERATE 0.5;
+            after:   "slide_left_finished";
+         }
+         program {
+            name:    "slide_left_finished";
+            action:  SIGNAL_EMIT "elm,state,slide,passive,finished" "elm";
+         }
+         program {
+            name:    "rotate_on";
+            signal:  "elm,state,rotate,active";
+            source:  "elm";
+            action:  STATE_SET "rotate" 0.0;
+            target:  "elm.swallow.origin";
+            after:   "rotate_on2";
+         }
+         program {
+            name:    "rotate_on2";
+            action:  STATE_SET "rotate" 1.0;
+            target:  "elm.swallow.origin";
+            transition: LINEAR 0.5;
+            after:   "unblock_event";
+         }
+         program {
+            name:    "rotate_off";
+            signal:  "elm,state,rotate,passive";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "event_block_layer";
+            after:   "rotate_off2";
+         }
+         program {
+            name:    "rotate_off2";
+            action:  STATE_SET "rotate" 0.0;
+            transition: LINEAR 0.5;
+            target:  "elm.swallow.origin";
+            after:   "rotate_off3";
+         }
+         program {
+            name:    "rotate_off3";
+            action:  STATE_SET "default" 0.0;
+            target:  "elm.swallow.origin";
+            after:   "rotate_off_finished";
+         }
+         program {
+            name:    "rotate_off_finished";
+            action:  SIGNAL_EMIT "elm,state,rotate,passive,finished" "elm";
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/pager/base/default";
+      data.item: "onshow" "raise";
+// other options
+//      data.item: "onhide" "lower";
+//      data.item: "onshow" "lower";
+      images {
+         image: "frame_1.png" COMP;
+         image: "frame_2.png" COMP;
+         image: "dia_grad.png" COMP;
+      }
+      parts {
+         part { name: "clip";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1 {
+                  to: "base";
+                  offset: -9999 -9999;
+               }
+               rel2 {
+                  to: "base";
+                  offset: 9999 9999;
+               }
+               color: 255 255 255 255;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
+               visible: 0;
+            }
+         }
+         part { name: "base0";
+            mouse_events:  0;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               image.normal: "dia_grad.png";
+               rel1.to: "over";
+               rel2.to: "over";
+               fill {
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
+                     offset: 64 0;
+                  }
+               }
+            }
+         }
+         part { name: "base";
+            mouse_events:  0;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               image {
+                  normal: "frame_2.png";
+                  border: 5 5 32 26;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: -1.0 0.0;
+               rel2.relative: 0.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+            }
+         }
+         part { name: "over";
+            mouse_events:  0;
+            clip_to: "clip";
+            description { state:    "default" 0.0;
+               rel1 {
+                  to: "base";
+                  offset: 4 4;
+               }
+               rel2 {
+                  to: "base";
+                  offset: -5 -5;
+               }
+               image {
+                  normal: "frame_1.png";
+                  border: 2 2 28 22;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               rel1 {
+                  to: "base";
+                  offset: 8 8;
+               }
+               rel2 {
+                  to: "base";
+                  offset: -9 -9;
+               }
+            }
+         }
+      }
+      programs {
+         program { name: "push_start";
+            signal: "elm,action,push";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "base";
+            target: "clip";
+            after: "show_start2";
+         }
+         program { name: "show_start";
+            signal: "elm,action,show";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "base";
+            target: "clip";
+            after: "show_start2";
+         }
+         program { name: "show_start2";
+            action:  STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "show_end";
+         }
+         program { name: "show_end";
+            action: SIGNAL_EMIT "elm,action,show,finished" "";
+         }
+         program { name: "pop_start";
+            signal: "elm,action,pop";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
+            after: "hide_start2";
+         }
+         program { name: "hide_start";
+            signal: "elm,action,hide";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
+            after: "hide_start2";
          }
-         program {
-            name:    "go_disabled";
-            signal:  "elm,state,disabled";
-            source:  "elm";
-            action:  STATE_SET "disabled" 0.0;
-            target:  "disclip";
+         program { name: "hide_start2";
+            action:  STATE_SET "hidden" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "hide_end";
          }
-         program {
-            name:    "go_enabled";
-            signal:  "elm,state,enabled";
-            source:  "elm";
+         program { name: "hide_end";
+            action: SIGNAL_EMIT "elm,action,hide,finished" "";
+         }
+         program { name: "reset";
+            signal: "elm,action,reset";
+            source: "elm";
             action:  STATE_SET "default" 0.0;
-            target:  "disclip";
+            target: "base";
+            target: "clip";
          }
       }
    }
 
-///////////////////////////////////////////////////////////////////////////////
-   group { name: "elm/pager/base/default";
-      data.item: "onshow" "raise";
-// other options
-//      data.item: "onhide" "lower";
-//      data.item: "onshow" "lower";
+   group { name: "elm/pager/base/slide";
       images {
-        image: "frame_1.png" COMP;
-        image: "frame_2.png" COMP;
+         image: "frame_1.png" COMP;
+         image: "frame_2.png" COMP;
          image: "dia_grad.png" COMP;
       }
       parts {
          part { name: "clip";
             type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1 {
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1 {
                   to: "base";
                   offset: -9999 -9999;
                }
-              rel2 {
+               rel2 {
                   to: "base";
                   offset: 9999 9999;
                }
                color: 255 255 255 255;
-           }
-           description { state: "visible" 0.0;
+            }
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
+               visible: 0;
+            }
+            description { state: "hidden2" 0.0;
                inherit: "default" 0.0;
                color: 255 255 255 0;
                visible: 0;
-           }
-        }
+            }
+         }
          part { name: "base0";
-           mouse_events:  0;
+            mouse_events:  0;
             clip_to: "clip";
-           description { state: "default" 0.0;
-              image.normal: "dia_grad.png";
-              rel1.to: "over";
-              rel2.to: "over";
+            description { state: "default" 0.0;
+               image.normal: "dia_grad.png";
+               rel1.to: "over";
+               rel2.to: "over";
                fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
+                  smooth: 0;
+                  size {
+                     relative: 0.0 1.0;
                      offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "base";
-           mouse_events:  0;
+                  }
+               }
+            }
+         }
+         part { name: "base";
+            mouse_events:  0;
             clip_to: "clip";
-           description { state: "default" 0.0;
-              image {
-                 normal: "frame_2.png";
-                 border: 5 5 32 26;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-           description { state: "hidden" 0.0;
+            description { state: "default" 0.0;
+               image {
+                  normal: "frame_2.png";
+                  border: 5 5 32 26;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+            description { state: "hidden" 0.0;
                inherit: "default" 0.0;
                rel1.relative: -1.0 0.0;
                rel2.relative: 0.0 1.0;
-           }
-           description { state: "visible" 0.0;
+            }
+            description { state: "hidden2" 0.0;
+               inherit: "default" 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 2.0 1.0;
+            }
+            description { state: "visible" 0.0;
                inherit: "default" 0.0;
                rel1.relative: 0.0 0.0;
                rel2.relative: 1.0 1.0;
-           }
-        }
+            }
+         }
          part { name: "over";
-           mouse_events:  0;
+            mouse_events:  0;
             clip_to: "clip";
-           description { state:    "default" 0.0;
-              rel1 {
+            description { state:    "default" 0.0;
+               rel1 {
                   to: "base";
                   offset: 4 4;
                }
-              rel2 {
+               rel2 {
                   to: "base";
                   offset: -5 -5;
                }
-              image {
-                 normal: "frame_1.png";
-                 border: 2 2 28 22;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
+               image {
+                  normal: "frame_1.png";
+                  border: 2 2 28 22;
+                  middle: 0;
+               }
+               fill.smooth : 0;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
             clip_to: "clip";
-           description { state: "default" 0.0;
-              rel1 {
+            description { state: "default" 0.0;
+               rel1 {
                   to: "base";
                   offset: 8 8;
                }
-              rel2 {
+               rel2 {
                   to: "base";
                   offset: -9 -9;
                }
-           }
-        }
+            }
+         }
       }
       programs {
-        program { name: "push_start";
-           signal: "elm,action,push";
-           source: "elm";
-           action:  STATE_SET "hidden" 0.0;
-           target: "base";
-           target: "clip";
+         program { name: "push_start";
+            signal: "elm,action,push";
+            source: "elm";
+            action:  STATE_SET "hidden2" 0.0;
+            target: "base";
+            target: "clip";
             after: "show_start2";
-        }
+         }
          program { name: "show_start";
-           signal: "elm,action,show";
-           source: "elm";
-           action:  STATE_SET "hidden" 0.0;
-           target: "base";
-           target: "clip";
+            signal: "elm,action,show";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "base";
+            target: "clip";
             after: "show_start2";
-        }
+         }
          program { name: "show_start2";
-           action:  STATE_SET "visible" 0.0;
+            action:  STATE_SET "visible" 0.0;
             transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
+            target: "base";
+            target: "clip";
             after: "show_end";
-        }
+         }
          program { name: "show_end";
             action: SIGNAL_EMIT "elm,action,show,finished" "";
-        }
+         }
          program { name: "pop_start";
-           signal: "elm,action,pop";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
-            after: "hide_start2";
-        }
+            signal: "elm,action,pop";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
+            after: "pop_start2";
+         }
+         program { name: "pop_start2";
+            action:  STATE_SET "hidden2" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "hide_end";
+         }
          program { name: "hide_start";
-           signal: "elm,action,hide";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
+            signal: "elm,action,hide";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
             after: "hide_start2";
-        }
+         }
          program { name: "hide_start2";
-           action:  STATE_SET "hidden" 0.0;
+            action:  STATE_SET "hidden" 0.0;
             transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
+            target: "base";
+            target: "clip";
             after: "hide_end";
-        }
+         }
          program { name: "hide_end";
             action: SIGNAL_EMIT "elm,action,hide,finished" "";
-        }
+         }
          program { name: "reset";
-           signal: "elm,action,reset";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "base";
-           target: "clip";
-        }
-      }
-   }
-
-   group { name: "elm/pager/base/slide";
-      images {
-        image: "frame_1.png" COMP;
-        image: "frame_2.png" COMP;
-        image: "dia_grad.png" COMP;
-      }
-      parts {
-        part { name: "clip";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1 {
-                 to: "base";
-                 offset: -9999 -9999;
-              }
-              rel2 {
-                 to: "base";
-                 offset: 9999 9999;
-              }
-              color: 255 255 255 255;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              inherit: "default" 0.0;
-              color: 255 255 255 0;
-              visible: 0;
-           }
-           description { state: "hidden2" 0.0;
-              inherit: "default" 0.0;
-              color: 255 255 255 0;
-              visible: 0;
-           }
-        }
-        part { name: "base0";
-           mouse_events:  0;
-           clip_to: "clip";
-           description { state: "default" 0.0;
-              image.normal: "dia_grad.png";
-              rel1.to: "over";
-              rel2.to: "over";
-              fill {
-                 smooth: 0;
-                 size {
-                    relative: 0.0 1.0;
-                    offset: 64 0;
-                 }
-              }
-           }
-        }
-        part { name: "base";
-           mouse_events:  0;
-           clip_to: "clip";
-           description { state: "default" 0.0;
-              image {
-                 normal: "frame_2.png";
-                 border: 5 5 32 26;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-           description { state: "hidden" 0.0;
-              inherit: "default" 0.0;
-              rel1.relative: -1.0 0.0;
-              rel2.relative: 0.0 1.0;
-           }
-           description { state: "hidden2" 0.0;
-              inherit: "default" 0.0;
-              rel1.relative: 1.0 0.0;
-              rel2.relative: 2.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-              rel1.relative: 0.0 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "over";
-           mouse_events:  0;
-           clip_to: "clip";
-           description { state:    "default" 0.0;
-              rel1 {
-                 to: "base";
-                 offset: 4 4;
-              }
-              rel2 {
-                 to: "base";
-                 offset: -5 -5;
-              }
-              image {
-                 normal: "frame_1.png";
-                 border: 2 2 28 22;
-                 middle: 0;
-              }
-              fill.smooth : 0;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           clip_to: "clip";
-           description { state: "default" 0.0;
-              rel1 {
-                 to: "base";
-                 offset: 8 8;
-              }
-              rel2 {
-                 to: "base";
-                 offset: -9 -9;
-              }
-           }
-        }
-      }
-      programs {
-        program { name: "push_start";
-           signal: "elm,action,push";
-           source: "elm";
-           action:  STATE_SET "hidden2" 0.0;
-           target: "base";
-           target: "clip";
-           after: "show_start2";
-        }
-        program { name: "show_start";
-           signal: "elm,action,show";
-           source: "elm";
-           action:  STATE_SET "hidden" 0.0;
-           target: "base";
-           target: "clip";
-           after: "show_start2";
-        }
-        program { name: "show_start2";
-           action:  STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "show_end";
-        }
-        program { name: "show_end";
-           action: SIGNAL_EMIT "elm,action,show,finished" "";
-        }
-        program { name: "pop_start";
-           signal: "elm,action,pop";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
-           after: "pop_start2";
-        }
-        program { name: "pop_start2";
-           action:  STATE_SET "hidden2" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "hide_end";
-        }
-        program { name: "hide_start";
-           signal: "elm,action,hide";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
-           after: "hide_start2";
-        }
-        program { name: "hide_start2";
-           action:  STATE_SET "hidden" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "hide_end";
-        }
-        program { name: "hide_end";
-           action: SIGNAL_EMIT "elm,action,hide,finished" "";
-        }
-        program { name: "reset";
-           signal: "elm,action,reset";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "base";
-           target: "clip";
-        }
+            signal: "elm,action,reset";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "base";
+            target: "clip";
+         }
       }
    }
    group { name: "elm/pager/base/slide_invisible";
       parts {
-        part { name: "clip";
-           type: RECT;
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1 {
-                 to: "base";
-                 offset: -9999 -9999;
-           }
-              rel2 {
-                 to: "base";
-                 offset: 9999 9999;
-              }
-              color: 255 255 255 255;
-           }
-           description { state: "visible" 0.0;
-              inherit: "default" 0.0;
-           }
-           description { state: "hidden" 0.0;
-              inherit: "default" 0.0;
-              color: 255 255 255 0;
-              visible: 0;
-           }
-           description { state: "hidden2" 0.0;
-              inherit: "default" 0.0;
-              color: 255 255 255 0;
-              visible: 0;
-           }
-        }
-        part { name: "base";
-           type: RECT;
-           mouse_events:  0;
-           clip_to: "clip";
-           description { state: "default" 0.0;
-              color: 0 0 0 0;
-           }
-           description { state: "hidden" 0.0;
-              color: 0 0 0 0;
-              rel1.relative: -1.0 0.0;
-              rel2.relative: 0.0 1.0;
-           }
-           description { state: "hidden2" 0.0;
-              color: 0 0 0 0;
-              rel1.relative: 1.0 0.0;
-              rel2.relative: 2.0 1.0;
-           }
-           description { state: "visible" 0.0;
-              color: 0 0 0 0;
-              rel1.relative: 0.0 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
-        part { name: "elm.swallow.content";
-           type: SWALLOW;
-           clip_to: "clip";
-           description { state: "default" 0.0;
-              rel1.to: "base";
-              rel2.to: "base";
-           }
-        }
+         part { name: "clip";
+            type: RECT;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1 {
+                  to: "base";
+                  offset: -9999 -9999;
+            }
+               rel2 {
+                  to: "base";
+                  offset: 9999 9999;
+               }
+               color: 255 255 255 255;
+            }
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
+               visible: 0;
+            }
+            description { state: "hidden2" 0.0;
+               inherit: "default" 0.0;
+               color: 255 255 255 0;
+               visible: 0;
+            }
+         }
+         part { name: "base";
+            type: RECT;
+            mouse_events:  0;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               color: 0 0 0 0;
+            }
+            description { state: "hidden" 0.0;
+               color: 0 0 0 0;
+               rel1.relative: -1.0 0.0;
+               rel2.relative: 0.0 1.0;
+            }
+            description { state: "hidden2" 0.0;
+               color: 0 0 0 0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 2.0 1.0;
+            }
+            description { state: "visible" 0.0;
+               color: 0 0 0 0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 1.0;
+            }
+         }
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            clip_to: "clip";
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+            }
+         }
       }
       programs {
-        program { name: "push_start";
-           signal: "elm,action,push";
-           source: "elm";
-           action:  STATE_SET "hidden2" 0.0;
-           target: "base";
-           target: "clip";
-           after: "show_start2";
-        }
-        program { name: "show_start";
-           signal: "elm,action,show";
-           source: "elm";
-           action:  STATE_SET "hidden" 0.0;
-           target: "base";
-           target: "clip";
-           after: "show_start2";
-        }
-        program { name: "show_start2";
-           action:  STATE_SET "visible" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "show_end";
-        }
-        program { name: "show_end";
-           action: SIGNAL_EMIT "elm,action,show,finished" "";
-        }
-        program { name: "pop_start";
-           signal: "elm,action,pop";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
-           after: "pop_start2";
-        }
-        program { name: "pop_start2";
-           action:  STATE_SET "hidden2" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "hide_end";
-        }
-        program { name: "hide_start";
-           signal: "elm,action,hide";
-           source: "elm";
-           action:  STATE_SET "visible" 0.0;
-           target: "base";
-           target: "clip";
-           after: "hide_start2";
-        }
-        program { name: "hide_start2";
-           action:  STATE_SET "hidden" 0.0;
-           transition: DECELERATE 0.5;
-           target: "base";
-           target: "clip";
-           after: "hide_end";
-        }
-        program { name: "hide_end";
-           action: SIGNAL_EMIT "elm,action,hide,finished" "";
-        }
-        program { name: "reset";
-           signal: "elm,action,reset";
-           source: "elm";
-           action:  STATE_SET "default" 0.0;
-           target: "base";
-           target: "clip";
-        }
+         program { name: "push_start";
+            signal: "elm,action,push";
+            source: "elm";
+            action:  STATE_SET "hidden2" 0.0;
+            target: "base";
+            target: "clip";
+            after: "show_start2";
+         }
+         program { name: "show_start";
+            signal: "elm,action,show";
+            source: "elm";
+            action:  STATE_SET "hidden" 0.0;
+            target: "base";
+            target: "clip";
+            after: "show_start2";
+         }
+         program { name: "show_start2";
+            action:  STATE_SET "visible" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "show_end";
+         }
+         program { name: "show_end";
+            action: SIGNAL_EMIT "elm,action,show,finished" "";
+         }
+         program { name: "pop_start";
+            signal: "elm,action,pop";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
+            after: "pop_start2";
+         }
+         program { name: "pop_start2";
+            action:  STATE_SET "hidden2" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "hide_end";
+         }
+         program { name: "hide_start";
+            signal: "elm,action,hide";
+            source: "elm";
+            action:  STATE_SET "visible" 0.0;
+            target: "base";
+            target: "clip";
+            after: "hide_start2";
+         }
+         program { name: "hide_start2";
+            action:  STATE_SET "hidden" 0.0;
+            transition: DECELERATE 0.5;
+            target: "base";
+            target: "clip";
+            after: "hide_end";
+         }
+         program { name: "hide_end";
+            action: SIGNAL_EMIT "elm,action,hide,finished" "";
+         }
+         program { name: "reset";
+            signal: "elm,action,reset";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "base";
+            target: "clip";
+         }
       }
    }
 
@@ -27207,6 +26733,7 @@ collections {
       }
       parts {
          part { name: "elm.background.progressbar";
+            type: RECT;
             mouse_events: 0;
             description {
                state: "default" 0.0;
@@ -27474,6 +27001,7 @@ collections {
            }
          }
          part { name: "progress-rect";
+            type: RECT;
             mouse_events: 0;
             description {
                state: "default" 0.0;
@@ -28154,7 +27682,7 @@ collections {
                    }
                }
            }
-           part {        name: "left_over1";
+           part {          name: "left_over1";
                mouse_events: 0;
                description { state: "default" 0.0;
                    rel1.to: "left_bt";
@@ -28311,6 +27839,10 @@ collections {
                    aspect_preference: BOTH;
                    image.normal: "sp_bt_l.png";
                }
+               description { state: "rtl" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "sp_bt_r.png";
+               }
            }
            part { name: "right_bt_icon";
                repeat_events: 1;
@@ -28325,6 +27857,10 @@ collections {
                    aspect_preference: BOTH;
                    image.normal: "sp_bt_r.png";
                }
+               description { state: "rtl" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "sp_bt_l.png";
+               }
            }
            part { name: "elm.text";
                type: TEXT;
@@ -28653,6 +28189,20 @@ collections {
                source: "button_events";
                action: SIGNAL_EMIT "elm,action,entry,toggle" "";
            }
+           program { name: "to_rtl";
+               signal: "edje,state,rtl";
+               source: "edje";
+               action: STATE_SET "rtl" 0.0;
+               target: "right_bt_icon";
+               target: "left_bt_icon";
+           }
+           program { name: "to_ltr";
+               signal: "edje,state,ltr";
+               source: "edje";
+               action: STATE_SET "default" 0.0;
+               target: "right_bt_icon";
+               target: "left_bt_icon";
+           }
        }
    }
 
@@ -29226,7 +28776,7 @@ collections {
                    }
                }
            }
-           part {      name: "over1";
+           part {        name: "over1";
                mouse_events: 0;
                clip_to: "clip";
                description { state: "default" 0.0;
@@ -29273,6 +28823,7 @@ collections {
                    fixed: 1 1;
                    min: 8 8;
                    max: 8 8;
+                   visible: 0;
                    rel1 {
                        relative: 0.0 0.0;
                        offset:   0 0;
@@ -29281,7 +28832,6 @@ collections {
                        relative: 0.0 0.0;
                        offset:   0 0;
                    }
-                   color: 0 0 255 128;
                }
            }
            part { name: "elm.swallow.event.0";
@@ -29382,8 +28932,8 @@ collections {
                    }
                    rel2 {
                        to: "base";
-                       relative: 1.0  1.0;
-                       offset:   -5 -5;
+                       relative: 0.5  1.0;
+                       offset:   -1 -1;
                    }
                    color: 0 0 0 128;
                    text {
@@ -29391,7 +28941,7 @@ collections {
                        size: 10;
                        min: 1 1;
                             //                  min: 0 1;
-                       align: 0.0 0.5;
+                       align: 0.5 0.5;
                    }
                }
                description { state: "active" 0.0;
@@ -29458,8 +29008,8 @@ collections {
                    }
                    rel2 {
                        to: "base";
-                       relative: 1.0  1.0;
-                       offset:   -5 -5;
+                       relative: 0.5  1.0;
+                       offset:   -1 -1;
                    }
                    color: 0 0 0 128;
                    text {
@@ -29467,7 +29017,7 @@ collections {
                        size: 10;
                        min: 1 1;
                             //                  min: 0 1;
-                       align: 0.0 0.5;
+                       align: 0.5 0.5;
                    }
                }
                description { state: "active" 0.0;
@@ -29516,6 +29066,30 @@ collections {
                color: 0 0 0 0;
             }
          }
+         part { name: "reorder_bg";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 0;
+               color: 255 255 255 0;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: -10 -10;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: 12 12;
+               }
+               image {
+                  normal: "bt_bases.png";
+                  border: 6 6 6 6;
+               }
+            }
+            description { state: "enabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 255 255 255 255;
+            }
+         }
          part { name: "base_sh";
             mouse_events: 0;
             description { state: "default" 0.0;
@@ -29592,7 +29166,7 @@ collections {
                   offset:   0    -10;
                }
                rel2 {
-                 to_y: "elm.text";
+                  to_y: "elm.text";
                   relative: 0.0  0.0;
                   offset:   -1   -1;
                }
@@ -29752,6 +29326,20 @@ collections {
             action:  STATE_SET "default" 0.0;
             target:  "disclip";
          }
+         program { name:    "go_reorder_disabled";
+            signal:  "elm,state,reorder,disabled";
+            source:  "elm";
+            action:  STATE_SET "default" 0.0;
+            target:  "reorder_bg";
+            transition: DECELERATE 0.5;
+         }
+         program { name:    "go_reorder_enabled";
+            signal:  "elm,state,reorder,enabled";
+            source:  "elm";
+            action:  STATE_SET "enabled" 0.0;
+            target:  "reorder_bg";
+            transition: DECELERATE 0.5;
+         }
       }
    }
    group { name: "elm/gengrid/item/default_style/default";
@@ -31654,7 +31242,7 @@ collections {
             item: size_max_h 58;
         }
         images {
-               image: "map_item.png" COMP;
+                image: "map_item.png" COMP;
         }
         parts {
             part { name: "whole";
@@ -31717,7 +31305,7 @@ collections {
             item: size_max_h 58;
         }
         images {
-               image: "map_item_2.png" COMP;
+                image: "map_item_2.png" COMP;
         }
         parts {
             part { name: "base";
@@ -31847,6 +31435,13 @@ collections {
           image.middle: SOLID;
           fill.smooth: 0;
         }
+        description { state: "rtl" 0.0;
+           inherit: "default" 0.0;
+           image {
+              normal: "bubble_4.png";
+              border: 11 36 18 9;
+           }
+        }
       }
       part { name: "elm.swallow.content";
         type: SWALLOW;
@@ -31896,13 +31491,13 @@ collections {
   group {
      name: "elm/panes/vertical/default";
       images {
-        image: "bt_base1.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "bt_glow.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
+         image: "bt_base1.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "bt_glow.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
          image: "arrow_right.png" COMP;
          image: "arrow_left.png" COMP;
       }
@@ -31973,73 +31568,73 @@ collections {
                  }
             }
          //BAR
-        part { name: "elm.bar";
-           mouse_events: 1;
+         part { name: "elm.bar";
+            mouse_events: 1;
             dragable {
                confine: "whole";
                x: 1 1 1;
                y: 0 0 0;
             }
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                max: 15 9999;
                min: 15 100;
                rel1.relative: 0.0 0.5;
                rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
+               }
                image.middle: SOLID;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "bt_base1.png";
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "bt_base1.png";
                image.middle: SOLID;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-           }
-        }
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+            }
+         }
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
             rel1.to: "elm.bar";
             rel2.to: "elm.bar";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
             ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
             rel1.to: "elm.bar";
             rel2.to: "elm.bar";
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              visible: 0;
-           }
-        }
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               visible: 0;
+            }
+         }
          part { name: "over3";
             mouse_events: 1;
             repeat_events: 1;
@@ -32051,7 +31646,7 @@ collections {
                   normal: "bt_glow.png";
                   border: 12 12 12 12;
                }
-              fill.smooth : 0;
+               fill.smooth : 0;
             }
             description { state: "clicked" 0.0;
                inherit:  "default" 0.0;
@@ -32063,6 +31658,7 @@ collections {
          //Arrow
          part {
             name: "arrow_right";
+            repeat_events: 1;
             description { state: "default" 0.0;
                 min: 45 45;
                 max: 45 45;
@@ -32080,21 +31676,40 @@ collections {
 
                 fixed: 1 1;
             }
+            description { state: "default" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_left.png";
+            }
             description { state: "anim_1" 0.0;
                 inherit: "default" 0.0;
                 color: 255 255 255 200;
                 rel1.offset: (45/2 + 10) -45/2;
                 rel2.offset: (45/2 +10) 45/2;
             }
+            description { state: "anim_1" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_left.png";
+                color: 255 255 255 200;
+                rel1.offset: (45/2 + 10) -45/2;
+                rel2.offset: (45/2 +10) 45/2;
+            }
             description { state: "anim_2" 0.0;
                 inherit: "default" 0.0;
                 color: 255 255 255 0;
                 rel1.offset: (45/2 + 20) -45/2;
                 rel2.offset: (45/2 + 20) 45/2;
             }
+            description { state: "anim_2" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_left.png";
+                color: 255 255 255 0;
+                rel1.offset: (45/2 + 20) -45/2;
+                rel2.offset: (45/2 + 20) 45/2;
+            }
          }
         part {
             name: "arrow_left";
+            repeat_events: 1;
             description { state: "default" 0.0;
                 min: 45 45;
                 max: 45 45;
@@ -32112,128 +31727,245 @@ collections {
 
                 fixed: 1 1;
             }
+            description { state: "default" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_right.png";
+            }
             description { state: "anim_1" 0.0;
                 inherit: "default" 0.0;
                 color: 255 255 255 200;
                 rel1.offset: (-45/2 - 10) -45/2;
                 rel2.offset: (-45/2 - 10) 45/2;
             }
+            description { state: "anim_1" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_right.png";
+                color: 255 255 255 200;
+                rel1.offset: (-45/2 - 10) -45/2;
+                rel2.offset: (-45/2 - 10) 45/2;
+            }
             description { state: "anim_2" 0.0;
                 inherit: "default" 0.0;
                 color: 255 255 255 0;
                 rel1.offset: (-45/2 - 20) -45/2;
                 rel2.offset: (-45/2 - 20) 45/2;
             }
+            description { state: "anim_2" 0.1;
+                inherit: "default" 0.0;
+                image.normal: "arrow_right.png";
+                color: 255 255 255 0;
+                rel1.offset: (-45/2 - 20) -45/2;
+                rel2.offset: (-45/2 - 20) 45/2;
+            }
          }
 
        }
         programs {
-        program {
-           name:   "button_click";
-           signal: "mouse,down,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,press" "";
-           after: "button_click_anim";
+         program {
+            name:   "button_click";
+            signal: "mouse,down,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,press" "";
+            after: "button_click_anim";
             after: "arrow_anim_start";
-        }
-        program {
-           name:   "button_click_anim";
-           action: STATE_SET "clicked" 0.0;
-           target: "elm.bar";
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,unpress" "";
-           after: "button_unclick_anim";
+         }
+         program {
+            name:   "button_click_anim";
+            action: STATE_SET "clicked" 0.0;
+            target: "elm.bar";
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,unpress" "";
+            after: "button_unclick_anim";
             after: "arrow_anim_stop";
-        }
-        program {
-           name:   "button_unclick_anim";
-           action: STATE_SET "default" 0.0;
-           target: "elm.bar";
-        }
-        program {
-           name:   "button_click2";
-           signal: "mouse,down,1";
-           source: "over3";
-           action: STATE_SET "clicked" 0.0;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick2";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: STATE_SET "default" 0.0;
+         }
+         program {
+            name:   "button_unclick_anim";
+            action: STATE_SET "default" 0.0;
+            target: "elm.bar";
+         }
+         program {
+            name:   "button_click2";
+            signal: "mouse,down,1";
+            source: "over3";
+            action: STATE_SET "clicked" 0.0;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick2";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: STATE_SET "default" 0.0;
             transition: DECELERATE 0.5;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-         program {
-           name:   "button_down_double";
-           signal: "mouse,down,1,double";
-           source: "over3";
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program {
+            name:   "button_down_double";
+            signal: "mouse,down,1,double";
+            source: "over3";
             action: SIGNAL_EMIT "elm,action,click,double" "";
-        }
+         }
 
          //arrows animation
          program {
             name: "arrow_anim_start";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow_left", st, 30, vl);
+               if (vl == 0.0) {
+                  run_program(PROGRAM:"arrow_anim_start_ltr");
+               }
+               else {
+                  run_program(PROGRAM:"arrow_anim_start_rtl");
+               }
+            }
+         }
+         program {
+            name: "arrow_anim_stop";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow_left", st, 30, vl);
+               if (vl == 0.0) {
+                  run_program(PROGRAM:"arrow_anim_stop_ltr");
+               }
+               else {
+                  run_program(PROGRAM:"arrow_anim_stop_rtl");
+               }
+            }
+         }
+
+         program {
+            name: "arrow_anim_start_ltr";
             action: STATE_SET "anim_1" 0.0;
             target: "arrow_right";
             target: "arrow_left";
             transition: LINEAR 0.6;
-            after: "arrow_anim_1";
+            after: "arrow_anim_1_ltr";
          }
          program {
-            name: "arrow_anim_1";
+            name: "arrow_anim_1_ltr";
             action: STATE_SET "anim_2" 0.0;
             target: "arrow_right";
             target: "arrow_left";
             transition: LINEAR 0.6;
-            after: "arrow_anim_2";
+            after: "arrow_anim_2_ltr";
          }
          program {
-            name: "arrow_anim_2";
+            name: "arrow_anim_2_ltr";
             action: STATE_SET "default" 0.0;
             target: "arrow_right";
             target: "arrow_left";
-            after: "arrow_anim_start";
+            after: "arrow_anim_start_ltr";
          }
          program {
-            name: "arrow_anim_stop";
+            name: "arrow_anim_stop_ltr";
             action: ACTION_STOP;
-            target: "arrow_anim_start";
-            target: "arrow_anim_1";
-            target: "arrow_anim_2";
-            after: "arrow_anim_stop_1";
+            target: "arrow_anim_start_ltr";
+            target: "arrow_anim_1_ltr";
+            target: "arrow_anim_2_ltr";
+            after: "arrow_anim_stop_1_ltr";
          }
          program {
-            name: "arrow_anim_stop_1";
+            name: "arrow_anim_stop_1_ltr";
             action: STATE_SET "default" 0.0;
             target: "arrow_right";
             target: "arrow_left";
             transition: DECELERATE 0.4;
         }
+         program {
+            name: "arrow_anim_start_rtl";
+            action: STATE_SET "anim_1" 0.1;
+            target: "arrow_right";
+            target: "arrow_left";
+            transition: LINEAR 0.6;
+            after: "arrow_anim_1_rtl";
+         }
+         program {
+            name: "arrow_anim_1_rtl";
+            action: STATE_SET "anim_2" 0.1;
+            target: "arrow_right";
+            target: "arrow_left";
+            transition: LINEAR 0.6;
+            after: "arrow_anim_2_rtl";
+         }
+         program {
+            name: "arrow_anim_2_rtl";
+            action: STATE_SET "default" 0.1;
+            target: "arrow_right";
+            target: "arrow_left";
+            after: "arrow_anim_start_rtl";
+         }
+         program {
+            name: "arrow_anim_stop_rtl";
+            action: ACTION_STOP;
+            target: "arrow_anim_start_rtl";
+            target: "arrow_anim_1_rtl";
+            target: "arrow_anim_2_rtl";
+            after: "arrow_anim_stop_1_rtl";
+         }
+         program {
+            name: "arrow_anim_stop_1_rtl";
+            action: STATE_SET "default" 0.1;
+            target: "arrow_right";
+            target: "arrow_left";
+            transition: DECELERATE 0.4;
+        }
+         program { name: "to_rtl";
+            signal: "edje,state,rtl";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow_left", st, 30, vl);
+               if (vl == 0.0) {
+                  set_state(PART:"arrow_left", st, 0.1);
+               }
+               get_state(PART:"arrow_right", st, 30, vl);
+               if (vl == 0.0) {
+                  set_state(PART:"arrow_right", st, 0.1);
+               }
+            }
+         }
+         program { name: "to_ltr";
+            signal: "edje,state,ltr";
+            source: "edje";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"arrow_left", st, 30, vl);
+               if (vl == 0.1) {
+                  set_state(PART:"arrow_left", st, 0.0);
+               }
+               get_state(PART:"arrow_right", st, 30, vl);
+               if (vl == 0.1) {
+                  set_state(PART:"arrow_right", st, 0.0);
+               }
+            }
+         }
       }
   }
 
   group {
      name: "elm/panes/horizontal/default";
       images {
-        image: "bt_base1.png" COMP;
-        image: "bt_base2.png" COMP;
-        image: "bt_hilight.png" COMP;
-        image: "bt_shine.png" COMP;
-        image: "bt_glow.png" COMP;
-        image: "bt_dis_base.png" COMP;
-        image: "bt_dis_hilight.png" COMP;
+         image: "bt_base1.png" COMP;
+         image: "bt_base2.png" COMP;
+         image: "bt_hilight.png" COMP;
+         image: "bt_shine.png" COMP;
+         image: "bt_glow.png" COMP;
+         image: "bt_dis_base.png" COMP;
+         image: "bt_dis_hilight.png" COMP;
          image: "arrow_up.png" COMP;
          image: "arrow_down.png" COMP;
       }
@@ -32304,73 +32036,73 @@ collections {
                  }
             }
          //BAR
-        part { name: "elm.bar";
-           mouse_events: 1;
+         part { name: "elm.bar";
+            mouse_events: 1;
             dragable {
                confine: "whole";
                x: 0 0 0;
                y: 1 1 1;
             }
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                max: 999 15;
                min: 100 15;
                rel1.relative: 0.5 0.0;
                rel2.relative: 0.5 1.0;
-              image {
-                 normal: "bt_base2.png";
-                 border: 7 7 7 7;
-              }
+               image {
+                  normal: "bt_base2.png";
+                  border: 7 7 7 7;
+               }
                image.middle: SOLID;
-           }
-           description { state: "clicked" 0.0;
-              inherit: "default" 0.0;
-              image.normal: "bt_base1.png";
+            }
+            description { state: "clicked" 0.0;
+               inherit: "default" 0.0;
+               image.normal: "bt_base1.png";
                image.middle: SOLID;
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_base.png";
-                 border: 4 4 4 4;
-              }
-           }
-        }
-        part {   name: "over1";
-           mouse_events: 0;
-           description { state: "default" 0.0;
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_base.png";
+                  border: 4 4 4 4;
+               }
+            }
+         }
+         part {          name: "over1";
+            mouse_events: 0;
+            description { state: "default" 0.0;
             rel1.to: "elm.bar";
             rel2.to: "elm.bar";
-              rel2.relative: 1.0 0.5;
-              image {
-                 normal: "bt_hilight.png";
-                 border: 7 7 7 0;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              image {
-                 normal: "bt_dis_hilight.png";
-                 border: 4 4 4 0;
-              }
-           }
-        }
-        part { name: "over2";
-           mouse_events: 1;
-           repeat_events: 1;
+               rel2.relative: 1.0 0.5;
+               image {
+                  normal: "bt_hilight.png";
+                  border: 7 7 7 0;
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               image {
+                  normal: "bt_dis_hilight.png";
+                  border: 4 4 4 0;
+               }
+            }
+         }
+         part { name: "over2";
+            mouse_events: 1;
+            repeat_events: 1;
             ignore_flags: ON_HOLD;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
             rel1.to: "elm.bar";
             rel2.to: "elm.bar";
-              image {
-                 normal: "bt_shine.png";
-                 border: 7 7 7 7;
-              }
-           }
-           description { state: "disabled" 0.0;
-              inherit:  "default" 0.0;
-              visible: 0;
-           }
-        }
+               image {
+                  normal: "bt_shine.png";
+                  border: 7 7 7 7;
+               }
+            }
+            description { state: "disabled" 0.0;
+               inherit:  "default" 0.0;
+               visible: 0;
+            }
+         }
          part { name: "over3";
             mouse_events: 1;
             repeat_events: 1;
@@ -32382,7 +32114,7 @@ collections {
                   normal: "bt_glow.png";
                   border: 12 12 12 12;
                }
-              fill.smooth : 0;
+               fill.smooth : 0;
             }
             description { state: "clicked" 0.0;
                inherit:  "default" 0.0;
@@ -32394,6 +32126,7 @@ collections {
          //Arrow
          part {
             name: "arrow_right";
+            repeat_events: 1;
             description { state: "default" 0.0;
                 min: 45 45;
                 max: 45 45;
@@ -32426,6 +32159,7 @@ collections {
          }
         part {
             name: "arrow_left";
+            repeat_events: 1;
             description { state: "default" 0.0;
                 min: 45 45;
                 max: 45 45;
@@ -32459,59 +32193,59 @@ collections {
 
        }
         programs {
-        program {
-           name:   "button_click";
-           signal: "mouse,down,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,press" "";
-           after: "button_click_anim";
+         program {
+            name:   "button_click";
+            signal: "mouse,down,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,press" "";
+            after: "button_click_anim";
             after: "arrow_anim_start";
-        }
-        program {
-           name:   "button_click_anim";
-           action: STATE_SET "clicked" 0.0;
-           target: "elm.bar";
-        }
-        program {
-           name:   "button_unclick";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,unpress" "";
-           after: "button_unclick_anim";
+         }
+         program {
+            name:   "button_click_anim";
+            action: STATE_SET "clicked" 0.0;
+            target: "elm.bar";
+         }
+         program {
+            name:   "button_unclick";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,unpress" "";
+            after: "button_unclick_anim";
             after: "arrow_anim_stop";
-        }
-        program {
-           name:   "button_unclick_anim";
-           action: STATE_SET "default" 0.0;
-           target: "elm.bar";
-        }
-        program {
-           name:   "button_click2";
-           signal: "mouse,down,1";
-           source: "over3";
-           action: STATE_SET "clicked" 0.0;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick2";
-           signal: "mouse,up,1";
-           source: "over3";
-           action: STATE_SET "default" 0.0;
+         }
+         program {
+            name:   "button_unclick_anim";
+            action: STATE_SET "default" 0.0;
+            target: "elm.bar";
+         }
+         program {
+            name:   "button_click2";
+            signal: "mouse,down,1";
+            source: "over3";
+            action: STATE_SET "clicked" 0.0;
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick2";
+            signal: "mouse,up,1";
+            source: "over3";
+            action: STATE_SET "default" 0.0;
             transition: DECELERATE 0.5;
-           target: "over3";
-        }
-        program {
-           name:   "button_unclick3";
-           signal: "mouse,up,1";
-           source: "over2";
-           action: SIGNAL_EMIT "elm,action,click" "";
-        }
-         program {
-           name:   "button_down_double";
-           signal: "mouse,down,1,double";
-           source: "over3";
+            target: "over3";
+         }
+         program {
+            name:   "button_unclick3";
+            signal: "mouse,up,1";
+            source: "over2";
+            action: SIGNAL_EMIT "elm,action,click" "";
+         }
+         program {
+            name:   "button_down_double";
+            signal: "mouse,down,1,double";
+            source: "over3";
             action: SIGNAL_EMIT "elm,action,click,double" "";
-        }
+         }
 
          //arrows animation
          program {
@@ -33198,7 +32932,7 @@ collections {
         part { name: "elm.swallow.shelf";
            type: SWALLOW;
            description { state: "default" 0.0;
-              fixed: 1 1;
+              fixed: 0 1;
               align: 0.0 0.0;
               rel2.relative: 1.0 0.0;
            }
@@ -33206,17 +32940,27 @@ collections {
         part { name: "elm.swallow.content";
            type: SWALLOW;
            description { state: "default" 0.0;
+              fixed: 0 1;
               align: 0.5 0.5;
               rel1.relative: 0.0 1.0;
               rel1.to_y: "elm.swallow.shelf";
               rel2.relative: 1.0 0.0;
+              rel2.to_y: "elm.swallow.virtualkeypad";
+           }
+        }
+        part { name: "elm.swallow.virtualkeypad";
+           type: SWALLOW;
+           description { state: "default" 0.0;
+              fixed: 0 1;
+              align: 0.0 1.0;
+              rel2.relative: 1.0 0.0;
               rel2.to_y: "elm.swallow.panel";
            }
         }
         part { name: "elm.swallow.panel";
            type: SWALLOW;
            description { state: "default" 0.0;
-              fixed: 1 1;
+              fixed: 0 1;
               align: 0.0 1.0;
               rel1.relative: 0.0 1.0;
            }
@@ -33228,27 +32972,27 @@ collections {
 // CALENDAR
 /////////////////////////////////////////////////////////////////////////////
 #define CH(_pos) \
-        part { name: "ch_"#_pos".base"; \
-           type: RECT; \
-           description { state: "default" 0.0; \
-              rel1 { \
-                 relative: (_pos % 7 * 7 / 8 / 6) 0; \
-                 to: "header"; \
-              } \
-              rel2 { \
-                 relative: (_pos % 7 * 7 / 8 / 6 + 1 / 8) 1; \
-                 to: "header"; \
-              } \
+         part { name: "ch_"#_pos".base"; \
+            type: RECT; \
+            description { state: "default" 0.0; \
+               rel1 { \
+                  relative: (_pos % 7 * 7 / 8 / 6) 0; \
+                  to: "header"; \
+               } \
+               rel2 { \
+                  relative: (_pos % 7 * 7 / 8 / 6 + 1 / 8) 1; \
+                  to: "header"; \
+               } \
                color: 0 0 0 0; \
                visible: 0; \
-           } \
-        } \
+            } \
+         } \
          part { name: "ch_"#_pos".text"; \
             type: TEXT; \
             effect: SOFT_SHADOW; \
             mouse_events: 0; \
             scale: 1; \
-           clip_to: "ch_"#_pos".clipper"; \
+            clip_to: "ch_"#_pos".clipper"; \
             description { \
                state: "default" 0.0; \
                rel1.to: "ch_"#_pos".base"; \
@@ -33262,33 +33006,33 @@ collections {
                   align: 0.5 0.5; \
                } \
             } \
-        } \
-        part { name: "ch_"#_pos".clipper"; \
-           type: RECT; \
-           description { state: "default" 0.0; \
-              rel1.to: "ch_"#_pos".base"; \
-              rel2.to: "ch_"#_pos".base"; \
-           } \
-        }
+         } \
+         part { name: "ch_"#_pos".clipper"; \
+            type: RECT; \
+            description { state: "default" 0.0; \
+               rel1.to: "ch_"#_pos".base"; \
+               rel2.to: "ch_"#_pos".base"; \
+            } \
+         }
 
 #define CIT(_pos) \
-        part { name: "cit_"#_pos".rect"; \
-           type: RECT; \
-           description { state: "default" 0.0; \
-              rel1 { \
-                 relative: (_pos % 7 * 7 / 8 / 6) \
-                           (_pos / 8 / 5 - _pos % 7 / 8 / 5); \
-                 to: "base"; \
-              } \
-              rel2 { \
-                 relative: (_pos % 7 * 7 / 8 / 6 + 1 / 8) \
-                           (_pos / 8 / 5 - _pos % 7 / 8 / 5 + 1 / 8); \
-                 to: "base"; \
-              } \
+         part { name: "cit_"#_pos".rect"; \
+            type: RECT; \
+            description { state: "default" 0.0; \
+               rel1 { \
+                  relative: (_pos % 7 * 7 / 8 / 6) \
+                            (_pos / 8 / 5 - _pos % 7 / 8 / 5); \
+                  to: "base"; \
+               } \
+               rel2 { \
+                  relative: (_pos % 7 * 7 / 8 / 6 + 1 / 8) \
+                            (_pos / 8 / 5 - _pos % 7 / 8 / 5 + 1 / 8); \
+                  to: "base"; \
+               } \
                color: 0 0 0 0; \
                visible: 0; \
-           } \
-        } \
+            } \
+         } \
          part { \
             name: "cit_"#_pos".event"; \
             type: RECT; \
@@ -33301,9 +33045,9 @@ collections {
             } \
          } \
          part { name: "cit_"#_pos".shelf"; \
-           type: RECT; \
-           mouse_events: 0; \
-           description { state: "default" 0.0; \
+            type: RECT; \
+            mouse_events: 0; \
+            description { state: "default" 0.0; \
                rel1 { \
                   to: "cit_"#_pos".bg"; \
                   offset: -1 -1; \
@@ -33312,12 +33056,12 @@ collections {
                   to: "cit_"#_pos".bg"; \
                } \
                color: 200 200 200 255; \
-           } \
-        } \
+            } \
+         } \
          part { name: "cit_"#_pos".hd"; \
-           type: RECT; \
-           mouse_events: 0; \
-           description { state: "default" 0.0; \
+            type: RECT; \
+            mouse_events: 0; \
+            description { state: "default" 0.0; \
                rel1 { \
                   to: "cit_"#_pos".bg"; \
                   offset: -1 -1; \
@@ -33327,12 +33071,12 @@ collections {
                } \
                visible: 0; \
                color: 160 0 0 255; \
-           } \
-           description { state: "visible" 0.0; \
+            } \
+            description { state: "visible" 0.0; \
                inherit: "default" 0.0; \
                visible: 1; \
             } \
-        } \
+         } \
          part { \
             name: "cit_"#_pos".base_sh"; \
             mouse_events: 0; \
@@ -33465,8 +33209,8 @@ collections {
             } \
          } \
          part { name: "cit_"#_pos".check"; \
-           mouse_events: 0; \
-           description { state: "default" 0.0; \
+            mouse_events: 0; \
+            description { state: "default" 0.0; \
                rel1 { \
                   to: "cit_"#_pos".bg"; \
                   relative: 0.7 0.6; \
@@ -33481,12 +33225,12 @@ collections {
                visible: 0; \
                color: 255 0 0 255; \
                image.normal: "check.png"; \
-           } \
-           description { state: "visible" 0.0; \
+            } \
+            description { state: "visible" 0.0; \
                inherit: "default" 0.0; \
                visible: 1; \
             } \
-        } \
+         } \
       programs { \
          program { \
             name:    "cit_"#_pos".go_active"; \
@@ -33526,7 +33270,7 @@ collections {
             source: "cit_"#_pos".clicked"; \
             signal: "mouse,clicked,1"; \
             source: "cit_"#_pos".event"; \
-           action: SIGNAL_EMIT "elm,action,selected" #_pos; \
+            action: SIGNAL_EMIT "elm,action,selected" #_pos; \
          } \
          program { \
             name:    "cit_"#_pos".clear"; \
@@ -33589,9 +33333,9 @@ collections {
                    min: 24 24;
                    max: 999999 24;
                    rel1.to: "bg";
-                  rel1.offset: 6 6;
+                   rel1.offset: 6 6;
                    rel2.to: "bg";
-                  rel2.offset: -7 -7;
+                   rel2.offset: -7 -7;
                    color: 255 255 255 0;
                    align: 0.0 0.0;
                }
@@ -33600,9 +33344,9 @@ collections {
                mouse_events:  0;
                description { state: "default" 0.0;
                    rel1.to: "spinner-base";
-                  rel1.offset: -3 -3;
+                   rel1.offset: -3 -3;
                    rel2.to: "spinner-base";
-                  rel2.offset: 2 2;
+                   rel2.offset: 2 2;
                    image {
                        normal: "shelf_inset.png";
                        border: 7 7 7 7;
@@ -33618,10 +33362,10 @@ collections {
                    min: 256 220;
                    rel1.to_x: "bg";
                    rel1.to_y: "spinner-base";
-                  rel1.offset: 6 6;
-                  rel1.relative: 0 1;
+                   rel1.offset: 6 6;
+                   rel1.relative: 0 1;
                    rel2.to: "bg";
-                  rel2.offset: -7 -7;
+                   rel2.offset: -7 -7;
                    color: 255 255 255 0;
                }
            }
@@ -33629,9 +33373,9 @@ collections {
                mouse_events:  0;
                description { state: "default" 0.0;
                    rel1.to: "table-base";
-                  rel1.offset: -3 -3;
+                   rel1.offset: -3 -3;
                    rel2.to: "table-base";
-                  rel2.offset: 2 2;
+                   rel2.offset: 2 2;
                    image {
                        normal: "shelf_inset.png";
                        border: 7 7 7 7;
@@ -33645,9 +33389,9 @@ collections {
                mouse_events: 0;
                description { state: "default" 0.0;
                    rel1.to: "table-base";
-                  rel1.relative: 0 0;
+                   rel1.relative: 0 0;
                    rel2.to: "table-base";
-                  rel2.relative: 1 0.1;
+                   rel2.relative: 1 0.1;
                    color: 255 255 255 0;
                }
            }
@@ -33657,10 +33401,10 @@ collections {
                description { state: "default" 0.0;
                    rel1.to_x: "table-base";
                    rel1.to_y: "header";
-                  rel1.relative: 0 1;
-                  rel1.offset: 3 0;
+                   rel1.relative: 0 1;
+                   rel1.offset: 3 0;
                    rel2.to: "table-base";
-                  rel2.offset: -3 0;
+                   rel2.offset: -3 0;
                    color: 255 255 255 0;
                }
            }
@@ -33812,6 +33556,10 @@ collections {
                    max: 16 16;
                    image.normal: "sp_bt_l.png";
                }
+               description { state: "rtl" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "sp_bt_r.png";
+               }
            }
            part { name: "right_bt_icon";
                repeat_events: 1;
@@ -33823,6 +33571,10 @@ collections {
                    max: 16 16;
                    image.normal: "sp_bt_r.png";
                }
+               description { state: "rtl" 0.0;
+                   inherit: "default" 0.0;
+                   image.normal: "sp_bt_l.png";
+               }
            }
            part { name: "month_text";
                type: TEXT;
@@ -33850,13 +33602,13 @@ collections {
                    }
                }
            }
-          CH(0)   CH(1)   CH(2)   CH(3)   CH(4)   CH(5)   CH(6)
-          CIT(0)  CIT(1)  CIT(2)  CIT(3)  CIT(4)  CIT(5)  CIT(6)
-          CIT(7)  CIT(8)  CIT(9)  CIT(10) CIT(11) CIT(12) CIT(13)
-          CIT(14) CIT(15) CIT(16) CIT(17) CIT(18) CIT(19) CIT(20)
-          CIT(21) CIT(22) CIT(23) CIT(24) CIT(25) CIT(26) CIT(27)
-          CIT(28) CIT(29) CIT(30) CIT(31) CIT(32) CIT(33) CIT(34)
-          CIT(35) CIT(36) CIT(37) CIT(38) CIT(39) CIT(40) CIT(41)
+           CH(0)   CH(1)   CH(2)   CH(3)   CH(4)   CH(5)   CH(6)
+           CIT(0)  CIT(1)  CIT(2)  CIT(3)  CIT(4)  CIT(5)  CIT(6)
+           CIT(7)  CIT(8)  CIT(9)  CIT(10) CIT(11) CIT(12) CIT(13)
+           CIT(14) CIT(15) CIT(16) CIT(17) CIT(18) CIT(19) CIT(20)
+           CIT(21) CIT(22) CIT(23) CIT(24) CIT(25) CIT(26) CIT(27)
+           CIT(28) CIT(29) CIT(30) CIT(31) CIT(32) CIT(33) CIT(34)
+           CIT(35) CIT(36) CIT(37) CIT(38) CIT(39) CIT(40) CIT(41)
        }
        programs {
            program { name: "dec_start";
@@ -33937,6 +33689,20 @@ collections {
                transition: DECELERATE 0.5;
                target: "right_over3";
            }
+           program { name: "to_rtl";
+               signal: "edje,state,rtl";
+               source: "edje";
+               action: STATE_SET "rtl" 0.0;
+               target: "right_bt_icon";
+               target: "left_bt_icon";
+           }
+           program { name: "to_ltr";
+               signal: "edje,state,ltr";
+               source: "edje";
+               action: STATE_SET "default" 0.0;
+               target: "right_bt_icon";
+               target: "left_bt_icon";
+           }
        }
    }
 
@@ -34454,7 +34220,7 @@ collections {
 
       //FIXME: quick successive clicks on, say, up, lead to nastiness
       script {
-        public cur, prev, next, lock;
+         public cur, prev, next, lock;
 
          public animator_bottom_down(val, Float:pos) {
             new tmp[FLIP_PICKER_MAX_LEN];
@@ -34602,76 +34368,76 @@ collections {
       }
 
       parts {
-        part { name: "shad";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.offset: -4 -4;
-              rel1.to: "base";
-              rel2.offset: 3 3;
-              rel2.to: "base";
-              image {
+         part { name: "shad";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.offset: -4 -4;
+               rel1.to: "base";
+               rel2.offset: 3 3;
+               rel2.to: "base";
+               image {
                   normal: "flip_base_shad.png";
-                 border: 8 8 8 8;
-              }
-           }
-        }
-
-        part { name: "base";
-           scale: 1;
-           description { state: "default" 0.0;
-              rel1.offset: 4 4;
-              rel2.offset: -5 -5;
-              min: 24 48;
-              image.normal: "flip_base.png";
-           }
-        }
-
-        part { name: "b";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "base";
-              rel1.relative: 0.0 0.5;
-              rel2.to: "base";
-              color: 0 0 0 0;
-           }
-           description { state: "hidden" 0.0;
-               inherit: "default" 0.0;
-               visible: 0;
-           }
-        }
-
-        part { name: "t";
-           type: RECT;
-           mouse_events: 1;
-           description { state: "default" 0.0;
-              rel1.to: "base";
-              rel2.to: "base";
-              rel2.relative: 1.0 0.5;
-              color: 0 0 0 0;
-           }
-           description { state: "hidden" 0.0;
-               inherit: "default" 0.0;
-               visible: 0;
-           }
-        }
-
-        part { name: "bottom_sheet_static";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_b.png";
-           }
-         }
-
-        part { name: "bottom_b";
-           mouse_events: 0;
+                  border: 8 8 8 8;
+               }
+            }
+         }
+
+         part { name: "base";
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1.offset: 4 4;
+               rel2.offset: -5 -5;
+               min: 24 48;
+               image.normal: "flip_base.png";
+            }
+         }
+
+         part { name: "b";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel1.relative: 0.0 0.5;
+               rel2.to: "base";
+               color: 0 0 0 0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+
+         part { name: "t";
+            type: RECT;
+            mouse_events: 1;
+            description { state: "default" 0.0;
+               rel1.to: "base";
+               rel2.to: "base";
+               rel2.relative: 1.0 0.5;
+               color: 0 0 0 0;
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+
+         part { name: "bottom_sheet_static";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_b.png";
+            }
+         }
+
+         part { name: "bottom_b";
+            mouse_events: 0;
             clip_to: "bottom_clipper";
             type: TEXT;
             scale: 1;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                rel1.to: "base";
                rel2.to: "base";
                color: 0 0 0 255;
@@ -34685,45 +34451,45 @@ collections {
             }
          }
 
-        part { name: "shadow";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              rel2.relative: 1.0 0.0;
-              image.normal: "flip_shad.png";
-           }
-           description { state: "half" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 0.5;
-           }
-           description { state: "full" 0.0;
-              inherit: "default" 0.0;
-              rel2.relative: 1.0 1.0;
-           }
-        }
-
-        part { name: "bottom_sheet";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "flip_b.png";
-           }
-           description { state: "shrink" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel2.relative: 1.0 0.0;
-           }
-         }
-
-        part { name: "bottom";
-           mouse_events: 0;
+         part { name: "shadow";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               rel2.relative: 1.0 0.0;
+               image.normal: "flip_shad.png";
+            }
+            description { state: "half" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 0.5;
+            }
+            description { state: "full" 0.0;
+               inherit: "default" 0.0;
+               rel2.relative: 1.0 1.0;
+            }
+         }
+
+         part { name: "bottom_sheet";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "flip_b.png";
+            }
+            description { state: "shrink" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2.relative: 1.0 0.0;
+            }
+         }
+
+         part { name: "bottom";
+            mouse_events: 0;
             clip_to: "bottom_clipper";
             type: TEXT;
             scale: 1;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                rel1.to: "base";
                rel2.to: "base";
                color: 0 0 0 255;
@@ -34735,30 +34501,30 @@ collections {
                   align: 0.5 0.5;
                }
             }
-           description { state: "shrink" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel2.relative: 1.0 0.5; /* FIXME: same visual effect? --> MAP! */
-           }
+            description { state: "shrink" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel2.relative: 1.0 0.5; /* FIXME: same visual effect? --> MAP! */
+            }
          }
 
-        part { name: "top_sheet_static";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_t.png";
-           }
+         part { name: "top_sheet_static";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_t.png";
+            }
          }
 
-        part { name: "top_b";
-           mouse_events: 0;
+         part { name: "top_b";
+            mouse_events: 0;
             clip_to: "top_clipper";
             type: TEXT;
             scale: 1;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                rel1.to: "base";
                rel2.to: "base";
                color: 0 0 0 255;
@@ -34773,28 +34539,28 @@ collections {
             }
          }
 
-        part { name: "top_sheet";
-           mouse_events: 0;
-           description { state: "default" 0.0;
-              visible: 1;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "flip_t.png";
-           }
-           description { state: "shrink" 0.0;
-              inherit: "default" 0.0;
-              color: 128 128 128 255;
-              visible: 0;
-              rel1.relative: 0.0 1.0;
-           }
+         part { name: "top_sheet";
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "flip_t.png";
+            }
+            description { state: "shrink" 0.0;
+               inherit: "default" 0.0;
+               color: 128 128 128 255;
+               visible: 0;
+               rel1.relative: 0.0 1.0;
+            }
          }
 
-        part { name: "top";
-           mouse_events: 0;
+         part { name: "top";
+            mouse_events: 0;
             clip_to: "top_clipper";
             type: TEXT;
             scale: 1;
-           description { state: "default" 0.0;
+            description { state: "default" 0.0;
                rel1.to: "base";
                rel2.to: "base";
                color: 0 0 0 255;
@@ -34806,45 +34572,45 @@ collections {
                   align: 0.5 0.5;
                }
             }
-           description { state: "shrink" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-              rel1.relative: 0.0 0.5;
-           }
-         }
-
-        part { name: "arrow_top";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 0.0;
-              rel1.to: "t";
-              rel2.to: "t";
-              image.normal: "arrow_up.png";
-           }
-           description { state: "hidden" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-           }
-        }
-        part { name: "arrow_bottom";
-           mouse_events: 0;
-           scale: 1;
-           description { state: "default" 0.0;
-              min: 15 15;
-              max: 15 15;
-              align: 0.5 1.0;
-              rel1.to: "b";
-              rel2.to: "b";
-              image.normal: "arrow_down.png";
-           }
-           description { state: "hidden" 0.0;
-              inherit: "default" 0.0;
-              visible: 0;
-           }
-        }
+            description { state: "shrink" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel1.relative: 0.0 0.5;
+            }
+         }
+
+         part { name: "arrow_top";
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 0.0;
+               rel1.to: "t";
+               rel2.to: "t";
+               image.normal: "arrow_up.png";
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "arrow_bottom";
+            mouse_events: 0;
+            scale: 1;
+            description { state: "default" 0.0;
+               min: 15 15;
+               max: 15 15;
+               align: 0.5 1.0;
+               rel1.to: "b";
+               rel2.to: "b";
+               image.normal: "arrow_down.png";
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+            }
+         }
 
          part {
             type: RECT;
@@ -34872,16 +34638,16 @@ collections {
       }
 
       programs {
-        program { name: "load";
-           signal: "load";
-           source: "";
-           script {
-              append_str(cur, "");
-              append_str(prev, "");
-              append_str(next, "");
-              set_int(lock, 0);
-           }
-        }
+         program { name: "load";
+            signal: "load";
+            source: "";
+            script {
+               append_str(cur, "");
+               append_str(prev, "");
+               append_str(next, "");
+               set_int(lock, 0);
+            }
+         }
 
          program { name: "hide_arrows";
             signal: "elm,state,button,hidden";
@@ -34903,26 +34669,26 @@ collections {
             target: "b";
          }
 
-        program { name: "up";
-           signal: "mouse,down,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,start" "";
-        }
-        program { name: "up,stop";
-           signal: "mouse,up,1";
-           source: "t";
-           action: SIGNAL_EMIT "elm,action,up,stop" "";
-        }
-        program { name: "down";
-           signal: "mouse,down,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,start" "";
-        }
-        program { name: "down,stop";
-           signal: "mouse,up,1";
-           source: "b";
-           action: SIGNAL_EMIT "elm,action,down,stop" "";
-        }
+         program { name: "up";
+            signal: "mouse,down,1";
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,start" "";
+         }
+         program { name: "up,stop";
+            signal: "mouse,up,1";
+            source: "t";
+            action: SIGNAL_EMIT "elm,action,up,stop" "";
+         }
+         program { name: "down";
+            signal: "mouse,down,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,start" "";
+         }
+         program { name: "down,stop";
+            signal: "mouse,up,1";
+            source: "b";
+            action: SIGNAL_EMIT "elm,action,down,stop" "";
+         }
       }
    }
 
@@ -35000,6 +34766,9 @@ collections {
 
       data {
          item: "len_threshold" "14";
+         item: "display_item_num" "3";
+         item: "min_height" "-1";
+         item: "min_width" "-1";
       }
 
       parts {
@@ -35136,176 +34905,494 @@ collections {
             type: SWALLOW;
             description { state: "default" 0.0;
                align: 0.0 0.0;
-               min: 10 10;
+               min: 10 10;
+               fixed: 1 1;
+               rel2 {
+                  relative: 0.0 0.0;
+                  offset: 0 0;
+               }
+            }
+         }
+         part { name: "elm.swallow.home";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 10 10;
+               fixed: 1 1;
+               rel1 {
+                  to: "elm.swallow.up";
+                  relative: 1.0 0.0;
+                  offset: 5 0;
+               }
+               rel2 {
+                  to: "elm.swallow.up";
+                  relative: 1.0 1.0;
+                  offset: 20 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.files";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               min: 10 10;
+               fixed: 1 1;
+               rel1 {
+                  to_y: "elm.swallow.home";
+                  relative: 0.0 1.0;
+                  offset: 0 0;
+               }
+               rel2 {
+                  to_y: "elm.swallow.path";
+                  relative: 1.0 0.0;
+                  offset: -1 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.path";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.5 1.0;
+               fixed: 1 1;
+               rel1 {
+                  to_y: "elm.swallow.filename";
+                  relative: 0.0 0.0;
+                  offset: 0 -1;
+               }
+               rel2 {
+                  to_y: "elm.swallow.filename";
+                  relative: 1.0 0.0;
+                  offset: -1 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.filename";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.5 1.0;
+               fixed: 1 1;
+               rel1 {
+                  to_y: "elm.swallow.ok";
+                  relative: 0.0 0.0;
+                  offset: 0 -1;
+               }
+               rel2 {
+                  to_y: "elm.swallow.ok";
+                  relative: 1.0 0.0;
+                  offset: -1 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.cancel";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 1.0;
+               fixed: 1 1;
+               rel1 {
+                  to: "elm.swallow.ok";
+                  relative: 0.0 0.0;
+                  offset: -3 0;
+               }
+               rel2 {
+                  to: "elm.swallow.ok";
+                  relative: 0.0 1.0;
+                  offset: -3 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.ok";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 1.0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 1.0 1.0;
+                  offset: -1 -1;
+               }
+            }
+         }
+      }
+   }
+
+   group { name: "elm/fileselector_entry/base/default";
+      parts {
+         part { name: "elm.swallow.entry";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               min: 50 10;
+               rel2 { to_x: "elm.swallow.button";
+                  relative: 0.0 1.0;
+                  offset: -1 -1;
+               }
+            }
+         }
+         part { name: "elm.swallow.button";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               min: 10 10;
+               fixed: 1 1;
+               rel1 {
+                  relative: 1.0 0.0;
+                  offset: -21 0;
+               }
+            }
+         }
+      }
+   }
+
+////////////////////////////////////////////////////////////////////////
+// Standard layouts to be used                                        //
+////////////////////////////////////////////////////////////////////////
+   /* application with toolbar and main content area */
+   group { name: "elm/layout/application/toolbar-content";
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+            }
+         }
+
+         part { name: "elm.external.toolbar";
+            type: EXTERNAL;
+            source: "elm/toolbar";
+            description { state: "default" 0.0;
+               align: 0.5 0.0;
+               fixed: 0 1;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -1 47;
+               }
+            }
+         }
+      }
+   }
+
+   /* application with toolbar and main content area with a back button and title area */
+   group { name: "elm/layout/application/toolbar-content-back";
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 { to_y: "title_clipper";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+            }
+         }
+
+         part { name: "elm.external.toolbar";
+            type: EXTERNAL;
+            source: "elm/toolbar";
+            description { state: "default" 0.0;
+               fixed: 0 1;
+               align: 0.5 0.0;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -1 47;
+               }
+            }
+         }
+         part { name: "title_clipper";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1 {
+                  to_y: "back";
+               }
+               rel2 {
+                  to_y: "back";
+               }
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2 {
+                  relative: 1.0 0.0;
+               }
+            }
+         }
+         part { name: "back_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "back";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "back_clipper";
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
                fixed: 1 1;
-               rel2 {
-                  relative: 0.0 0.0;
-                  offset: 0 0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: 0 1;
+               }
+               rel2 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: 50 32;
                }
+               params.string: "label" "Back";
             }
          }
-         part { name: "elm.swallow.home";
+         programs {
+            program {
+               signal: "clicked";
+               source: "back";
+               action: SIGNAL_EMIT "elm,action,back" "";
+            }
+            program {
+               signal: "elm,back,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,back,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,title,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               transition: LINEAR 0.1;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,title,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "title_clipper";
+            }
+         }
+
+         part { name: "elm.swallow.end";
             type: SWALLOW;
             description { state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 10 10;
+               align: 1.0 0.0;
                fixed: 1 1;
-               rel1 {
-                  to: "elm.swallow.up";
-                  relative: 1.0 0.0;
-                  offset: 5 0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 1.0 1.0;
+                  offset: -2 1;
                }
-               rel2 {
-                  to: "elm.swallow.up";
+               rel2 { to_y: "elm.external.toolbar";
                   relative: 1.0 1.0;
-                  offset: 20 -1;
+                  offset: -1 32;
                }
             }
          }
-         part { name: "elm.swallow.files";
-            type: SWALLOW;
+
+         part { name: "elm.text.title";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            scale: 1;
             description { state: "default" 0.0;
-               align: 1.0 0.0;
-               min: 10 10;
-               fixed: 1 1;
-               rel1 {
-                  to_y: "elm.swallow.home";
+               rel1 { to_y: "elm.external.toolbar";
+                  to_x: "back";
+                  relative: 1.0 1.0;
+                  offset: 2 1;
+               }
+               rel2 { to_y: "back";
+                  to_x: "elm.swallow.end";
                   relative: 0.0 1.0;
-                  offset: 0 0;
+                  offset: -3 -1;
                }
-               rel2 {
-                  to_y: "elm.swallow.path";
-                  relative: 1.0 0.0;
-                  offset: -1 -1;
+               text {
+                  font: "Sans:style=Bold";
+                  size: 12;
                }
             }
          }
-         part { name: "elm.swallow.path";
+      }
+   }
+
+   /* application with toolbar and main content area with a back and next buttons and title area */
+   group { name: "elm/layout/application/toolbar-content-back-next";
+      parts {
+         part { name: "elm.swallow.content";
             type: SWALLOW;
             description { state: "default" 0.0;
-               align: 0.5 1.0;
-               fixed: 1 1;
-               rel1 {
-                  to_y: "elm.swallow.filename";
-                  relative: 0.0 0.0;
-                  offset: 0 -1;
+               rel1 { to_y: "title_clipper";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
                }
+            }
+         }
+
+         part { name: "elm.external.toolbar";
+            type: EXTERNAL;
+            source: "elm/toolbar";
+            description { state: "default" 0.0;
+               fixed: 0 1;
+               align: 0.5 0.0;
                rel2 {
-                  to_y: "elm.swallow.filename";
                   relative: 1.0 0.0;
-                  offset: -1 -1;
+                  offset: -1 47;
                }
             }
          }
-         part { name: "elm.swallow.filename";
-            type: SWALLOW;
+         part { name: "title_clipper";
+            type: RECT;
             description { state: "default" 0.0;
-               align: 0.5 1.0;
-               fixed: 1 1;
+               visible: 1;
                rel1 {
-                  to_y: "elm.swallow.ok";
-                  relative: 0.0 0.0;
-                  offset: 0 -1;
+                  to_y: "back";
                }
                rel2 {
-                  to_y: "elm.swallow.ok";
+                  to_y: "back";
+               }
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2 {
                   relative: 1.0 0.0;
-                  offset: -1 -1;
                }
             }
          }
-         part { name: "elm.swallow.cancel";
-            type: SWALLOW;
+         part { name: "back";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "back_clipper";
             description { state: "default" 0.0;
-               align: 1.0 1.0;
+               align: 0.0 0.0;
                fixed: 1 1;
-               rel1 {
-                  to: "elm.swallow.ok";
-                  relative: 0.0 0.0;
-                  offset: -3 0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: 0 1;
                }
-               rel2 {
-                  to: "elm.swallow.ok";
+               rel2 { to_y: "elm.external.toolbar";
                   relative: 0.0 1.0;
-                  offset: -3 -1;
+                  offset: 50 32;
                }
+               params.string: "label" "Back";
             }
          }
-         part { name: "elm.swallow.ok";
-            type: SWALLOW;
+         part { name: "back_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
             description { state: "default" 0.0;
-               align: 1.0 1.0;
-               fixed: 1 1;
-               rel1 {
-                  relative: 1.0 1.0;
-                  offset: -1 -1;
-               }
+               visible: 1;
             }
-         }
-      }
-   }
-
-   group { name: "elm/fileselector_entry/base/default";
-      parts {
-         part { name: "elm.swallow.entry";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               align: 0.0 0.0;
-               min: 50 10;
-               rel2 { to_x: "elm.swallow.button";
-                  relative: 0.0 1.0;
-                  offset: -1 -1;
-               }
+            description { state: "hidden" 0.0;
+               visible: 0;
             }
          }
-         part { name: "elm.swallow.button";
-            type: SWALLOW;
+         part { name: "next";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "next_clipper";
             description { state: "default" 0.0;
                align: 1.0 0.0;
-               min: 10 10;
                fixed: 1 1;
-               rel1 {
-                  relative: 1.0 0.0;
-                  offset: -21 0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 1.0 1.0;
+                  offset: -2 1;
+               }
+               rel2 { to_y: "elm.external.toolbar";
+                  relative: 1.0 1.0;
+                  offset: -1 32;
                }
+               params.string: "label" "Next";
+           }
+         }
+         part { name: "next_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
+         programs {
+            program {
+               signal: "clicked";
+               source: "back";
+               action: SIGNAL_EMIT "elm,action,back" "";
+            }
+            program {
+               signal: "elm,title,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               transition: LINEAR 0.1;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,title,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,back,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,back,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "clicked";
+               source: "next";
+               action: SIGNAL_EMIT "elm,action,next" "";
+            }
+            program {
+               signal: "elm,next,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "next_clipper";
+            }
+            program {
+               signal: "elm,next,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "next_clipper";
             }
          }
-      }
-   }
-
-////////////////////////////////////////////////////////////////////////
-// Standard layouts to be used                                        //
-////////////////////////////////////////////////////////////////////////
-   /* application with toolbar and main content area */
-   group { name: "elm/layout/application/toolbar-content";
-      parts {
-         part { name: "elm.swallow.content";
-            type: SWALLOW;
+         part { name: "elm.text.title";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            scale: 1;
+            clip_to: "title_clipper";
             description { state: "default" 0.0;
                rel1 { to_y: "elm.external.toolbar";
+                  to_x: "back";
+                  relative: 1.0 1.0;
+                  offset: 2 1;
+               }
+               rel2 { to_y: "back";
+                  to_x: "next";
                   relative: 0.0 1.0;
-                  offset: -1;
+                  offset: -3 -1;
                }
-            }
-         }
-
-         part { name: "elm.external.toolbar";
-            type: EXTERNAL;
-            source: "elm/toolbar";
-            description { state: "default" 0.0;
-               align: 0.5 0.0;
-               fixed: 0 1;
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 47;
+               text {
+                  font: "Sans:style=Bold";
+                  size: 12;
                }
             }
          }
       }
    }
-
-   /* application with toolbar and main content area with a back button and title area */
-   group { name: "elm/layout/application/toolbar-content-back";
+   /* application with a main content area with a back button and title area */
+   group { name: "elm/layout/application/content-back";
       parts {
          part { name: "elm.swallow.content";
             type: SWALLOW;
@@ -35316,19 +35403,6 @@ collections {
                }
             }
          }
-
-         part { name: "elm.external.toolbar";
-            type: EXTERNAL;
-            source: "elm/toolbar";
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 47;
-               }
-            }
-         }
          part { name: "title_clipper";
             type: RECT;
             description { state: "default" 0.0;
@@ -35365,12 +35439,12 @@ collections {
             description { state: "default" 0.0;
                align: 0.0 0.0;
                fixed: 1 1;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
+               rel1 {
+                  relative: 0.0 0.0;
                   offset: 0 1;
                }
-               rel2 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
+               rel2 {
+                  relative: 0.0 0.0;
                   offset: 50 32;
                }
                params.string: "label" "Back";
@@ -35414,11 +35488,11 @@ collections {
             description { state: "default" 0.0;
                align: 1.0 0.0;
                fixed: 1 1;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 1.0 1.0;
+               rel1 {
+                  relative: 1.0 0.0;
                   offset: -2 1;
                }
-               rel2 { to_y: "elm.external.toolbar";
+               rel2 {
                   relative: 1.0 1.0;
                   offset: -1 32;
                }
@@ -35428,11 +35502,11 @@ collections {
          part { name: "elm.text.title";
             type: TEXT;
             effect: SOFT_SHADOW;
-            scale: 1;
+            scale: 1; 
             description { state: "default" 0.0;
-               rel1 { to_y: "elm.external.toolbar";
+               rel1 {
                   to_x: "back";
-                  relative: 1.0 1.0;
+                  relative: 1.0 0.0;
                   offset: 2 1;
                }
                rel2 { to_y: "back";
@@ -35449,8 +35523,8 @@ collections {
       }
    }
 
-   /* application with toolbar and main content area with a back and next buttons and title area */
-   group { name: "elm/layout/application/toolbar-content-back-next";
+   /* application with a main content area with a back and next buttons and title area */
+   group { name: "elm/layout/application/content-back-next";
       parts {
          part { name: "elm.swallow.content";
             type: SWALLOW;
@@ -35462,18 +35536,6 @@ collections {
             }
          }
 
-         part { name: "elm.external.toolbar";
-            type: EXTERNAL;
-            source: "elm/toolbar";
-            description { state: "default" 0.0;
-               fixed: 0 1;
-               align: 0.5 0.0;
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 47;
-               }
-            }
-         }
          part { name: "title_clipper";
             type: RECT;
             description { state: "default" 0.0;
@@ -35500,12 +35562,12 @@ collections {
             description { state: "default" 0.0;
                align: 0.0 0.0;
                fixed: 1 1;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
+               rel1 {
+                  relative: 0.0 0.0;
                   offset: 0 1;
                }
-               rel2 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
+               rel2 {
+                  relative: 0.0 0.0;
                   offset: 50 32;
                }
                params.string: "label" "Back";
@@ -35528,12 +35590,12 @@ collections {
             description { state: "default" 0.0;
                align: 1.0 0.0;
                fixed: 1 1;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 1.0 1.0;
+               rel1 {
+                  relative: 1.0 0.0;
                   offset: -2 1;
                }
-               rel2 { to_y: "elm.external.toolbar";
-                  relative: 1.0 1.0;
+               rel2 {
+                  relative: 1.0 0.0;
                   offset: -1 32;
                }
                params.string: "label" "Next";
@@ -35604,373 +35666,711 @@ collections {
             scale: 1;
             clip_to: "title_clipper";
             description { state: "default" 0.0;
-               rel1 { to_y: "elm.external.toolbar";
+               rel1 {
                   to_x: "back";
-                  relative: 1.0 1.0;
+                  relative: 1.0 0.0;
                   offset: 2 1;
                }
-               rel2 { to_y: "back";
-                  to_x: "next";
-                  relative: 0.0 1.0;
-                  offset: -3 -1;
+               rel2 { to_y: "back";
+                  to_x: "next";
+                  relative: 0.0 1.0;
+                  offset: -3 -1;
+               }
+               text {
+                  font: "Sans:style=Bold";
+                  size: 12;
+               }
+            }
+         }
+      }
+   }
+
+   /* application with toolbar and main content area as a vertical box */
+   group { name: "elm/layout/application/toolbar-vbox";
+      parts {
+         part { name: "elm.box.content";
+            type: BOX;
+            description { state: "default" 0.0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+               box.layout: "vertical";
+            }
+         }
+
+         part { name: "elm.external.toolbar";
+            type: EXTERNAL;
+            source: "elm/toolbar";
+            description { state: "default" 0.0;
+               align: 0.5 0.0;
+               fixed: 0 1;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -1 47;
+               }
+            }
+         }
+      }
+   }
+
+   /* application with toolbar and main content area as a table */
+   group { name: "elm/layout/application/toolbar-table";
+      parts {
+         part { name: "elm.table.content";
+            type: TABLE;
+            description { state: "default" 0.0;
+               rel1 { to_y: "elm.external.toolbar";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+            }
+         }
+
+         part { name: "elm.external.toolbar";
+            type: EXTERNAL;
+            source: "elm/toolbar";
+            description { state: "default" 0.0;
+               align: 0.5 0.0;
+               fixed: 0 1;
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -1 47;
+               }
+            }
+         }
+      }
+   }
+
+///////////////////////////////////////////////////////////////////////////////
+   group { name: "elm/segment_control/base/default";
+#define SEGMENT_TYPE_SINGLE 1
+#define SEGMENT_TYPE_LEFT 2
+#define SEGMENT_TYPE_MIDDLE 3
+#define SEGMENT_TYPE_RIGHT 4
+#define SEGMENT_STATE_NORMAL 1
+#define SEGMENT_STATE_PRESSED 2
+#define SEGMENT_STATE_SELECTED 3
+#define SEGMENT_STATUS_ENABLED 0
+#define SEGMENT_STATUS_DISABLED 1
+      parts {
+         part { name: "bg";
+            type: RECT;
+            mouse_events: 0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               color: 0 0 0 0;
+               min: 100 40;
+            }
+         }
+      }
+   }
+   group { name: "elm/segment_control/item/default";
+      data.item: "label.wrap.part" "label.bg";
+      styles {
+         style { name: "seg_text_style_normal";
+            base: "font=Sans font_size=16 style=shadow \
+            shadow_color=#2924224d \
+            align=center \
+            color=#ffffffff wrap=char text_class=label";
+            tag:  "br" "\n";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+            tag:  "tab" "\t";
+         }
+         style { name: "seg_text_style_selected";
+            base: "font=Sans:style=Bold font_size=16 style=shadow \
+            shadow_color=#aaaaaa4d \
+            align=center \
+            color=#111111ff wrap=char text_class=label";
+            tag:  "br" "\n";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "tab" "\t";
+         }
+         style { name: "seg_text_style_disabled";
+            base: "font=Sans:style=Medium font_size=16 style=shadow \
+            shadow_color=#2924224d \
+            align=center color=#2924224d \
+            wrap=char text_class=label";
+            tag:  "br" "\n";
+            tag:  "hilight" "+ font=Sans:style=Bold";
+            tag:  "b" "+ font=Sans:style=Bold";
+            tag:  "tab" "\t";
+         }
+      }
+      images {
+         image: "seg_single_pressed.png" COMP;
+         image: "seg_single_selected.png" COMP;
+         image: "seg_single_normal.png" COMP;
+
+         image: "seg_left_pressed.png" COMP;
+         image: "seg_left_selected.png" COMP;
+         image: "seg_left_normal.png" COMP;
+
+         image: "seg_middle_pressed.png" COMP;
+         image: "seg_middle_selected.png" COMP;
+         image: "seg_middle_normal.png" COMP;
+
+         image: "seg_right_pressed.png" COMP;
+         image: "seg_right_selected.png" COMP;
+         image: "seg_right_normal.png" COMP;
+      }
+      parts {
+         part { name: "segment";
+            mouse_events: 1;
+            scale: 1;
+            description { state: "default" 0.0;
+               min: 1 1;
+               visible: 0;
+               image {
+                  normal: "seg_single_normal.png";
+                  border: 7 7 7 7;
+                  border_scale: 1;
+                  middle: 1;
+               }
+            }
+            description { state: "default_single" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_single_normal.png";
+                  border: 7 7 7 7;
+               }
+            }
+            description { state: "default_left" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+               normal: "seg_left_normal.png";
+                  border:  6 1 7 7;
+               }
+            }
+            description { state: "default_right" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_right_normal.png";
+                  border: 1 6 7 7;
+               }
+            }
+            description { state: "default_middle" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_middle_normal.png";
+                  border: 2 2 2 2;
+               }
+            }
+            description { state: "pressed_single" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_single_pressed.png";
+                  border: 7 7 7 7;
                }
-               text {
-                  font: "Sans:style=Bold";
-                  size: 12;
+            }
+            description { state: "pressed_left" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_left_pressed.png";
+                  border:  6 1 7 7;
                }
             }
-         }
-      }
-   }
-   /* application with a main content area with a back button and title area */
-   group { name: "elm/layout/application/content-back";
-      parts {
-         part { name: "elm.swallow.content";
-            type: SWALLOW;
-            description { state: "default" 0.0;
-               rel1 { to_y: "title_clipper";
-                  relative: 0.0 1.0;
-                  offset: -1 1;
+            description { state: "pressed_right" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_right_pressed.png";
+                  border: 1 6 7 7;
                }
             }
-         }
-         part { name: "title_clipper";
-            type: RECT;
-            description { state: "default" 0.0;
+            description { state: "pressed_middle" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
-               rel1 {
-                  to_y: "back";
+               image {
+                  normal: "seg_middle_pressed.png";
+                  border: 1 1 2 2;
                }
-               rel2 {
-                  to_y: "back";
+            }
+            description { state: "selected_single" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_single_selected.png";
+                  border: 7 7 7 7;
                }
             }
-            description { state: "hidden" 0.0;
+            description { state: "selected_left" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
-               rel2 {
-                  relative: 1.0 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_left_selected.png";
+                  border:  6 3 7 7;
                }
             }
-         }
-         part { name: "back_clipper";
-            type: RECT;
-            clip_to: "title_clipper";
-            description { state: "default" 0.0;
+            description { state: "selected_right" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
+               image {
+                  normal: "seg_right_selected.png";
+                  border: 3 6 7 7;
+               }
             }
-            description { state: "hidden" 0.0;
-               visible: 0;
+            description { state: "selected_middle" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_middle_selected.png";
+                  border: 3 3 3 3;
+               }
             }
          }
-         part { name: "back";
-            type: EXTERNAL;
-            source: "elm/button";
-            clip_to: "back_clipper";
+         part { name: "padding_left";
+            type: RECT;
+            scale: 1;
+            mouse_events: 0;
             description { state: "default" 0.0;
                align: 0.0 0.0;
-               fixed: 1 1;
-               rel1 {
-                  relative: 0.0 0.0;
-                  offset: 0 1;
-               }
-               rel2 {
-                  relative: 0.0 0.0;
-                  offset: 50 32;
-               }
-               params.string: "label" "Back";
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 0.0 1.0;
+               min: 2 2;
+               max: 2 2;
+               fixed: 1 0;
+               color: 0 0 0 0;
             }
          }
-         programs {
-            program {
-               signal: "clicked";
-               source: "back";
-               action: SIGNAL_EMIT "elm,action,back" "";
-            }
-            program {
-               signal: "elm,back,hide";
-               source: "elm";
-               action: STATE_SET "hidden" 0.0;
-               target: "back_clipper";
-            }
-            program {
-               signal: "elm,back,show";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "back_clipper";
+         part { name: "padding_right";
+            type: RECT;
+            scale: 1;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               rel1.relative: 1.0 0.0;
+               rel2.relative: 1.0 1.0;
+               min: 2 2;
+               max: 2 2;
+               fixed: 1 0;
+               color: 0 0 0 0;
             }
-            program {
-               signal: "elm,title,hide";
-               source: "elm";
-               action: STATE_SET "hidden" 0.0;
-               transition: LINEAR 0.1;
-               target: "title_clipper";
+         }
+         part { name: "padding_top";
+            type: RECT;
+            scale: 1;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               rel1.relative: 0.0 0.0;
+               rel2.relative: 1.0 0.0;
+               min: 2 2;
+               max: 2 2;
+               fixed: 0 1;
+               color: 0 0 0 0;
             }
-            program {
-               signal: "elm,title,show";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "title_clipper";
+         }
+         part { name: "padding_bottom";
+            type: RECT;
+            scale: 1;
+            mouse_events: 0;
+            description { state: "default" 0.0;
+               align: 1.0 1.0;
+               rel1.relative: 0.0 1.0;
+               rel2.relative: 1.0 1.0;
+               min: 2 2;
+               max: 2 2;
+               fixed: 0 1;
+               color: 0 0 0 0;
             }
          }
-
-         part { name: "elm.swallow.end";
-            type: SWALLOW;
+         part { name: "icon.bg";
+            type: RECT;
+            scale: 1;
+            mouse_events: 0;
             description { state: "default" 0.0;
-               align: 1.0 0.0;
-               fixed: 1 1;
+               visible: 1;
+               fixed: 1 0;
                rel1 {
-                  relative: 1.0 0.0;
-                  offset: -2 1;
+                  to_x: "padding_left";
+                  to_y: "padding_top";
+                  relative: 1.0 1.0;
                }
                rel2 {
+                  to: "elm.swallow.icon";
                   relative: 1.0 1.0;
-                  offset: -1 32;
                }
+               align: 0.0 0.5;
+               color: 0 0 0 0;
             }
          }
-
-         part { name: "elm.text.title";
-            type: TEXT;
-            effect: SOFT_SHADOW;
+         part { name: "padding_icon_text";
+            type: RECT;
             scale: 1;
-            description { state: "default" 0.0;
+            mouse_events: 0;
+            description { state: "default" 0.0; //when only icon or no icon is there
+               align: 0.0 0.0;
                rel1 {
-                  to_x: "back";
+                  to: "icon.bg";
                   relative: 1.0 0.0;
-                  offset: 2 1;
-               }
-               rel2 { to_y: "back";
-                  to_x: "elm.swallow.end";
-                  relative: 0.0 1.0;
-                  offset: -3 -1;
                }
-               text {
-                  font: "Sans:style=Bold";
-                  size: 12;
+               rel2 {
+                  to: "icon.bg";
+                  relative: 1.0 1.0;
                }
+               fixed: 1 0;
+               min: 0 0;
+               color: 0 0 0 0;
+            }
+            description { state: "icononly" 0.0;
+               inherit: "default" 0.0;
+            }
+            description { state: "visible" 0.0; //when icon is visible
+               inherit: "default" 0.0;
+               min: 2 0;
             }
          }
-      }
-   }
-
-   /* application with a main content area with a back and next buttons and title area */
-   group { name: "elm/layout/application/content-back-next";
-      parts {
-         part { name: "elm.swallow.content";
+         part { name: "elm.swallow.icon";
             type: SWALLOW;
+            scale: 1;
             description { state: "default" 0.0;
-               rel1 { to_y: "title_clipper";
-                  relative: 0.0 1.0;
-                  offset: -1 1;
+               visible: 0;
+               align: 0.0 0.5;
+               rel1 {
+                  to_x: "padding_left";
+                  to_y: "padding_top";
+                  relative: 1.0 1.0;
+               }
+               rel2 {
+                  to_y: "padding_bottom";
+                  relative: 0.0 0.0;
                }
+               fixed: 1 0;
+               aspect: 1.0 1.0;
+               aspect_preference: BOTH;
             }
-         }
-
-         part { name: "title_clipper";
-            type: RECT;
-            description { state: "default" 0.0;
+            description { state: "visible" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
-               rel1 {
-                  to_y: "back";
-               }
                rel2 {
-                  to_y: "back";
+                  to_y: "padding_bottom";
+                  relative: 0.3 0.0;
                }
             }
-            description { state: "hidden" 0.0;
+            description { state: "icononly" 0.0;
                inherit: "default" 0.0;
-               visible: 0;
+               visible: 1;
                rel2 {
-                  relative: 1.0 0.0;
+                  to_x: "padding_right";
+                  to_y: "padding_bottom";
+                  relative: 0.0 0.0;
                }
+               align: 0.5 0.5;
             }
          }
-         part { name: "back";
-            type: EXTERNAL;
-            source: "elm/button";
-            clip_to: "back_clipper";
-            description { state: "default" 0.0;
-               align: 0.0 0.0;
+         part { name: "elm.text";
+            type: TEXT;
+            mouse_events: 0;
+            scale: 1;
+            description {
+               state: "default" 0.0;
+               visible: 0;
                fixed: 1 1;
+               min: 1 1;
                rel1 {
-                  relative: 0.0 0.0;
-                  offset: 0 1;
+                  to_x: "padding_icon_text";
+                  relative: 1.0 1.0;
                }
                rel2 {
+                  to_x: "padding_right";
                   relative: 0.0 0.0;
-                  offset: 50 32;
                }
-               params.string: "label" "Back";
+               color: 224 224 224 255;
+               color3: 0 0 0 64;
+               text {
+                  font: "Sans";
+                  ellipsis: 0.0;
+                  fit: 1 1;
+                  size: 24;
+                  size_range: 8 36;
+                  min: 0 1;
+               }
             }
-         }
-         part { name: "back_clipper";
-            type: RECT;
-            clip_to: "title_clipper";
-            description { state: "default" 0.0;
+            description { state: "normal" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
             }
-            description { state: "hidden" 0.0;
-               visible: 0;
+            description { state: "pressed" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 0 0 0 255;
+            }
+            description { state: "selected" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 50 50 50 255;
+            }
+            description { state: "disabled" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               color: 200 200 200 255;
             }
          }
-         part { name: "next";
-            type: EXTERNAL;
-            source: "elm/button";
-            clip_to: "next_clipper";
+         part { name: "disabler";
+            repeat_events: 0;
+            scale: 1;
             description { state: "default" 0.0;
-               align: 1.0 0.0;
+               visible: 0;
                fixed: 1 1;
-               rel1 {
-                  relative: 1.0 0.0;
-                  offset: -2 1;
+               min: 1 1;
+               align: 0.0 0.5;
+               rel1 { relative: 0.0 0.0; to: "segment";}
+               rel2 { relative: 1.0 1.0; to: "segment";}
+               color: 255 255 255 150;
+            }
+            description { state: "disabled_single" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_single_normal.png";
+                  border: 7 7 7 7;
                }
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 32;
+            }
+            description { state: "disabled_left" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_left_normal.png";
+                  border:  6 1 7 7;
                }
-               params.string: "label" "Next";
-           }
-         }
-         part { name: "next_clipper";
-            type: RECT;
-            clip_to: "title_clipper";
-            description { state: "default" 0.0;
+            }
+            description { state: "disabled_right" 0.0;
+               inherit: "default" 0.0;
                visible: 1;
+               image {
+                  normal: "seg_right_normal.png";
+                  border: 1 6 7 7;
+               }
             }
-            description { state: "hidden" 0.0;
-               visible: 0;
+            description { state: "disabled_middle" 0.0;
+               inherit: "default" 0.0;
+               visible: 1;
+               image {
+                  normal: "seg_middle_normal.png";
+                  border: 2 2 2 2;
+               }
             }
          }
-         programs {
-            program {
-               signal: "clicked";
-               source: "back";
-               action: SIGNAL_EMIT "elm,action,back" "";
+      }
+      programs {
+         script {
+            public seg_type; // Single, Left, Middle, Right.
+            public seg_state; // Normal/Default, Pressed, Selected.
+            public seg_status;// Enabled/Default, Disabled
+
+            public update_state() {
+               new type, state, disabled;
+               type = get_int(seg_type);
+               state = get_int(seg_state);
+               disabled = get_int(seg_status);
+
+               if(state == SEGMENT_STATE_NORMAL)
+                 {
+                    if(type == SEGMENT_TYPE_SINGLE)
+                      set_state(PART:"segment", "default_single", 0.0);
+                    else if(type == SEGMENT_TYPE_LEFT)
+                      set_state(PART:"segment", "default_left", 0.0);
+                    else if(type == SEGMENT_TYPE_MIDDLE)
+                      set_state(PART:"segment", "default_middle", 0.0);
+                    else if(type == SEGMENT_TYPE_RIGHT)
+                      set_state(PART:"segment", "default_right", 0.0);
+                    set_state(PART:"elm.text", "normal", 0.0);
+                 }
+               else if(state == SEGMENT_STATE_PRESSED)
+                 {
+                    if(type == SEGMENT_TYPE_SINGLE)
+                      set_state(PART:"segment", "pressed_single", 0.0);
+                    else if(type == SEGMENT_TYPE_LEFT)
+                      set_state(PART:"segment", "pressed_left", 0.0);
+                    else if(type == SEGMENT_TYPE_MIDDLE)
+                      set_state(PART:"segment", "pressed_middle", 0.0);
+                    else if(type == SEGMENT_TYPE_RIGHT)
+                      set_state(PART:"segment", "pressed_right", 0.0);
+                    set_state(PART:"elm.text", "pressed", 0.0);
+                 }
+               else if(state == SEGMENT_STATE_SELECTED)
+                 {
+                    if(type == SEGMENT_TYPE_SINGLE)
+                      set_state(PART:"segment", "selected_single", 0.0);
+                    else if(type == SEGMENT_TYPE_LEFT)
+                      set_state(PART:"segment", "selected_left", 0.0);
+                    else if(type == SEGMENT_TYPE_MIDDLE)
+                      set_state(PART:"segment", "selected_middle", 0.0);
+                    else if(type == SEGMENT_TYPE_RIGHT)
+                      set_state(PART:"segment", "selected_right", 0.0);
+                    set_state(PART:"elm.text", "selected", 0.0);
+                 }
+               if(disabled == SEGMENT_STATUS_DISABLED)
+                 {
+                    if(type == SEGMENT_TYPE_SINGLE)
+                      set_state(PART:"disabler", "disabled_single", 0.0);
+                    else if(type == SEGMENT_TYPE_LEFT)
+                      set_state(PART:"disabler", "disabled_left", 0.0);
+                    else if(type == SEGMENT_TYPE_MIDDLE)
+                      set_state(PART:"disabler", "disabled_middle", 0.0);
+                    else if(type == SEGMENT_TYPE_RIGHT)
+                      set_state(PART:"disabler", "disabled_right", 0.0);
+                    set_state(PART:"elm.text", "disabled", 0.0);
+                 }
             }
-            program {
-               signal: "elm,title,hide";
-               source: "elm";
-               action: STATE_SET "hidden" 0.0;
-               transition: LINEAR 0.1;
-               target: "title_clipper";
+         }
+         program {
+            name: "segment_type_s";
+            signal: "elm,type,segment,single";
+            source: "elm";
+            script {
+               set_int(seg_type, SEGMENT_TYPE_SINGLE);
+               update_state();
             }
-            program {
-               signal: "elm,title,show";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "title_clipper";
+         }
+         program {
+            name: "segment_type_l";
+            signal: "elm,type,segment,left";
+            source: "elm";
+            script {
+               set_int(seg_type, SEGMENT_TYPE_LEFT);
+               update_state();
             }
-            program {
-               signal: "elm,back,hide";
-               source: "elm";
-               action: STATE_SET "hidden" 0.0;
-               target: "back_clipper";
+         }
+         program {
+            name: "segment_type_m";
+            signal: "elm,type,segment,middle";
+            source: "elm";
+            script {
+               set_int(seg_type, SEGMENT_TYPE_MIDDLE);
+               update_state();
             }
-            program {
-               signal: "elm,back,show";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "back_clipper";
+         }
+         program {
+            name: "segment_type_r";
+            signal: "elm,type,segment,right";
+            source: "elm";
+            script {
+               set_int(seg_type, SEGMENT_TYPE_RIGHT);
+               update_state();
             }
-            program {
-               signal: "clicked";
-               source: "next";
-               action: SIGNAL_EMIT "elm,action,next" "";
+         }
+         program {
+            name: "normal_segment";
+            signal: "elm,state,segment,normal";
+            source: "elm";
+            script {
+               set_int(seg_state, SEGMENT_STATE_NORMAL);
+               update_state();
             }
-            program {
-               signal: "elm,next,hide";
-               source: "elm";
-               action: STATE_SET "hidden" 0.0;
-               target: "next_clipper";
+         }
+         program {
+            name: "pressed_segment";
+            signal: "elm,state,segment,pressed";
+            source: "elm";
+            script {
+               set_int(seg_state, SEGMENT_STATE_PRESSED);
+               update_state();
             }
-            program {
-               signal: "elm,next,show";
-               source: "elm";
-               action: STATE_SET "default" 0.0;
-               target: "next_clipper";
+         }
+         program {
+            name: "selected_segment";
+            signal: "elm,state,segment,selected";
+            source: "elm";
+            script {
+               set_int(seg_state, SEGMENT_STATE_SELECTED);
+               update_state();
             }
          }
-         part { name: "elm.text.title";
-            type: TEXT;
-            effect: SOFT_SHADOW;
-            scale: 1;
-            clip_to: "title_clipper";
-            description { state: "default" 0.0;
-               rel1 {
-                  to_x: "back";
-                  relative: 1.0 0.0;
-                  offset: 2 1;
-               }
-               rel2 { to_y: "back";
-                  to_x: "next";
-                  relative: 0.0 1.0;
-                  offset: -3 -1;
-               }
-               text {
-                  font: "Sans:style=Bold";
-                  size: 12;
-               }
+         program { name: "disable_segment";
+            signal: "elm,state,disabled";
+            source: "elm";
+            script {
+               set_int(seg_status, SEGMENT_STATUS_DISABLED);
+               update_state();
             }
          }
-      }
-   }
-
-   /* application with toolbar and main content area as a vertical box */
-   group { name: "elm/layout/application/toolbar-vbox";
-      parts {
-         part { name: "elm.box.content";
-            type: BOX;
-            description { state: "default" 0.0;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
-                  offset: -1 1;
-               }
-               box.layout: "vertical";
+         program { name: "enable_segment";
+            signal: "elm,state,enabled";
+            source: "elm";
+            script {
+               set_int(seg_status, SEGMENT_STATUS_ENABLED);
+               update_state();
             }
          }
-
-         part { name: "elm.external.toolbar";
-            type: EXTERNAL;
-            source: "elm/toolbar";
-            description { state: "default" 0.0;
-               align: 0.5 0.0;
-               fixed: 0 1;
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 47;
-               }
+         program { name: "text_show";
+            signal: "elm,state,text,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.icon", st, 30, vl);
+               if (!strcmp(st, "icononly"))
+                 {
+                    set_state(PART:"elm.swallow.icon", "visible", 0.0);
+                    set_state(PART:"padding_icon_text", "visible", 0.0);
+                 }
+               get_state(PART:"elm.text", st, 30, vl);
+               if (!strcmp(st, "selected"))
+                  set_state(PART:"elm.text", "selected", 0.0);
+               else
+                  set_state(PART:"elm.text", "normal", 0.0);
             }
          }
-      }
-   }
-
-   /* application with toolbar and main content area as a table */
-   group { name: "elm/layout/application/toolbar-table";
-      parts {
-         part { name: "elm.table.content";
-            type: TABLE;
-            description { state: "default" 0.0;
-               rel1 { to_y: "elm.external.toolbar";
-                  relative: 0.0 1.0;
-                  offset: -1 1;
-               }
+         program { name: "text_hide";
+            signal: "elm,state,text,hidden";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.swallow.icon", st, 30, vl);
+               if (!strcmp(st, "visible"))
+                 {
+                    set_state(PART:"elm.swallow.icon", "icononly", 0.0);
+                    set_state(PART:"padding_icon_text", "icononly", 0.0);
+                 }
+               set_state(PART:"elm.text", "default", 0.0);
             }
          }
-
-         part { name: "elm.external.toolbar";
-            type: EXTERNAL;
-            source: "elm/toolbar";
-            description { state: "default" 0.0;
-               align: 0.5 0.0;
-               fixed: 0 1;
-               rel2 {
-                  relative: 1.0 0.0;
-                  offset: -1 47;
-               }
+         program { name: "icon_show";
+            signal: "elm,state,icon,visible";
+            source: "elm";
+            script {
+               new st[31];
+               new Float:vl;
+               get_state(PART:"elm.text", st, 30, vl);
+               if ((!strcmp(st, "normal")) || (!strcmp(st, "selected")))
+                 {
+                    set_state(PART:"elm.swallow.icon", "visible", 0.0);
+                    set_state(PART:"padding_icon_text", "visible", 0.0);
+                 }
+               else
+                 {
+                    set_state(PART:"elm.swallow.icon", "icononly", 0.0);
+                    set_state(PART:"padding_icon_text", "icononly", 0.0);
+                 }
             }
          }
+         program { name: "icon_hide";
+            signal: "elm,state,icon,hidden";
+            source: "elm";
+            action:  STATE_SET "default" 0.0;
+            target: "elm.swallow.icon";
+         }
       }
+#undef SEGMENT_TYPE_SINGLE
+#undef SEGMENT_TYPE_LEFT
+#undef SEGMENT_TYPE_MIDDLE
+#undef SEGMENT_TYPE_RIGHT
+#undef SEGMENT_STATE_NORMAL
+#undef SEGMENT_STATE_PRESSED
+#undef SEGMENT_STATE_SELECTED
+#undef SEGMENT_STATUS_ENABLED
+#undef SEGMENT_STATUS_DISABLED
    }
 
    /* a simple title layout, with a label and two icons */
@@ -36104,7 +36504,3 @@ collections {
       }
    }
 }
-
-
-
-