Creating content-back and content-back-next application layoyts.
authorOtávio Pontes <otavio@profusion.mobi>
Thu, 9 Dec 2010 15:29:14 +0000 (15:29 +0000)
committerOtávio Pontes <otavio@profusion.mobi>
Thu, 9 Dec 2010 15:29:14 +0000 (15:29 +0000)
Also adds programs to hide and show back button and title bar in
toolbar-content-back layout.

SVN revision: 55416

data/themes/default.edc

index 04984c4..f33ec80 100644 (file)
@@ -34590,7 +34590,7 @@ collections {
          part { name: "elm.swallow.content";
             type: SWALLOW;
             description { state: "default" 0.0;
-               rel1 { to_y: "back";
+               rel1 { to_y: "title_clipper";
                   relative: 0.0 1.0;
                   offset: -1 1;
                }
@@ -34609,10 +34609,39 @@ collections {
                }
             }
          }
-
+         part { name: "title_clipper";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1 {
+                  to_y: "back";
+               }
+               rel2 {
+                  to_y: "back";
+               }
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2 {
+                  relative: 1.0 0.0;
+               }
+            }
+         }
+         part { name: "back_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
          part { name: "back";
             type: EXTERNAL;
             source: "elm/button";
+            clip_to: "back_clipper";
             description { state: "default" 0.0;
                align: 0.0 0.0;
                fixed: 1 1;
@@ -34633,6 +34662,31 @@ collections {
                source: "back";
                action: SIGNAL_EMIT "elm,action,back" "";
             }
+            program {
+               signal: "elm,back,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,back,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,title,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               transition: LINEAR 0.1;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,title,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "title_clipper";
+            }
          }
 
          part { name: "elm.swallow.end";
@@ -34848,6 +34902,299 @@ collections {
          }
       }
    }
+   /* application with a main content area with a back button and title area */
+   group { name: "elm/layout/application/content-back";
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 { to_y: "title_clipper";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+            }
+         }
+         part { name: "title_clipper";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1 {
+                  to_y: "back";
+               }
+               rel2 {
+                  to_y: "back";
+               }
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2 {
+                  relative: 1.0 0.0;
+               }
+            }
+         }
+         part { name: "back_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "back";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "back_clipper";
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: 0 1;
+               }
+               rel2 {
+                  relative: 0.0 0.0;
+                  offset: 50 32;
+               }
+               params.string: "label" "Back";
+            }
+         }
+         programs {
+            program {
+               signal: "clicked";
+               source: "back";
+               action: SIGNAL_EMIT "elm,action,back" "";
+            }
+            program {
+               signal: "elm,back,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,back,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,title,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               transition: LINEAR 0.1;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,title,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "title_clipper";
+            }
+         }
+
+         part { name: "elm.swallow.end";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 1.0 0.0;
+                  offset: -2 1;
+               }
+               rel2 {
+                  relative: 1.0 1.0;
+                  offset: -1 32;
+               }
+            }
+         }
+
+         part { name: "elm.text.title";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            scale: 1;
+            description { state: "default" 0.0;
+               rel1 {
+                  to_x: "back";
+                  relative: 1.0 0.0;
+                  offset: 2 1;
+               }
+               rel2 { to_y: "back";
+                  to_x: "elm.swallow.end";
+                  relative: 0.0 1.0;
+                  offset: -3 -1;
+               }
+               text {
+                  font: "Sans:style=Bold";
+                  size: 12;
+               }
+            }
+         }
+      }
+   }
+
+   /* application with a main content area with a back and next buttons and title area */
+   group { name: "elm/layout/application/content-back-next";
+      parts {
+         part { name: "elm.swallow.content";
+            type: SWALLOW;
+            description { state: "default" 0.0;
+               rel1 { to_y: "title_clipper";
+                  relative: 0.0 1.0;
+                  offset: -1 1;
+               }
+            }
+         }
+
+         part { name: "title_clipper";
+            type: RECT;
+            description { state: "default" 0.0;
+               visible: 1;
+               rel1 {
+                  to_y: "back";
+               }
+               rel2 {
+                  to_y: "back";
+               }
+            }
+            description { state: "hidden" 0.0;
+               inherit: "default" 0.0;
+               visible: 0;
+               rel2 {
+                  relative: 1.0 0.0;
+               }
+            }
+         }
+         part { name: "back";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "back_clipper";
+            description { state: "default" 0.0;
+               align: 0.0 0.0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 0.0 0.0;
+                  offset: 0 1;
+               }
+               rel2 {
+                  relative: 0.0 0.0;
+                  offset: 50 32;
+               }
+               params.string: "label" "Back";
+            }
+         }
+         part { name: "back_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
+         part { name: "next";
+            type: EXTERNAL;
+            source: "elm/button";
+            clip_to: "next_clipper";
+            description { state: "default" 0.0;
+               align: 1.0 0.0;
+               fixed: 1 1;
+               rel1 {
+                  relative: 1.0 0.0;
+                  offset: -2 1;
+               }
+               rel2 {
+                  relative: 1.0 0.0;
+                  offset: -1 32;
+               }
+               params.string: "label" "Next";
+           }
+         }
+         part { name: "next_clipper";
+            type: RECT;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               visible: 1;
+            }
+            description { state: "hidden" 0.0;
+               visible: 0;
+            }
+         }
+         programs {
+            program {
+               signal: "clicked";
+               source: "back";
+               action: SIGNAL_EMIT "elm,action,back" "";
+            }
+            program {
+               signal: "elm,title,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               transition: LINEAR 0.1;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,title,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "title_clipper";
+            }
+            program {
+               signal: "elm,back,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "elm,back,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "back_clipper";
+            }
+            program {
+               signal: "clicked";
+               source: "next";
+               action: SIGNAL_EMIT "elm,action,next" "";
+            }
+            program {
+               signal: "elm,next,hide";
+               source: "elm";
+               action: STATE_SET "hidden" 0.0;
+               target: "next_clipper";
+            }
+            program {
+               signal: "elm,next,show";
+               source: "elm";
+               action: STATE_SET "default" 0.0;
+               target: "next_clipper";
+            }
+         }
+         part { name: "elm.text.title";
+            type: TEXT;
+            effect: SOFT_SHADOW;
+            scale: 1;
+            clip_to: "title_clipper";
+            description { state: "default" 0.0;
+               rel1 {
+                  to_x: "back";
+                  relative: 1.0 0.0;
+                  offset: 2 1;
+               }
+               rel2 { to_y: "back";
+                  to_x: "next";
+                  relative: 0.0 1.0;
+                  offset: -3 -1;
+               }
+               text {
+                  font: "Sans:style=Bold";
+                  size: 12;
+               }
+            }
+         }
+      }
+   }
 
    /* application with toolbar and main content area as a vertical box */
    group { name: "elm/layout/application/toolbar-vbox";