collections {
   group {
      name: "e/netbook/launcher/main";

      images {
         image: "bg.jpg" COMP;
         image: "iconviewbg.png" COMP;
         image: "sidebar_shadow.png" COMP;
      }

      data {
         item: "contents_anim" "1";
      }

      parts {
         part {
            name: "clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "inactive" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "sidebar-clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "inactive" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 128;
            }
         }

         part {
            name: "e.swallow.background";
            type: SWALLOW;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
         }

         part {
            name: "bg-override";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               image {
                  normal: "bg.jpg";
                  scale_hint: STATIC;
               }
            }
         }

         part {
            name: "bg";
            type: RECT;
            mouse_events: 0;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 35;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
         }

         part {
            name: "top-bar";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 0 0 0 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "bg";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 0;
                  to: "bg";
               }
            }
         }

         programs {
            program {
               name: "gui,action,focus,out";
               signal: "gui,action,focus,out";
               source: "e";
               action: STATE_SET "inactive" 0.0;
               transition: DECELERATE 0.5;
               target: "clipper";
               after: "gui,action,focus,out,2";
            }
            program {
               name: "gui,action,focus,out,2";
               action: STATE_SET "inactive" 0.0;
               transition: DECELERATE 0.5;
               target: "sidebar-clipper";
               target: "sidebar-bg";
            }

            program {
               name: "gui,action,focus,in";
               signal: "gui,action,focus,in";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: ACCELERATE 0.5;
               target: "sidebar-clipper";
               after: "gui,action,focus,in,2";
            }
            program {
               name: "gui,action,focus,in,2";
               action: STATE_SET "default" 0.0;
               transition: ACCELERATE 0.5;
               target: "clipper";
            }
         }

         part {
            name: "apps-clipper";
            type: RECT;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "e.swallow.apps";
            type: SWALLOW;
            clip_to: "apps-clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0 0;
                  to_x: "bg";
                  to_y: "top-bar";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 -5;
                  to_x: "bg";
                  to_y: "sidebar-shadow";
               }
            }
         }

         programs {
            program {
               name: "gui,action,apps,set";
               signal: "gui,action,apps,set";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "places-clipper";
               target: "e.swallow.places";
               target: "preferences-clipper";
               target: "e.swallow.preferences";
               after: "gui,action,apps,set,2";
            }
            program {
               name: "gui,action,apps,set,2";
               action: STATE_SET "default" 0.0;
               target: "apps-clipper";
               target: "e.swallow.apps";
            }

            program {
               name: "gui,action,apps,enter";
               signal: "gui,action,apps,enter";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               transition: ACCELERATE 0.2;
               target: "places-clipper";
               target: "e.swallow.places";
               target: "preferences-clipper";
               target: "e.swallow.preferences";
               after: "gui,action,apps,enter,2";
            }
            program {
               name: "gui,action,apps,enter,2";
               action: STATE_SET "default" 0.0;
               transition: DECELERATE 0.4;
               target: "apps-clipper";
               target: "e.swallow.apps";
               after: "gui,action,apps,enter,3";
            }
            program {
               name: "gui,action,apps,enter,3";
               action: SIGNAL_EMIT "gui,action,anim,end" "e";
            }
         }

         part {
            name: "places-clipper";
            type: RECT;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "e.swallow.places";
            type: SWALLOW;
            clip_to: "places-clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0 0;
                  to_x: "bg";
                  to_y: "top-bar";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 -5;
                  to_x: "bg";
                  to_y: "sidebar-shadow";
               }
            }
         }

         programs {
            program {
               name: "gui,action,places,set";
               signal: "gui,action,places,set";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "apps-clipper";
               target: "e.swallow.apps";
               target: "preferences-clipper";
               target: "e.swallow.preferences";
               after: "gui,action,places,set,2";
            }
            program {
               name: "gui,action,places,set,2";
               action: STATE_SET "default" 0.0;
               target: "places-clipper";
               target: "e.swallow.places";
            }

            program {
               name: "gui,action,places,enter";
               signal: "gui,action,places,enter";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               transition: ACCELERATE 0.2;
               target: "apps-clipper";
               target: "e.swallow.apps";
               target: "preferences-clipper";
               target: "e.swallow.preferences";
               after: "gui,action,places,enter,2";
            }
            program {
               name: "gui,action,places,enter,2";
               action: STATE_SET "default" 0.0;
               transition: DECELERATE 0.4;
               target: "places-clipper";
               target: "e.swallow.places";
               after: "gui,action,places,enter,3";
            }
            program {
               name: "gui,action,places,enter,3";
               action: SIGNAL_EMIT "gui,action,anim,end" "e";
            }
         }

         part {
            name: "preferences-clipper";
            type: RECT;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "e.swallow.preferences";
            type: SWALLOW;
            clip_to: "preferences-clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0 0;
                  to_x: "bg";
                  to_y: "top-bar";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 -5;
                  to_x: "bg";
                  to_y: "sidebar-shadow";
               }
            }
         }

         programs {
            program {
               name: "gui,action,preferences,set";
               signal: "gui,action,preferences,set";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "apps-clipper";
               target: "e.swallow.apps";
               target: "places-clipper";
               target: "e.swallow.places";
               after: "gui,action,preferences,set,2";
            }
            program {
               name: "gui,action,preferences,set,2";
               action: STATE_SET "default" 0.0;
               target: "preferences-clipper";
               target: "e.swallow.preferences";
            }

            program {
               name: "gui,action,preferences,enter";
               signal: "gui,action,preferences,enter";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               transition: ACCELERATE 0.2;
               target: "apps-clipper";
               target: "e.swallow.apps";
               target: "places-clipper";
               target: "e.swallow.places";
               after: "gui,action,preferences,enter,2";
            }
            program {
               name: "gui,action,preferences,enter,2";
               action: STATE_SET "default" 0.0;
               transition: DECELERATE 0.4;
               target: "preferences-clipper";
               target: "e.swallow.preferences";
               after: "gui,action,preferences,enter,3";
            }
            program {
               name: "gui,action,preferences,enter,3";
               action: SIGNAL_EMIT "gui,action,anim,end" "e";
            }
         }

         part {
            name: "sidebar-shadow";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "sidebar-clipper";
            description {
               state: "default" 0.0;
               min: 1024 8;
               max: 9999 8;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 -8;
                  to_y: "sidebar-bg";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 -1;
                  to_y: "sidebar-bg";
               }
               image.normal: "sidebar_shadow.png";
            }
         }

         part {
            name: "sidebar-bg";
            type: RECT;
            mouse_events: 0;
            clip_to: "sidebar-clipper";
            description {
               state: "default" 0.0;
               color: 184 184 184 96;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0 -90;
                  to_y: "bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
            description {
               state: "inactive" 0.0;
               inherit: "default" 0.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0 -72;
                  to_y: "bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 17;
               }
            }
         }

         part {
            name: "e.swallow.sidebar";
            type: SWALLOW;
            clip_to: "sidebar-clipper";
            description {
               state: "default" 0.0;
               min: 200 90;
               max: 9999 90;
               align: 0.5 1.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 0.0 -90;
                  to: "sidebar-bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "sidebar-bg";
               }
            }
         }

         part {
            name: "sidebar-eventarea";
            type: RECT;
            mouse_events: 1;
            repeat_events: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1.to: "e.swallow.sidebar";
               rel2.to: "e.swallow.sidebar";
            }
         }

         programs {
            program {
               name: "sidebar,in";
               signal: "mouse,in";
               source: "sidebar-eventarea";
               action: STATE_SET "default" 0.0;
               transition: ACCELERATE 0.5;
               target: "sidebar-bg";
            }

            program {
               name: "sidebar,out";
               signal: "mouse,out";
               source: "sidebar-eventarea";
               action: STATE_SET "inactive" 0.0;
               transition: DECELERATE 0.5;
               target: "sidebar-bg";
            }
         }

         part {
            name: "eventblocker";
            type: RECT;
            mouse_events: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "active" 0.0;
               color: 255 255 255 0;
               visible: 1;
            }
         }

         programs {
            program {
               signal: "load";
               action: STATE_SET "hidden" 0.0;
               target: "apps-clipper";
               target: "e.swallow.apps";
               target: "places-clipper";
               target: "e.swallow.places";
               after: "gui,action,focus,in";
            }

            program {
               signal: "gui,action,focus,out";
               source: "e";
               action: STATE_SET "active" 0.0;
               target: "eventblocker";
            }
            program {
               signal: "gui,action,focus,in";
               source: "e";
               action: STATE_SET "default" 0.0;
               target: "eventblocker";
            }
         }
      }
   }

   group {
      name: "elm/scroller/base/apps";
      alias: "elm/scroller/base/places";
      alias: "elm/scroller/base/preferences";

      images {
	 image: "scrollbar-bg.png" COMP;
         image: "scrollbar-knob.png" COMP;
      }

      parts {
         part {
            name: "bg";
	    type: RECT;
	    description {
               state: "default" 0.0;
	       rel1.offset: 1 1;
	       rel2.offset: -1 -1;
	       color: 255 255 255 0;
	    }
	 }
	 part {
            name: "clipper";
	    type: RECT;
	    mouse_events: 0;
	    description {
               state: "default" 0.0;
	       rel1.offset: -1000 -1000;
	       rel2.offset: 1000 1000;
	    }
	 }

	 part {
            name: "sb_all_clip";
	    type: RECT;
	    mouse_events: 0;
	    description {
               state: "default" 0.0;
               visible: 1;
	       rel1.offset: -1000 -1000;
	       rel2.offset: 1000 1000;
	    }
	 }

	 part {
            name: "sb_vbar_clip";
	    type: RECT;
	    mouse_events: 0;
            clip_to: "sb_all_clip";
	    description {
               state: "default" 0.0;
	       rel1.offset: -1000 -1000;
	       rel2.offset: 1000 1000;
	    }
	    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;
               color: 0 0 0 0;
	       fixed: 1 1;
	       visible: 1;
	       min: 7 7;
	       align: 0.5 0.0;
	       rel1 {
		  relative: 1.0 0.0;
		  offset: 0 0;
	       }
	       rel2 {
		  relative: 1.0 1.0;
		  offset: 6 -1;
	       }
	    }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               min: 0 0;
               visible: 0;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -1 0;
               }
               rel1 {
                  relative: 1.0 0.0;
                  offset: -1 -1;
                  to_y: "sb_hbar";
               }
            }
	 }

	 part {
            name: "sb_vbar_bg";
            type: IMAGE;
	    clip_to: "sb_vbar_clip";
	    mouse_events: 0;
	    description {
               state: "default" 0.0;
	       fixed: 1 1;
	       min: 5 20;
               max: 5 9999;
	       rel1 {
		  relative: 0.0 0.0;
		  offset: 1 0;
		  to: "sb_vbar";
	       }
	       rel2 {
		  relative: 1.0 1.0;
		  offset: -2 -1;
		  to: "sb_vbar";
	       }
               image {
                  normal: "scrollbar-bg.png";
                  border: 2 2 10 10;
               }
	    }
         }

	 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: 7 7;
               align: 0.5 0.5;
	       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: "scrollbar-knob.png";
		  border: 3 3 3 3;
	       }
	    }
	 }

	 part {
            name: "sb_hbar_clip";
	    type: RECT;
	    mouse_events: 0;
            clip_to: "sb_all_clip";
	    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;
               color: 0 0 0 0;
	       visible: 1;
	       min: 11 11;
	       align: 0.0 1.0;
	       rel1 {
		  relative: 0.0 1.0;
		  offset: 0 -2;
	       }
	       rel2 {
		  relative: 0.0 1.0;
		  offset: -1 -2;
		  to_x: "sb_vbar";
	       }
	    }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               min: 0 0;
               visible: 0;
	       rel1 {
		  relative: 0.0 1.0;
		  offset: 0 0;
	       }
	       rel2 {
		  relative: 0.0 1.0;
		  offset: -1 -1;
		  to_x: "sb_vbar";
	       }
            }
	 }

	 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: 11 11;
	       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: "scrollbar-knob.png";
		  border: 4 4 4 4;
	       }
	    }
	 }

	 part {
            name: "elm.swallow.content";
	    clip_to: "clipper";
	    type: SWALLOW;
	    description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
	    }
	 }
      }

      programs {
         program { name: "load";
            signal: "load";
            source: "";
            action: STATE_SET "hidden" 0.0;
            target: "sb_hbar_clip";
            target: "sb_vbar_clip";
         }

         program { name: "elm,action,show,vbar";
            signal: "elm,action,show,vbar";
            source: "elm";
            action: STATE_SET "default" 0.0;
            target: "sb_vbar_clip";
            target: "sb_vbar";
         }

         program { name: "elm,action,hide,vbar";
            signal: "elm,action,hide,vbar";
            source: "elm";
            action: STATE_SET "hidden" 0.0;
            target: "sb_vbar_clip";
            target: "sb_vbar";
         }

         program { name: "elm,action,show,hbar";
            signal: "elm,action,show,hbar";
            source: "elm";
            action: STATE_SET "default" 0.0;
            target: "sb_hbar_clip";
            target: "sb_hbar";
         }

         program { name: "elm,action,hide,hbar";
            signal: "elm,action,hide,hbar";
            source: "elm";
            action: STATE_SET "hidden" 0.0;
            target: "sb_hbar_clip";
            target: "sb_hbar";
         }
      }
   }

   group {
      name: "elm/scroller/base/sidebar";

      images {
	 image: "arrow-left.png" COMP;
	 image: "arrow-right.png" COMP;
      }

      script {
         public arrows_apply() {
            new Float:x, Float:y;

            get_drag(PART:"elm.dragable.hbar", x, y);
            if (x == 0.0)
               set_state(PART:"sb_hbar_left_clip", "hidden", 0.0);
            else
               set_state(PART:"sb_hbar_left_clip", "default", 0.0);

            if (x == 1.0)
               set_state(PART:"sb_hbar_right_clip", "hidden", 0.0);
            else
               set_state(PART:"sb_hbar_right_clip", "default", 0.0);
         }

         public autoscroll_id;

         public autoscroll_cb(dir) {
            new Float:x, Float:y, Float:val;
            new ret;

            get_drag(PART:"elm.dragable.hbar", x, y);
            val = x + 0.015 * float(dir);
            if (val < 0.0) {
               val = 0.0;
               ret = 0;
               cancel_anim(get_int(autoscroll_id));
               set_int(autoscroll_id, 0);
            } else if (val > 1.0) {
               val = 1.0;
               ret = 0;
               cancel_anim(get_int(autoscroll_id));
               set_int(autoscroll_id, 0);
            } else
               ret = 1;

            x = val;

            set_drag(PART:"elm.dragable.hbar", x, y);
            emit("drag", "elm.dragable.hbar");
            return ret;
         }

         public autoscroll(dir) {
            new id = get_int(autoscroll_id);
            if (id)
               cancel_anim(id);

            id = anim(99999, "autoscroll_cb", dir);
            set_int(autoscroll_id, id);
         }

         public autoscroll_stop() {
            new id = get_int(autoscroll_id);
            if (id) {
               cancel_anim(id);
               set_int(id, 0);
            }
         }
      }

      parts {
         part {
            name: "bg";
	    type: RECT;
	    description {
               state: "default" 0.0;
	       rel1.offset: 1 1;
	       rel2.offset: -1 -1;
	       color: 255 255 255 0;
	    }
	 }

	 part {
            name: "sb_hbar_clip";
	    type: RECT;
	    mouse_events: 0;
	    description {
               state: "default" 0.0;
               rel1.offset: 0 -16;
               rel2.offset: 0 16;
	    }
	    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;
               color: 0 0 0 0;
	       fixed: 1 1;
	       visible: 0;
	       min: 1 1;
	       align: 1.0 0.0;
	       rel1 {
		  relative: 1.0 0.0;
		  offset: -2 0;
	       }
	       rel2 {
		  relative: 1.0 0.0;
		  offset: -1 -1;
	       }
	    }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
            }
	 }

	 part {
            name: "elm.dragable.hbar";
            type: RECT;
	    clip_to: "sb_hbar_clip";
	    mouse_events: 0;
	    dragable {
	       x: 0 0 0;
	       y: 1 1 0;
	       confine: "sb_hbar";
	    }
	    description {
               state: "default" 0.0;
	       fixed: 1 1;
	       rel1 {
		  relative: 0.5 0.5;
		  offset: 0 0;
		  to: "sb_hbar";
	       }
	       rel2 {
		  relative: 0.5 0.5;
		  offset: 0 0;
		  to: "sb_hbar";
	       }
	    }
	 }

	 part {
            name: "elm.swallow.content";
	    type: SWALLOW;
	    description {
               state: "default" 0.0;
               //step: 84 1;
               min: 84 90;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -21 -1;
               }
	    }
	 }

         part {
            name: "sb_hbar_left_clip";
            type: RECT;
	    clip_to: "sb_hbar_clip";
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "hidden" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "sb_hbar_left";
            type: IMAGE;
            mouse_events: 1;
            clip_to: "sb_hbar_left_clip";
            description {
               state: "default" 0.0;
               min: 19 48;
               max: 19 48;
               align: 0.0 0.5;
               rel1 {
                  relative: 0.0 0.5;
                  offset: 5 -32;
               }
               rel2 {
                  relative: 0.0 0.5;
                  offset: 23 15;
               }
               image.normal: "arrow-left.png";
            }
            description {
               state: "clicked" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 128;
            }
         }

         part {
            name: "sb_hbar_left_area";
            type: RECT;
            mouse_events: 1;
            clip_to: "sb_hbar_left_clip";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 0.0 1.0;
                  offset: 23 -1;
               }
            }
         }

         part {
            name: "sb_hbar_right_clip";
            type: RECT;
	    clip_to: "sb_hbar_clip";
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "hidden" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "sb_hbar_right";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "sb_hbar_right_clip";
            description {
               state: "default" 0.0;
               min: 19 48;
               max: 19 48;
               align: 1.0 0.5;
               rel1 {
                  relative: 1.0 0.5;
                  offset: -24 -32;
               }
               rel2 {
                  relative: 1.0 0.5;
                  offset: -6 15;
               }
               image.normal: "arrow-right.png";
            }
            description {
               state: "clicked" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 128;
            }
         }

         part {
            name: "sb_hbar_right_area";
            type: RECT;
            mouse_events: 1;
            clip_to: "sb_hbar_right_clip";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -24 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
         }

         programs {
            program {
               name: "load-arrows";
               signal: "load";
               script {
                  arrows_apply();
               }
            }

            program {
               name: "drag";
               signal: "drag,set";
               source: "elm.dragable.hbar";
               script {
                  arrows_apply();
               }
            }

            program {
               name: "sb_hbar_left,over";
               signal: "mouse,in";
               source: "sb_hbar_left_area";
               script {
                  autoscroll(-1);
               }
            }

            program {
               name: "sb_hbar_right,over";
               signal: "mouse,in";
               source: "sb_hbar_right_area";
               script {
                  autoscroll(1);
               }
            }

            program {
               name: "sb_hbar_left,over,end";
               signal: "mouse,out";
               source: "sb_hbar_left_area";
               script {
                  autoscroll_stop();
               }
            }

            program {
               name: "sb_hbar_right,over,end";
               signal: "mouse,out";
               source: "sb_hbar_right_area";
               script {
                  autoscroll_stop();
               }
            }
         }
      }

      programs {
         program { name: "load";
            signal: "load";
            source: "";
            action: STATE_SET "hidden" 0.0;
            target: "sb_hbar_clip";
         }

         program { name: "elm,action,show,hbar";
            signal: "elm,action,show,hbar";
            source: "elm";
            action: STATE_SET "default" 0.0;
            target: "sb_hbar_clip";
            target: "sb_hbar";
         }

         program { name: "elm,action,hide,hbar";
            signal: "elm,action,hide,hbar";
            source: "elm";
            action: STATE_SET "hidden" 0.0;
            target: "sb_hbar_clip";
            target: "sb_hbar";
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/grid";
      alias: "e/netbook/launcher/main/apps/grid";

      data {
         item: "scroll_horizontal" "off";
      }

      parts {
         part {
            name: "e.box.contents";
            type: BOX;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               box {
                  layout: "horizontal_flow";
                  align: 0.0 0.0;
                  padding: 10 10;
               }
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/apps/layout";

      images {
         image: "iconviewbg.png" COMP;
      }

      parts {
         part {
            name: "clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 128;
            }
            description {
               state: "active" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "bg-fill";
            type: RECT;
            mouse_events: 0;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               color: 184 184 184 96;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 10 10;
                  to: "bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -11 -11;
                  to: "bg";
               }
            }
         }

         part {
            name: "bg";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 15 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -16 -1;
               }
               image {
                  normal: "iconviewbg.png";
                  border: 10 10 10 10;
                  middle: 0;
               }
            }
         }

         part {
            name: "scroller-clipper";
            type: RECT;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -1000 7;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 1000 -8;
               }
            }
         }

         part {
            name: "e.swallow.scroller";
            type: SWALLOW;
            clip_to: "scroller-clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 66 0;
                  to_y: "scroller-clipper";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -17 -1;
                  to_y: "scroller-clipper";
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               rel1 {
                  relative: 0.0 -1.0;
                  offset: 66 0;
                  to_y: "scroller-clipper";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -17 -1;
                  to_y: "scroller-clipper";
               }
            }
         }

         part {
            name: "eventarea";
            type: RECT;
            mouse_events: 1;
            repeat_events: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1.to: "bg";
               rel2.to: "bg";
            }
         }

         programs {
            program {
               name: "eventarea,in";
               signal: "mouse,in";
               source: "eventarea";
               action: STATE_SET "active" 0.0;
               transition: LINEAR 0.3;
               target: "clipper";
            }

            program {
               name: "eventarea,out";
               signal: "mouse,out";
               source: "eventarea";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.3;
               target: "clipper";
            }

            program {
               name: "focus,in";
               signal: "gui,action,focus,in";
               source: "e";
               after: "eventarea,in";
            }

            program {
               name: "focus,out";
               signal: "gui,action,focus,out";
               source: "e";
               after: "eventarea,out";
            }

            program {
               name: "gui,action,enter";
               signal: "gui,action,enter";
               source: "e";
               action: STATE_SET "default" 0.0;
               target: "e.swallow.scroller";
               transition: DECELERATE 0.4;
               after: "gui,action,enter,end";
            }
            program {
               name: "gui,action,enter,end";
               action: SIGNAL_EMIT "gui,action,enter,end" "e";
            }

            program {
               name: "gui,action,exit";
               signal: "gui,action,exit";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "e.swallow.scroller";
               transition: ACCELERATE 0.2;
               after: "gui,action,exit,end";
            }
            program {
               name: "gui,action,exit,end";
               action: SIGNAL_EMIT "gui,action,exit,end" "e";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/places/grid";
      alias: "e/netbook/launcher/main/preferences/grid";

      data {
         item: "scroll_horizontal" "off";
      }

      parts {
         part {
            name: "e.box.contents";
            type: BOX;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               box {
                  layout: "vertical";
                  align: 0.0 0.0;
                  padding: 0 10;
               }
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/places/layout";
      alias: "e/netbook/launcher/main/preferences/layout";

      parts {
         part {
            name: "clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 128;
               rel1.offset: 0 -100;
               rel2.offset: -1 10;
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "e.swallow.scroller";
            type: SWALLOW;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 15 7;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -16 -1;
               }
            }
         }
         part {
            name: "eventarea";
            type: RECT;
            mouse_events: 1;
            repeat_events: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1.to: "e.swallow.scroller";
               rel2.to: "e.swallow.scroller";
            }
         }

         programs {
            program {
               name: "eventarea,in";
               signal: "mouse,in";
               source: "eventarea";
               action: STATE_SET "active" 0.0;
               transition: LINEAR 0.3;
               target: "clipper";
            }

            program {
               name: "eventarea,out";
               signal: "mouse,out";
               source: "eventarea";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.3;
               target: "clipper";
            }

            program {
               name: "focus,in";
               signal: "gui,action,focus,in";
               source: "e";
               after: "eventarea,in";
            }

            program {
               name: "focus,out";
               signal: "gui,action,focus,out";
               source: "e";
               after: "eventarea,out";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/grid/item";
      alias: "e/netbook/launcher/main/places/folders/item";
      alias: "e/netbook/launcher/main/places/recent/item";

      min: 169 140;

      data {
         item: "scale_min" "on";
         item: "scale_icon" "on";
         item: "selectraise" "on";
         item: "icon_size" "90";
      }

      images {
         image: "text-bg.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: "eventarea";
            type: RECT;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 5 5;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -6 -6;
               }
            }
         }

         part {
            name: "e.swallow.icon";
            type: SWALLOW;
            mouse_events: 0;
            scale: 0;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -45 10;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 44 99;
               }
            }
            description {
               state: "big" 0.0;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -50 5;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 49 104;
               }
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 110;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -21 129;
               }
               text {
                  text_class: "grid_font";
                  font: "Sans";
                  size: 12;
                  min: 0 1;
                  text: "label";
                  align: 0.5 0.5;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 0;
            }
         }

         part {
            name: "label-full-clipper";
            type: RECT;
            effect: SHADOW;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               color3: 0 0 0 255;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "label-full-bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "label-full-bg";
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
            name: "label-full-bg";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "label-full-clipper";
            description {
               state: "default" 0.0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -5 -5;
                  to: "label-full";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 4 4;
                  to: "label-full";
               }
               image {
                  normal: "text-bg.png";
                  border: 5 10 5 10;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 1;
            }
         }

         part {
            name: "label-full";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               visible: 0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 110;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -21 129;
               }
               text {
                  text_class: "grid_font";
                  text_source: "e.text.label";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 1 1;
                  text: "label";
                  align: 0.5 0.5;
                  min: 1 1;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 1;
            }
         }

         part {
            name: "busy_clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
	    name: "busy";
	    clip_to: "busy_clipper";
	    mouse_events:  0;
	    description {
	       state: "default" 0.0;
	       aspect: 1.0 1.0;
	       aspect_preference: BOTH;
               min: 24 24;
               max: 24 24;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -24 -5;
                  to: "e.swallow.icon";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 18;
                  to: "e.swallow.icon";
               }
	       image {
		  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";
		  normal: "busy-9.png";
	       }
	    }
	 }

         programs {
            program {
               name: "gui,action,win,open";
               signal: "gui,action,win,open";
               source: "e";
               action: STATE_SET "visible" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
            }

            program {
               name: "gui,action,win,close";
               signal: "gui,action,win,close";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
               after: "busy_anim_stop";
            }

            program {
               name: "busy_anim";
               signal: "gui,action,win,open";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.5;
               target: "busy";
               after: "busy_anim";
            }

            program {
               name: "busy_anim_stop";
               action: ACTION_STOP;
               target: "busy_anim";
            }

            program {
               name: "grow-anim";
               action: STATE_SET "big" 0.0;
               transition: LINEAR 0.1;
               target: "e.swallow.icon";
               target: "label-full-clipper";
            }

            program {
               name: "grow-immediate";
               action: STATE_SET "big" 0.0;
               target: "e.text.label";
               target: "label-full";
               target: "label-full-bg";
               after: "grow-anim";
            }

            program {
               name: "notify-in";
               signal: "mouse,in";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,focus,in" "e";
            }

            program {
               name: "shrink-anim";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.1;
               target: "e.swallow.icon";
               target: "label-full-clipper";
            }

            program {
               name: "shrink-immediate";
               signal: "mouse,out";
               source: "eventarea";
               action: STATE_SET "default" 0.0;
               target: "e.text.label";
               target: "label-full";
               target: "label-full-bg";
            }

            program {
               name: "notify-out";
               signal: "mouse,out";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,focus,out" "e";
            }

            program {
               signal: "gui,action,select";
               source: "e";
               after: "grow-immediate";
            }

            program {
               signal: "gui,action,unselect";
               source: "e";
               after: "shrink-immediate";
            }

            program {
               signal: "mouse,clicked,1";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,executed" "e";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/apps/item";

      min: 450 90;

      data {
         item: "scale_min" "on";
         item: "scale_icon" "on";
         item: "selectraise" "on";
         item: "icon_size" "70";
      }

      images {
         image: "text-bg.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;
         image: "favorite_add.png" COMP;
         image: "favorite_del.png" COMP;
         image: "item-label-sep.png" COMP;
         image: "item-bg.png" COMP;
      }

      script {
         public fav_action_mode;

         public fav_action() {
            new mode = get_int(fav_action_mode);
            if (mode == 1) {
               emit("gui,action,favorite,add", "e");
            } else if (mode == 2)
               emit("gui,action,favorite,del", "e");
         }

         public inner, hide_timer;

         public enter_() {
            new last = get_int(inner);
            set_int(inner, last + 1);
            if (last > 0)
               return;

            last = get_int(hide_timer);
            if (last) {
               cancel_timer(last);
               set_int(hide_timer, 0);
               return;
            }

            run_program(PROGRAM:"notify-in");
         }

         public exit_timer(val) {
            run_program(PROGRAM:"notify-out");
            set_int(hide_timer, 0);
            return 0;
         }

         public exit_() {
            new last = get_int(inner);
            if (last == 0)
               return;
            set_int(inner, last - 1);
            if (last > 1)
               return;

            if (get_int(hide_timer))
               return;

            set_int(hide_timer, timer(0.05, "exit_timer", 0));
         }

         public enter_item() {
            enter_();
         }
         public enter_favorites() {
            enter_();
         }
         public exit_item() {
            exit_();
         }
         public exit_favorites() {
            exit_();
         }
      }

      parts {
         part {
            name: "eventarea";
            type: RECT;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 5 5;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -6 -6;
               }
            }
         }

         programs {
            program {
               name: "eventarea,in";
               signal: "mouse,in";
               source: "eventarea";
               script {
                  enter_item();
               }
            }

            program {
               name: "eventarea,out";
               signal: "mouse,out";
               source: "eventarea";
               script {
                  exit_item();
               }
            }

            program {
               signal: "gui,action,select";
               source: "e";
               after: "show-item";
               after: "show-favorite-action";
            }

            program {
               signal: "gui,action,unselect";
               source: "e";
               after: "hide-item";
               after: "hide-favorite-action";
            }

            program {
               name: "show-item";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.2;
               target: "bg";
               target: "bg-fill";
            }

            program {
               name: "hide-item";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.2;
               target: "bg";
               target: "bg-fill";
            }
         }

         part {
            name: "bg-fill";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 0 0 0 0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 5 5;
                  to: "bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -6 -6;
                  to: "bg";
               }
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 0 0 0 100;
               visible: 1;
            }
         }

         part {
            name: "bg";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               image {
                  normal: "item-bg.png";
                  border: 5 5 5 5;
                  middle: 0;
               }
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
            name: "e.swallow.icon";
            type: SWALLOW;
            mouse_events: 0;
            scale: 0;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 10 10;
               }
               rel2 {
                  relative: 0.0 0.0;
                  offset: 79 79;
               }
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
               color3: 32 32 32 128;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 85 10;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -11 40;
               }
               text {
                  text_class: "grid_font";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 0 1;
                  text: "label";
                  align: 0.0 1.0;
               }
            }
         }


         part {
            name: "item-label-sep";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               min: 300 2;
               max: 9999 2;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 85 40;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -11 41;
               }
               image.normal: "item-label-sep.png";
            }
         }

         part {
            name: "e.text.comment";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               color: 224 224 224 255;
               color3: 64 64 64 128;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 85 50;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -11 50;
               }
               text {
                  font: "Sans";
                  size: 10;
                  min: 0 1;
                  text: "";
                  align: 0.0 0.0;
               }
            }
         }

         part {
            name: "busy_clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
	    name: "busy";
	    clip_to: "busy_clipper";
	    mouse_events:  0;
	    description {
	       state: "default" 0.0;
	       aspect: 1.0 1.0;
	       aspect_preference: BOTH;
               min: 24 24;
               max: 24 24;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -24 -5;
                  to: "e.swallow.icon";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 18;
                  to: "e.swallow.icon";
               }
	       image {
		  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";
		  normal: "busy-9.png";
	       }
	    }
	 }

         part {
            name: "favorite-added-icon";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
               min: 22 22;
               max: 22 22;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -22 -6;
                  to: "e.swallow.icon";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 17;
                  to: "e.swallow.icon";
               }
               image.normal: "favorite_add.png";
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
            name: "favorite-added-icon-pulser";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -12 -12;
                  to: "favorite-added-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 11 11;
                  to: "favorite-added-icon";
               }
               image.normal: "favorite_add.png";
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "favorite-added-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "favorite-added-icon";
               }
            }
         }

         part {
            name: "favorite-action-clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1.relative: -10 -10;
               rel2.relative: 10 10;
               visible: 0;
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
            name: "favorite-action-bg";
            type: RECT;
            mouse_events: 1;
            clip_to: "favorite-action-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -5 -5;
                  to_x: "favorite-action-icon";
                  to_y: "e.text.favorite_action";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 4 8;
                  to: "e.text.favorite_action";
               }
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "favorite-action-icon";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "favorite-action-clipper";
            description {
               state: "default" 0.0;
               visible: 0;
               min: 22 22;
               max: 22 22;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 85 0;
                  to_y: "e.text.comment";
               }
               rel2 {
                  relative: 0.0 1.0;
                  offset: 106 21;
                  to_y: "e.text.comment";
               }
               image.normal: "favorite_add.png";
            }
            description {
               state: "add" 0.0;
               inherit: "default" 0.0;
               visible: 1;
               image.normal: "favorite_add.png";
            }
            description {
               state: "del" 0.0;
               inherit: "default" 0.0;
               visible: 1;
               image.normal: "favorite_del.png";
            }
         }

         part {
            name: "e.text.favorite_action";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            clip_to: "favorite-action-clipper";
            description {
               state: "default" 0.0;
               color: 224 224 224 255;
               color3: 64 64 64 128;
               align: 0.0 0.5;
               fixed: 1 1;
               rel1 {
                  relative: 1.0 0.5;
                  offset: 5 -10;
                  to: "favorite-action-icon";
               }
               rel2 {
                  relative: 1.0 0.5;
                  offset: 15 9;
                  to: "favorite-action-icon";
               }
               text {
                  font: "Sans";
                  size: 10;
                  min: 1 1;
                  text: "favorite action";
                  align: 0.0 0.5;
               }
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
            }
         }

         programs {
            program {
               name: "gui,action,win,open";
               signal: "gui,action,win,open";
               source: "e";
               action: STATE_SET "visible" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
            }

            program {
               name: "gui,action,win,close";
               signal: "gui,action,win,close";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
               after: "busy_anim_stop";
            }

            program {
               name: "busy_anim";
               signal: "gui,action,win,open";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.5;
               target: "busy";
               after: "busy_anim";
            }

            program {
               name: "busy_anim_stop";
               action: ACTION_STOP;
               target: "busy_anim";
            }

            program {
               name: "notify-in";
               action: SIGNAL_EMIT "gui,action,focus,in" "e";
            }

            program {
               name: "notify-out";
               action: SIGNAL_EMIT "gui,action,focus,out" "e";
            }

            program {
               signal: "mouse,clicked,1";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,executed" "e";
            }

            program {
               signal: "mouse,clicked,3";
               source: "eventarea";
               action: STATE_SET "visible" 0.0;
               target: "favorite-action-clipper";
               transition: LINEAR 0.3;
            }

            program {
               signal: "gui,state,favorite,can_add";
               source: "e";
               script {
                  set_int(fav_action_mode, 1);
               }
               after: "favorite_icon_add";
            }
            program {
               name: "favorite_icon_add";
               action: STATE_SET "add" 0.0;
               target: "favorite-action-icon";
            }

            program {
               signal: "gui,state,favorite,can_del";
               source: "e";
               script {
                  set_int(fav_action_mode, 2);
               }
               after: "favorite_icon_del";
            }
            program {
               name: "favorite_icon_del";
               action: STATE_SET "del" 0.0;
               target: "favorite-action-icon";
            }

            program {
               name: "show-favorite-added";
               signal: "gui,state,favorite,added";
               source: "e";
               action: STATE_SET "visible" 0.0;
               transition: SINUSOIDAL 0.6;
               target: "favorite-added-icon";
               after: "show-favorite-added,1";
            }
            program {
               name: "show-favorite-added,1";
               action: STATE_SET "visible" 0.0;
               target: "favorite-added-icon-pulser";
               transition: LINEAR 0.4;
               after: "show-favorite-added,2";
            }
            program {
               name: "show-favorite-added,2";
               action: STATE_SET "default" 0.0;
               target: "favorite-added-icon-pulser";
               transition: LINEAR 0.4;
               after: "show-favorite-added,3";
            }
            program {
               name: "show-favorite-added,3";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,4";
            }
            program {
               name: "show-favorite-added,4";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,5";
            }
            program {
               name: "show-favorite-added,5";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,6";
            }
            program {
               name: "show-favorite-added,6";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,7";
            }
            program {
               name: "show-favorite-added,7";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,8";
            }
            program {
               name: "show-favorite-added,8";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.4;
               target: "favorite-added-icon-pulser";
               after: "show-favorite-added,9";
            }
            program {
               name: "show-favorite-added,9";
               action: STATE_SET "default" 0.0;
               transition: SINUSOIDAL 0.6;
               target: "favorite-added-icon";
            }

            program {
               signal: "mouse,clicked,1";
               source: "favorite-action-bg";
               script {
                  fav_action();
               }
            }

            program {
               signal: "mouse,in";
               source: "favorite-action-bg";
               script {
                  enter_favorites();
               }
            }

            program {
               signal: "mouse,out";
               source: "favorite-action-bg";
               script {
                  exit_favorites();
               }
            }

            program {
               name: "show-favorite-action";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.3;
               target: "favorite-action-clipper";
            }

            program {
               name: "hide-favorite-action";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.3;
               target: "favorite-action-clipper";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/places/storage/item";

      min: 169 140;

      data {
         item: "scale_min" "on";
         item: "scale_icon" "on";
         item: "selectraise" "on";
         item: "icon_size" "90";
      }

      images {
         image: "text-bg.png" COMP;
         image: "open.png" COMP;
         image: "eject.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: "eventarea";
            type: RECT;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 5 5;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -6 -6;
               }
            }
         }

         part {
            name: "icon-clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 64;
            }
            description {
               state: "mounted" 0.0;
               color: 255 255 255 255;
            }
         }

         programs {
            program {
               name: "gui,state,mounted";
               signal: "gui,state,mounted";
               source: "e";
               action: STATE_SET "mounted" 0.0;
               transition: LINEAR 0.2;
               target: "icon-clipper";
            }

            program {
               name: "gui,state,unmounted";
               signal: "gui,state,unmounted";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.2;
               target: "icon-clipper";
            }
         }

         part {
            name: "e.swallow.icon";
            type: SWALLOW;
            mouse_events: 0;
            scale: 0;
            clip_to: "icon-clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -45 10;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 44 99;
               }
            }
            description {
               state: "big" 0.0;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -50 5;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 49 104;
               }
            }
         }

         part {
            name: "overlay-clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "visible" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         programs {
            program {
               signal: "mouse,in";
               source: "eventarea";
               action: STATE_SET "visible" 0.0;
               transition: LINEAR 0.1;
               target: "overlay-clipper";
            }
            program {
               signal: "mouse,out";
               source: "eventarea";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.1;
               target: "overlay-clipper";
            }
         }

         part {
            name: "action-clipper";
            type: RECT;
            mouse_events: 0;
            clip_to: "overlay-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "hidden" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "action-bg";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "action-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 128;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -5 -5;
                  to: "action-eventarea";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 4 4;
                  to: "action-eventarea";
               }
               image {
                  normal: "text-bg.png";
                  border: 5 10 5 10;
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "action-icon";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "action-clipper";
            description {
               state: "default" 0.0;
               min: 22 22;
               max: 22 22;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 30;
               }
               rel2 {
                  relative: 0.0 0.0;
                  offset: 41 51;
               }
               image.normal: "open.png";
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
               min: 0 0;
               rel2 {
                  relative: 0.0 0.0;
                  offset: 20 20;
               }
            }
         }

         part {
            name: "e.text.action";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            clip_to: "action-clipper";
            description {
               state: "default" 0.0;
               color: 224 224 224 255;
               color3: 0 0 0 128;
               rel1 {
                  relative: 1.0 0.0;
                  offset: 10 0;
                  to: "action-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -21 -1;
                  to_y: "action-icon";
               }
               text {
                  text_class: "grid_font";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 1 1;
                  text: "action";
                  align: 0.0 0.5;
               }
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
               text {
                  min: 0 0;
               }
            }
         }

         part {
            name: "action-eventarea";
            type: RECT;
            repeat_events: 1;
            clip_to: "action-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "action-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "e.text.action";
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
            }
         }

         programs {
            program {
               signal: "mouse,in";
               source: "action-eventarea";
               action: STATE_SET "active" 0.0;
               transition: LINEAR 0.2;
               target: "e.text.action";
               target: "action-bg";
            }

            program {
               signal: "mouse,out";
               source: "action-eventarea";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.2;
               target: "e.text.action";
               target: "action-bg";
            }

            program {
               signal: "mouse,clicked,1";
               source: "action-eventarea";
               action: SIGNAL_EMIT "gui,action,executed" "e";
            }
         }

         part {
            name: "eject-clipper";
            type: RECT;
            mouse_events: 0;
            clip_to: "overlay-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "hidden" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "eject-bg";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "eject-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 128;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -5 -5;
                  to: "eject-eventarea";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 4 4;
                  to: "eject-eventarea";
               }
               image {
                  normal: "text-bg.png";
                  border: 5 10 5 10;
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "eject-icon";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "eject-clipper";
            description {
               state: "default" 0.0;
               min: 22 22;
               max: 22 22;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 20 6;
                  to_y: "action-eventarea";
               }
               rel2 {
                  relative: 0.0 1.0;
                  offset: 41 27;
                  to_y: "action-eventarea";
               }
               image.normal: "eject.png";
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
               min: 0 0;
               rel2 {
                  relative: 0.0 0.0;
                  offset: 20 20;
               }
            }
         }

         part {
            name: "e.text.eject";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            clip_to: "eject-clipper";
            description {
               state: "default" 0.0;
               color: 224 224 224 255;
               color3: 0 0 0 128;
               rel1 {
                  relative: 1.0 0.0;
                  offset: 10 0;
                  to: "eject-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -21 -1;
                  to_y: "eject-icon";
               }
               text {
                  text_class: "grid_font";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 1 1;
                  text: "eject";
                  align: 0.0 0.5;
               }
            }
            description {
               state: "active" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
               text {
                  min: 0 0;
               }
            }
         }

         part {
            name: "eject-eventarea";
            type: RECT;
            repeat_events: 1;
            clip_to: "eject-clipper";
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "eject-icon";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "e.text.eject";
               }
            }
            description {
               state: "hidden" 0.0;
               inherit: "default" 0.0;
               visible: 0;
            }
         }

         programs {
            program {
               signal: "mouse,in";
               source: "eject-eventarea";
               action: STATE_SET "active" 0.0;
               transition: LINEAR 0.2;
               target: "e.text.eject";
               target: "eject-bg";
            }

            program {
               signal: "mouse,out";
               source: "eject-eventarea";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.2;
               target: "e.text.eject";
               target: "eject-bg";
            }

            program {
               signal: "gui,state,can_eject";
               source: "e" ;
               action: STATE_SET "default" 0.0;
               target: "eject-clipper";
               target: "eject-eventarea";
               target: "eject-icon";
               target: "e.text.eject";
               target: "eject-bg";
            }

            program {
               signal: "gui,state,cannot_eject";
               source: "e" ;
               action: STATE_SET "hidden" 0.0;
               target: "eject-clipper";
               target: "eject-eventarea";
               target: "eject-icon";
               target: "e.text.eject";
               target: "eject-bg";
            }

            program {
               signal: "mouse,clicked,1";
               source: "eject-eventarea";
               action: SIGNAL_EMIT "gui,action,ejected" "e";
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 110;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -21 129;
               }
               text {
                  text_class: "grid_font";
                  font: "Sans";
                  size: 12;
                  min: 0 1;
                  text: "label";
                  align: 0.5 0.5;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 0;
            }
         }

         part {
            name: "label-full-clipper";
            type: RECT;
            effect: SHADOW;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               color3: 0 0 0 255;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "label-full-bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to: "label-full-bg";
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
            name: "label-full-bg";
            type: IMAGE;
            mouse_events: 0;
            clip_to: "label-full-clipper";
            description {
               state: "default" 0.0;
               visible: 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: -5 -5;
                  to: "label-full";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: 4 4;
                  to: "label-full";
               }
               image {
                  normal: "text-bg.png";
                  border: 5 10 5 10;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 1;
            }
         }

         part {
            name: "label-full";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               visible: 0;
               color: 255 255 255 255;
               color3: 0 0 0 255;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 20 110;
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -21 129;
               }
               text {
                  text_class: "grid_font";
                  text_source: "e.text.label";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 1 1;
                  text: "label";
                  align: 0.5 0.5;
                  min: 1 1;
               }
            }
            description {
               state: "big" 0.0;
               inherit: "default" 0.0;
               visible: 1;
            }
         }

         part {
            name: "busy_clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               color: 255 255 255 255;
               visible: 1;
            }
         }

         part {
	    name: "busy";
	    clip_to: "busy_clipper";
	    mouse_events:  0;
	    description {
	       state: "default" 0.0;
	       aspect: 1.0 1.0;
	       aspect_preference: BOTH;
               min: 24 24;
               max: 24 24;
               rel1 {
                  relative: 1.0 0.0;
                  offset: -24 -5;
                  to: "e.swallow.icon";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -1 18;
                  to: "e.swallow.icon";
               }
	       image {
		  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";
		  normal: "busy-9.png";
	       }
	    }
	 }

         programs {
            program {
               name: "gui,busy,on";
               signal: "gui,busy,on";
               source: "e";
               action: STATE_SET "visible" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
            }

            program {
               name: "gui,busy,off";
               signal: "gui,busy,off";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: SINUSOIDAL 1.0;
               target: "busy_clipper";
               after: "busy_anim_stop";
            }

            program {
               name: "busy_anim";
               signal: "gui,action,win,open";
               source: "e";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.5;
               target: "busy";
               after: "busy_anim";
            }

            program {
               name: "busy_anim_stop";
               action: ACTION_STOP;
               target: "busy_anim";
            }

            program {
               name: "grow-anim";
               action: STATE_SET "big" 0.0;
               transition: LINEAR 0.1;
               target: "e.swallow.icon";
               target: "label-full-clipper";
            }

            program {
               name: "grow-immediate";
               action: STATE_SET "big" 0.0;
               target: "e.text.label";
               target: "label-full";
               target: "label-full-bg";
               after: "grow-anim";
            }

            program {
               name: "notify-in";
               signal: "mouse,in";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,focus,in" "e";
            }

            program {
               name: "shrink-anim";
               action: STATE_SET "default" 0.0;
               transition: LINEAR 0.1;
               target: "e.swallow.icon";
               target: "label-full-clipper";
            }

            program {
               name: "shrink-immediate";
               action: STATE_SET "default" 0.0;
               target: "e.text.label";
               target: "label-full";
               target: "label-full-bg";
               after: "shrink-anim";
            }

            program {
               name: "notify-out";
               signal: "mouse,out";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,focus,out" "e";
            }

            program {
               signal: "gui,action,select";
               source: "e";
               after: "grow-immediate";
            }

            program {
               signal: "gui,action,unselect";
               source: "e";
               after: "shrink-immediate";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/sidebar";

      data {
         item: "scroll_vertical" "off";
      }

      parts {
         part {
            name: "e.box.contents";
            type: BOX;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               box {
                  layout: "horizontal_max";
                  align: 0.0 0.0;
               }
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/sidebar/item";
      min: 84 90;
      max: 84 90;

      data {
         item: "scale_min" "on";
         item: "scale_icon" "on";
         item: "selectraise" "on";
         item: "icon_size" "64";
      }

      images {
         image: "sidebar_item_active.png" COMP;
      }

      script {
         public is_clicked, is_over, was_clicked, was_over;

         public apply() {
            if (get_int(is_clicked)) {
               if (!get_int(was_clicked)) {
                  set_int(was_clicked, 1);

                  if (get_int(was_over))
                     run_program(PROGRAM:"go_clicked_from_over");
                  else
                     run_program(PROGRAM:"go_clicked");
               }
            } else if (get_int(is_over)) {
               if (!get_int(was_over)) {
                  set_int(was_over, 1);

                  if (get_int(was_clicked))
                     run_program(PROGRAM:"go_over_from_clicked");
                  else
                     run_program(PROGRAM:"go_over");
               }
            } else {
               set_int(was_over, 0);
               set_int(was_clicked, 0);
               run_program(PROGRAM:"go_passive");
            }
         }

         public clicked(val) {
            if (val == get_int(is_clicked))
               return;
            set_int(is_clicked, val);
            apply();
         }

         public over(val) {
            if (val == get_int(is_over))
               return;
            set_int(is_over, val);
            apply();
         }
      }

      parts {
         part {
            name: "bg";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               visible:  0;
               color: 255 255 255 0;
               min: 69 81;
               max: 69 81;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -34 -10;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 34 70;
               }
               image {
                  normal: "sidebar_item_active.png";
                  scale_hint: STATIC;
               }
               fill.smooth: 0;
            }
            description {
               state: "over" 0.0;
               inherit: "default" 0.0;
            }
            description {
               state: "clicked" 0.0;
               inherit: "default" 0.0;
               visible: 1;
               color: 255 255 255 255;
            }
         }

         part {
            name: "icon-clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 224 224 224 225;
            }
            description {
               state: "over" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "clicked" 0.0;
               color: 255 255 255 255;
            }
         }

         part {
            name: "e.swallow.icon";
            type: SWALLOW;
            scale: 0;
            clip_to: "icon-clipper";
            description {
               state: "default" 0.0;
               fixed: 1 1;
               align: 0.5 0.5;
               min: 64 64;
               max: 64 64;
               rel1 {
                  relative: 0.5 0.0;
                  offset: -32 6;
               }
               rel2 {
                  relative: 0.5 0.0;
                  offset: 31 69;
               }
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               align: 0.5 0.0;
               fixed: 1 1;
               visible: 0;
               rel1 {
                  relative: 0.5 1.0;
                  offset: -32 0;
                  to_y: "e.swallow.icon";
               }
               rel2 {
                  relative: 0.5 1.0;
                  offset: 31 10;
                  to_y: "e.swallow.icon";
               }
               color: 255 255 255 255;
               color3: 32 32 32 128;
               text {
                  text_class: "list_font";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 1 1;
                  align: 0.5 0.5;
               }
            }
            description {
               state: "over" 0.0;
               inherit: "default" 0.0;
               visible: 1;
            }
            description {
               state: "clicked" 0.0;
               inherit: "default" 0.0;
            }
         }

         part {
            name: "event";
            type: RECT;
            repeat_events: 1;
            description {
               state: "default" 0.0;
               color: 0 0 0 0;
            }
         }
      }

      programs {
         program {
            name: "icon-on";
            action: STATE_SET "over" 0.0;
            target: "icon-clipper";
            transition: LINEAR 0.2;
         }

         program {
            name: "icon-off";
            action: STATE_SET "default" 0.0;
            target: "icon-clipper";
            transition: LINEAR 0.2;
         }

         program {
            name: "bg-on";
            action: STATE_SET "clicked" 0.0;
            target: "bg";
            transition: LINEAR 0.2;
         }

         program {
            name: "bg-off";
            action: STATE_SET "default" 0.0;
            target: "bg";
            transition: LINEAR 0.2;
         }

         program {
            name: "text-on";
            action: STATE_SET "over" 0.0;
            target: "e.text.label";
         }

         program {
            name: "text-off";
            action: STATE_SET "default" 0.0;
            target: "e.text.label";
         }

         program {
            name: "go_over";
            after: "icon-on";
            after: "bg-off";
         }

         program {
            name: "go_clicked";
            after: "icon-on";
            after: "bg-on";
         }

         program {
            name: "go_passive";
            after: "icon-off";
            after: "bg-off";
         }

         program {
            name: "go_clicked_from_over";
            after: "bg-on";
         }

         program {
            name: "go_over_from_clicked";
            after: "bg-off";
         }

         program {
            signal: "gui,action,focus,in";
            source: "e";
            script { over(1); }
         }

         program {
            signal: "gui,action,focus,out";
            source: "e";
            script { over(0); }
         }

         program {
            signal: "gui,action,select";
            source: "e";
            script { clicked(1); }
         }

         program {
            signal: "gui,action,unselect";
            source: "e";
            script { clicked(0); }
         }

         program {
            signal: "mouse,in";
            source: "event";
            script { over(1); }
            after: "text-on";
         }
         program {
            signal: "mouse,out";
            source: "event";
            script { over(0); }
            after: "text-off";
         }

         program {
            signal: "mouse,clicked,1";
            source: "event";
            action: SIGNAL_EMIT "gui,action,executed" "e";
         }
      }
   }

   group {
      name: "elm/win/inwin/error";

      images {
	 image: "error-bg.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: "pop";
	    mouse_events: 1;
	    description { state: "default" 0.0;
	       rel1.to: "elm.swallow.content";
               rel1.offset: -34 -27;
	       rel2.to: "elm.swallow.content";
               rel2.offset: 26 33;
               image {
		  normal: "error-bg.png";
		  border: 33 26 26 33;
                  middle: SOLID;
               }
	    }
	 }

	 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 1.0;
	    target: "base";
	 }

	 program { name: "hide";
            signal: "elm,action,hide";
	    source: "elm";
	    action: STATE_SET "default" 0.0;
	    transition: DECELERATE 1.0;
	    target: "base";
	 }
      }
   }

   group {
      name: "elm/frame/base/error";

      parts {
	 part {
            name: "elm.text";
	    type: TEXT;
	    mouse_events: 0;
	    scale: 1;
	    description {
               state: "default" 0.0;
	       color: 128 128 128 255;
	       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;
	       }
	       text {
                  text_class: "frame_font";
		  font: "Sans:style=Bold,Edje-Vera-Bold";
		  size: 12;
		  min: 1 1;
		  max: 1 1;
		  align: 0.0 0.0;
	       }
	    }
	 }

	 part {
            name: "elm.swallow.content";
	    type: SWALLOW;
	    description {
               state: "default" 0.0;
	       rel1 {
		  to_y: "elm.text";
		  relative: 0.0 1.0;
		  offset: 8 8;
	       }
	       rel2.offset: -9 -9;
	    }
	 }
      }
   }

   group {
      name: "elm/win/inwin/launchfeedback";

      images {
	 image: "launch-bg.png" COMP;
      }

      parts {
	 part {
            name: "base";
	    type: RECT;
	    mouse_events: 0;
	    description {
               state: "default" 0.0;
	       color: 0 0 0 0;
	    }
	    description {
               state: "visible" 0.0;
	       inherit: "default" 1.0;
	       color: 0 0 0 128;
	    }
	 }

	 part {
            name: "pop";
	    mouse_events: 1;
	    description {
               state: "default" 0.0;
               visible: 0;
               rel1 {
                  relative: 0.5 0.5;
                  offset: -16 -33;
               }
               rel2 {
                  relative: 0.5 0.5;
                  offset: 15 15;
               }
               image {
		  normal: "launch-bg.png";
		  border: 16 16 33 16;
               }
	    }
            description {
               state: "visible" 0.0;
               inherit: "default" 0.0;
               visible: 1;
	       rel1 {
                  to: "elm.swallow.content";
                  relative: 0.0 0.0;
                  offset: -20 -4;
               }
	       rel2 {
                  to: "elm.swallow.content";
                  relative: 1.0 1.0;
                  offset: 19 19;
               }
            }
	 }

         part {
            name: "content_clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
            }
            description {
               state: "visible" 0.0;
               color: 255 255 255 255;
            }
         }

	 part {
            name: "elm.swallow.content";
            type: SWALLOW;
            clip_to: "content_clipper";
	    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 "default" 0.0;
            target: "base";
            target: "pop";
            target: "content_clipper";
            after: "show,1";
         }
         program {
            name: "show,1";
	    action: STATE_SET "visible" 0.0;
	    transition: LINEAR 0.3;
	    target: "base";
            after: "show,2";
         }
         program {
            name: "show,2";
            action: STATE_SET "visible" 0.0;
            transition: ACCELERATE 0.7;
            target: "pop";
            after: "show,3";
	 }
         program {
            name: "show,3";
            action: STATE_SET "visible" 0.0;
            transition: LINEAR 1.0;
            target: "content_clipper";
	 }

	 program {
            name: "hide";
            signal: "elm,action,hide";
	    source: "elm";
	    action: STATE_SET "visible" 0.0;
            target: "base";
            target: "pop";
            target: "content_clipper";
            after: "hide,1";
         }
         program {
            name: "hide,1";
            action: STATE_SET "default" 0.0;
            transition: LINEAR 1.0;
            target: "content_clipper";
            after: "hide,2";
	 }
         program {
            name: "hide,2";
            action: STATE_SET "default" 0.0;
            transition: ACCELERATE 0.7;
            target: "pop";
            after: "hide,3";
	 }
         program {
            name: "hide,3";
	    action: STATE_SET "default" 0.0;
	    transition: LINEAR 0.3;
	    target: "base";
         }
      }
   }

   group {
      name: "e/netbook/launcher/launchfeedback";
      min: 68 200;

      parts {
         part {
            name: "e.size";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
                  to: "e.text.title";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
                  to_y: "e.swallow.icon";
                  to_x: "e.text.label";
               }
            }
         }

	 part {
            name: "e.text.title";
	    type: TEXT;
	    mouse_events: 0;
	    scale: 1;
	    description {
               state: "default" 0.0;
	       color: 255 255 255 255;
               min: 100 30;
	       align: 0.0 0.0;
	       fixed: 0 1;
	       rel1 {
		  relative: 0.0 0.0;
		  offset: 0 3;
	       }
	       rel2 {
		  relative: 1.0 0.0;
		  offset: -1 0;
	       }
	       text {
                  text_class: "dialog_font";
		  font: "Sans:style=Bold";
                  text: "title";
                  size: 12;
		  min: 1 1;
		  align: 0.0 0.0;
	       }
	    }
	 }

	 part {
            name: "e.swallow.icon";
	    type: SWALLOW;
            mouse_events: 0;
            scale: 1;
	    description {
               state: "default" 0.0;
               min: 48 48;
               max: 48 48;
	       rel1 {
		  to_y: "e.text.title";
		  relative: 0.0 1.0;
		  offset: 10 10;
	       }
	       rel2 {
                  to_y: "e.text.title";
                  relative: 0.0 1.0;
                  offset: 57 57;
               }
	    }
	 }

         part {
            name: "icon2_clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 200;
               rel1.relative: -10 -10;
               rel2.relative: 10 10;
            }
            description {
               state: "big" 0.0;
               color: 255 255 255 0;
               visible: 0;
               rel1.relative: -10 -10;
               rel2.relative: 10 10;
            }
         }

	 part {
            name: "e.swallow.icon2";
	    type: SWALLOW;
            clip_to: "icon2_clipper";
            mouse_events: 0;
            scale: 1;
	    description {
               state: "default" 0.0;
	       rel1 {
		  to_y: "e.text.title";
		  relative: 0.0 1.0;
		  offset: 10 10;
	       }
	       rel2 {
                  to_y: "e.text.title";
                  relative: 0.0 1.0;
                  offset: 57 57;
               }
	    }
            description {
               state: "big" 0.0;
	       rel1 {
		  to_y: "e.text.title";
		  relative: 0.0 1.0;
		  offset: 0 0;
	       }
	       rel2 {
                  to_y: "e.text.title";
                  relative: 0.0 1.0;
                  offset: 77 77;
               }
            }
	 }

         programs {
            program {
               name: "icon2,grow";
               signal: "gui,action,show";
               source: "e";
               action: STATE_SET "big" 0.0;
               transition: ACCELERATE 0.5;
               target: "icon2_clipper";
               target: "e.swallow.icon2";
               after: "icon2,shrink";
            }
            program {
               name: "icon2,shrink";
               action: STATE_SET "default" 0.0;
               target: "icon2_clipper";
               target: "e.swallow.icon2";
               after: "icon2,grow";
            }

            program {
               name: "gui,action,hide";
               signal: "gui,action,hide";
               source: "e";
               action: ACTION_STOP;
               target: "icon2,grow";
               target: "icon2,shrink";
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               align: 0.0 0.5;
               fixed: 1 1;
               rel1 {
                  to: "e.swallow.icon";
                  relative: 1.0 0.0;
                  offset: 10 0;
               }
               rel2 {
                  to: "e.swallow.icon";
                  relative: 1.0 1.0;
                  offset: 0 -1;
               }
               text {
                  text_class: "dialog_font";
                  font: "Sans";
                  size: 12;
                  align: 0.0 0.5;
                  min: 1 1;
                  max: 1 1;
                  text: "label";
               }
            }
         }

         part {
            name: "eventarea";
            type: RECT;
            mouse_events: 1;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel1.offset: -10000 -10000;
               rel2.offset:  10000  10000;
            }
         }

         programs {
            program {
               name: "eventarea,clicked";
               signal: "mouse,down,*";
               source: "eventarea";
               action: SIGNAL_EMIT "gui,action,dismiss" "e";
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/places/section";
      alias: "e/netbook/launcher/main/preferences/section";
      min: 300 100;

      images {
         image: "iconviewbg.png" COMP;
      }

      parts {
         part {
            name: "bg-fill";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 184 184 184 96;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 10 10;
                  to: "bg";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -11 -11;
                  to: "bg";
               }
            }
         }

         part {
            name: "bg";
            type: IMAGE;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 -10;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
               image {
                  normal: "iconviewbg.png";
                  border: 10 10 10 10;
                  middle: 0;
               }
            }
         }

         part {
            name: "e.text.label";
            type: TEXT;
            effect: SHADOW;
            mouse_events: 0;
            scale: 1;
            description {
               state: "default" 0.0;
               color: 224 224 224 200;
               color3: 0 0 0 128;
               align: 0.5 0.0;
               fixed: 1 1;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 10 10;
                  to_x: "bg";
               }
               rel2 {
                  relative: 1.0 0.0;
                  offset: -11 20;
                  to_x: "bg";
               }
               text {
                  text_class: "grid_font";
                  font: "Sans:style=Bold";
                  size: 12;
                  min: 0 1;
                  text: "label";
                  align: 0.5 0.5;
               }
            }
         }

         part {
            name: "e.size";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 0;
               rel2 {
                  relative: 1.0 1.0;
                  offset: 19 9;
                  to: "e.box.contents";
               }
            }
         }

         part {
            name: "e.box.contents";
            type: BOX;
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 1.0;
                  offset: 30 10;
                  to_y: "e.text.label";
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -21 -11;
               }
               box {
                  layout: "horizontal_flow";
                  align: 0.0 0.0;
                  padding: 10 10;
                  min: 1 1;
               }
            }
         }
      }
   }

   group {
      name: "e/netbook/launcher/main/icon_async";

      parts {
         part {
            name: "clipper";
            type: RECT;
            mouse_events: 0;
            description {
               state: "default" 0.0;
               color: 255 255 255 255;
            }
            description {
               state: "hidden" 0.0;
               color: 255 255 255 0;
               visible: 0;
            }
         }

         part {
            name: "e.swallow.icon";
            type: SWALLOW;
            mouse_events: 0;
            clip_to: "clipper";
            description {
               state: "default" 0.0;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 0 0;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -1 -1;
               }
            }
         }

         programs {
            program {
               name: "empty";
               signal: "gui,action,empty";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "clipper";
            }

            program {
               name: "loading";
               signal: "gui,action,loading";
               source: "e";
               action: STATE_SET "hidden" 0.0;
               target: "clipper";
            }

            program {
               name: "loaded";
               signal: "gui,action,loaded";
               source: "e";
               action: STATE_SET "default" 0.0;
               target: "clipper";
               transition: LINEAR 0.5;
            }
         }
      }
   }
}
