[editfield] fixing bugs
authorWooHyun Jung <wh0705.jung@samsung.com>
Sun, 17 Jul 2011 07:55:43 +0000 (16:55 +0900)
committerWooHyun Jung <wh0705.jung@samsung.com>
Sun, 17 Jul 2011 07:55:43 +0000 (16:55 +0900)
themes/groups/editfield.edc

index 07c5b36..73aa684 100644 (file)
@@ -38,6 +38,16 @@ group { name: "elm/editfield/base/default";
          tag:  "link" "+ color=#800 underline=on underline_color=#8008";
          tag:  "hilight" "+ font=SLP:style=Bold";
       }
+      style { name: "editfield_content_multiline_style";
+         base: "font=SLP:style=Roman font_size=32 color="ENTRY_TEXT_COLOR_INC" wrap=mixed";
+         tag:  "br" "\n";
+         tag:  "ps" "ps";
+         tag:  "tab" "\t";
+         tag:  "em" "+ font=SLP:style=Oblique";
+         tag:  "b" "+ font=SLP:style=Bold";
+         tag:  "link" "+ color=#800 underline=on underline_color=#8008";
+         tag:  "hilight" "+ font=SLP:style=Bold";
+      }
       style { name: "editfield_content_password_style";
          base: "font=SLP:style=Roman font_size=24 color="ENTRY_TEXT_COLOR_INC" wrap=none ellipsis=1";
          tag:  "br" "\n";
@@ -68,20 +78,22 @@ group { name: "elm/editfield/base/default";
       public no_edit() {
          if(get_int(single_line) == 1) {
             if(get_int(password_mode) == 0) {
-               set_state(PART:"elm.content.text", "single_no_edit", 0.0);
+               set_state(PART:"elm.content.single", "no_edit", 0.0);
+               set_state(PART:"elm.content.multi", "default", 0.0);
                set_state(PART:"elm.content.password", "default", 0.0);
             }
             else {
-               set_state(PART:"elm.content.text", "default", 0.0);
-               set_state(PART:"elm.content.password", "single_no_edit", 0.0);
+               set_state(PART:"elm.content.single", "default", 0.0);
+               set_state(PART:"elm.content.multi", "default", 0.0);
+               set_state(PART:"elm.content.password", "no_edit", 0.0);
             }
-            set_state(PART:"elm.swallow.content", "single_no_edit", 0.0);
          }
          else if(get_int(single_line) == 0) {
-            set_state(PART:"elm.content.text", "default", 0.0);
+            set_state(PART:"elm.content.single", "default", 0.0);
+            set_state(PART:"elm.content.multi", "no_edit", 0.0);
             set_state(PART:"elm.content.password", "default", 0.0);
-            set_state(PART:"elm.swallow.content", "default", 0.0);
          }
+         set_state(PART:"elm.swallow.content", "no_edit", 0.0);
          set_state(PART:"over", "default", 0.0);
          set_state(PART:"top2", "default", 0.0);
       }
@@ -320,7 +332,7 @@ group { name: "elm/editfield/base/default";
          }
       }
       part {
-         name: "elm.content.text";
+         name: "elm.content.single";
          type: TEXTBLOCK;
          scale: 1;
          ignore_flags: ON_HOLD;
@@ -337,7 +349,34 @@ group { name: "elm/editfield/base/default";
             }
          }
          description {
-            state: "single_no_edit" 0.0;
+            state: "no_edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 1;
+         }
+         description {
+            state: "edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+      }
+      part {
+         name: "elm.content.multi";
+         type: TEXTBLOCK;
+         scale: 1;
+         ignore_flags: ON_HOLD;
+         description {
+            state: "default" 0.0;
+            visible: 0;
+            fixed: 1 1;
+            rel1.to: "elm.swallow.content";
+            rel2.to: "elm.swallow.content";
+            text {
+               style: "editfield_content_multiline_style";
+               min: 0 1;
+            }
+         }
+         description {
+            state: "no_edit" 0.0;
             inherit: "default" 0.0;
             visible: 1;
          }
@@ -399,10 +438,15 @@ group { name: "elm/editfield/base/default";
             align: 0.0 0.5;
          }
          description {
-            state: "single_no_edit" 0.0;
+            state: "no_edit" 0.0;
             inherit: "default" 0.0;
             visible: 0;
          }
+         description {
+            state: "edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 1;
+         }
       }
       part {
          name: "over";
@@ -545,7 +589,8 @@ group { name: "elm/editfield/base/default";
          action: STATE_SET "edit" 0.0;
          target: "elm.swallow.content";
          target: "elm.content.password";
-         target: "elm.content.text";
+         target: "elm.content.multi";
+         target: "elm.content.single";
          target: "over";
          target: "top2";
       }
@@ -579,6 +624,14 @@ group { name: "elm/editfield/base/default";
          target: "bottom2";
          target: "bottom3";
       }
+      program {
+         name: "entry_show";
+         signal: "elm,state,entry,show";
+         source: "elm";
+         action: STATE_SET "edit" 0.0;
+         target: "elm.swallow.content";
+         target: "elm.content.multi";
+      }
    }
 }
 
@@ -587,6 +640,45 @@ group { name: "elm/editfield/base/searchbar";
    images {
       image: "00_field_btn_clear.png" COMP;
    }
+   script {
+      public single_line = 0;
+      public password_mode = 0;
+
+      public set_multi_line() {
+         set_int(single_line, 0);
+      }
+      public set_single_line() {
+         set_int(single_line, 1);
+      }
+      public set_password() {
+         set_int(password_mode, 1);
+      }
+      public unset_password() {
+         set_int(password_mode, 0);
+      }
+      public no_edit() {
+         if(get_int(single_line) == 1) {
+            if(get_int(password_mode) == 0) {
+               set_state(PART:"elm.content.single", "no_edit", 0.0);
+               set_state(PART:"elm.content.multi", "default", 0.0);
+               set_state(PART:"elm.content.password", "default", 0.0);
+            }
+            else {
+               set_state(PART:"elm.content.single", "default", 0.0);
+               set_state(PART:"elm.content.multi", "default", 0.0);
+               set_state(PART:"elm.content.password", "no_edit", 0.0);
+            }
+         }
+         else if(get_int(single_line) == 0) {
+            set_state(PART:"elm.content.single", "default", 0.0);
+            set_state(PART:"elm.content.multi", "no_edit", 0.0);
+            set_state(PART:"elm.content.password", "default", 0.0);
+         }
+         set_state(PART:"elm.swallow.content", "no_edit", 0.0);
+         set_state(PART:"over", "default", 0.0);
+         set_state(PART:"top2", "default", 0.0);
+      }
+   }
    parts {
       part {
          name: "base";
@@ -639,41 +731,6 @@ group { name: "elm/editfield/base/searchbar";
          }
       }
       part {
-         name: "top3";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            visible: 0;
-            min: 0 6;
-            fixed: 0 1;
-            rel1.relative: 0.0 0.0;
-            rel2.relative: 1.0 0.0;
-            align: 0.5 0;
-         }
-         description {
-            state: "elm.text.show" 0.0;
-            inherit: "default" 0.0;
-            min: 0 10.5;
-         }
-      }
-      part {
-         name: "top4";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            visible: 0;
-            min: 0 50;
-            fixed: 1 1;
-            rel1.relative: 0.0 0.0;
-            rel2.relative: 1.0 0.0;
-            align: 0.5 0;
-         }
-      }
-      part {
          name: "left1";
          type: RECT;
          scale: 1;
@@ -709,18 +766,18 @@ group { name: "elm/editfield/base/searchbar";
          scale: 1;
          ignore_flags: ON_HOLD;
          description {
-             state: "default" 0.0;
-             visible: 0;
-             min: 15 0;
-             fixed: 1 1;
-             align: 1 0;
-             rel1.relative : 1.0 0.0;
-             rel2.relative : 1.0 1.0;
+            state: "default" 0.0;
+            visible: 0;
+            min: 15 0;
+            fixed: 1 1;
+            align: 1 0;
+            rel1.relative : 1.0 0.0;
+            rel2.relative : 1.0 1.0;
          }
          description {
-             state: "elm.eraser.show" 0.0;
-             inherit: "default" 0.0;
-             min: 55 0;
+            state: "elm.eraser.show" 0.0;
+            inherit: "default" 0.0;
+            min: 55 0;
          }
       }
       part {
@@ -856,297 +913,87 @@ group { name: "elm/editfield/base/searchbar";
          }
       }
       part {
-         name: "elm.swallow.content";
-         type: SWALLOW;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            min: 0 40;
-            rel1 {
-               relative : 1.0 1.0;
-               to_x: "left1";
-               to_y: "top1";
-            }
-            rel2 {
-               relative : 0.0 0.0;
-               to_x: "right1";
-               to_y: "bottom1";
-            }
-            align: 0.0 0.5;
-         }
-      }
-      part {
-         name: "over";
-         type: RECT;
+         name: "elm.content.single";
+         type: TEXTBLOCK;
          scale: 1;
          ignore_flags: ON_HOLD;
          description {
             state: "default" 0.0;
-            rel1.to: "base";
-            rel2.to: "base";
-            color: 0 0 0 0;
-         }
-         description {
-            state: "edit" 0.0;
-            inherit: "default" 0.0;
-            visible: 0;
-         }
-      }
-      part {
-         name: "eraser_image";
-         scale: 1;
-         description {
-            state: "default" 0.0;
             visible: 0;
-            min: 30 30;
             fixed: 1 1;
-            align: 1 1;
-            rel1 {
-               relative: 0.0 0.0;
-               to_x : "right2";
-               to_y : "bottom2";
-            }
-            rel2 {
-               relative: 0.0 0.0;
-               to_x : "right2";
-               to_y : "bottom2";
-            }
-            image {
-                normal: "00_field_btn_clear.png";
-                border: 4 4 4 4;
-                border_scale: 1;
-            }
-         }
-         description {
-               state: "elm.eraser.show" 0.0;
-               inherit: "default" 0.0;
-               visible: 1;
-         }
-      }
-      part {
-         name: "eraser";
-         mouse_events: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            visible: 0;
-            color: 0 0 0 0;
-            rel1 {
-               relative: 0.0 0.0;
-               to_x : "eraser_image";
-               to_y : "bottom3";
+            rel1.to: "elm.swallow.content";
+            rel2.to: "elm.swallow.content";
+            text {
+               style: "editfield_content_singleline_style";
+               min: 0 0;
+               max: 0 1;
             }
          }
          description {
-            state: "elm.eraser.show" 0.0;
+            state: "no_edit" 0.0;
             inherit: "default" 0.0;
             visible: 1;
          }
-      }
-   }
-   programs {
-      program {
-         name: "guidetext_show";
-         signal: "elm,state,guidetext,visible";
-         source: "elm";
-         action: STATE_SET "default" 0.0;
-         target: "elm.guidetext";
-      }
-      program {
-         name: "guidetext_hide";
-         signal: "elm,state,guidetext,hidden";
-         source: "elm";
-         action: STATE_SET "hidden" 0.0;
-         target: "elm.guidetext";
-      }
-      program {
-         name: "eraser_show";
-         signal: "elm,state,eraser,show";
-         source: "elm";
-         action: STATE_SET "elm.eraser.show" 0.0;
-         target: "right1";
-         target: "eraser_image";
-         target: "eraser";
-      }
-      program {
-         name: "eraser_hide";
-         signal: "elm,state,eraser,hidden";
-         source: "elm";
-         action: STATE_SET "default" 0.0;
-         target: "right1";
-         target: "eraser_image";
-         target: "eraser";
-      }
-      program {
-         name: "editing";
-         signal: "elm,state,over,hide";
-         source: "elm";
-         action: STATE_SET "edit" 0.0;
-         target: "over";
-         target: "top2";
-      }
-      program {
-         name: "no_editing";
-         signal: "elm,state,over,show";
-         source: "elm";
-         action: STATE_SET "default" 0.0;
-         target: "over";
-         target: "top2";
-      }
-      program {
-         name: "label_show";
-         signal: "elm,state,text,visible";
-         source: "elm";
-         action: STATE_SET "elm.text.show" 0.0;
-         target: "elm.text";
-         target: "bottom1";
-         target: "bottom2";
-         target: "bottom3";
-      }
-      program {
-         name: "label_hide";
-         signal: "elm,state,text,hidden";
-         source: "elm";
-         action: STATE_SET "default" 0.0;
-         target: "elm.text";
-         target: "bottom1";
-         target: "bottom2";
-         target: "bottom3";
-      }
-   }
-}
-
-group { name: "elm/editfield/base/genlist_rename";
-   images {
-      image: "00_field_btn_delete.png" COMP;
-   }
-   parts {
-      part {
-         name: "base";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            min: 0 38;
-            color: 0 0 0 0;
-         }
-      }
-      part {
-         name: "top1";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            visible: 0;
-            min: 0 2;
-            fixed: 1 1;
-            rel1.relative: 0.0 0.0;
-            rel2.relative: 1.0 0.0;
-            align: 0.5 0;
-         }
-      }
-      part {
-         name: "left1";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
          description {
-            state: "default" 0.0;
+            state: "edit" 0.0;
+            inherit: "default" 0.0;
             visible: 0;
-            min: 5 0;
-            fixed: 1 1;
-            align: 0 0;
-            rel1.relative : 0.0 0.0;
-            rel2.relative : 0.0 1.0;
          }
       }
       part {
-         name: "right1";
-         type: RECT;
+         name: "elm.content.multi";
+         type: TEXTBLOCK;
          scale: 1;
          ignore_flags: ON_HOLD;
          description {
             state: "default" 0.0;
             visible: 0;
-            min: 5 0;
             fixed: 1 1;
-            align: 1 0;
-            rel1.relative : 1.0 0.0;
-            rel2.relative : 1.0 1.0;
+            rel1.to: "elm.swallow.content";
+            rel2.to: "elm.swallow.content";
+            text {
+               style: "editfield_content_multiline_style";
+               min: 0 1;
+            }
          }
          description {
-            state: "elm.eraser.show" 0.0;
+            state: "no_edit" 0.0;
             inherit: "default" 0.0;
-            min: 43 0;
-         }
-      }
-      part {
-         name: "right2";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            visible: 0;
-            min: 5 0;
-            fixed: 1 1;
-            align: 1 0;
-            rel1.relative : 1.0 0.0;
-            rel2.relative : 1.0 1.0;
+            visible: 1;
          }
-      }
-      part {
-         name: "bottom1";
-         type: RECT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
          description {
-            state: "default" 0.0;
+            state: "edit" 0.0;
+            inherit: "default" 0.0;
             visible: 0;
-            min: 0 4;
-            fixed: 0 1;
-            rel1.relative: 0.0 1.0;
-            align: 0 1;
          }
       }
       part {
-         name: "bottom2";
-         type: RECT;
+         name: "elm.content.password";
+         type: TEXTBLOCK;
          scale: 1;
          ignore_flags: ON_HOLD;
+         entry_mode: PASSWORD;
+         multiline: 0;
          description {
             state: "default" 0.0;
             visible: 0;
-            min: 0 38;
-            fixed: 0 1;
-            rel1.relative: 0.0 1.0;
-            align: 0 1;
-         }
-      }
-      part {
-         name: "elm.guidetext";
-         type: TEXT;
-         scale: 1;
-         ignore_flags: ON_HOLD;
-         description {
-            state: "default" 0.0;
-            align: 0.0 0.0;
             fixed: 1 1;
             rel1.to: "elm.swallow.content";
             rel2.to: "elm.swallow.content";
-            color: 163 157 138 255;
             text {
-               font: "SLP:style=Roman";
-               size: 32;
+               style: "editfield_content_password_style";
+               repch: "*";
                min: 0 0;
-               align: 0.0 0.5;
+               max: 0 1;
             }
          }
          description {
-            state: "hidden" 0.0;
+            state: "single_no_edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 1;
+         }
+         description {
+            state: "edit" 0.0;
             inherit: "default" 0.0;
             visible: 0;
          }
@@ -1158,17 +1005,29 @@ group { name: "elm/editfield/base/genlist_rename";
          ignore_flags: ON_HOLD;
          description {
             state: "default" 0.0;
-            min: 0 38;
+            min: 0 40;
             rel1 {
-               relative : 1.0 0.0;
+               relative : 1.0 1.0;
                to_x: "left1";
+               to_y: "top1";
             }
             rel2 {
-               relative : 0.0 1.0;
+               relative : 0.0 0.0;
                to_x: "right1";
+               to_y: "bottom1";
             }
             align: 0.0 0.5;
          }
+         description {
+            state: "no_edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 0;
+         }
+         description {
+            state: "edit" 0.0;
+            inherit: "default" 0.0;
+            visible: 1;
+         }
       }
       part {
          name: "over";
@@ -1199,16 +1058,18 @@ group { name: "elm/editfield/base/genlist_rename";
             rel1 {
                relative: 0.0 0.0;
                to_x : "right2";
-               to_y : "bottom1";
+               to_y : "bottom2";
             }
             rel2 {
                relative: 0.0 0.0;
                to_x : "right2";
-               to_y : "bottom1";
+               to_y : "bottom2";
+            }
+            image {
+               normal: "00_field_btn_clear.png";
+               border: 4 4 4 4 ;
+               border_scale: 1;
             }
-            image.normal: "00_field_btn_delete.png";
-            image.border: 10 10 10 10;
-            image.border_scale: 1;
          }
          description {
             state: "elm.eraser.show" 0.0;
@@ -1220,13 +1081,14 @@ group { name: "elm/editfield/base/genlist_rename";
          name: "eraser";
          mouse_events: 1;
          ignore_flags: ON_HOLD;
-         description { state: "default" 0.0;
+         description {
+            state: "default" 0.0;
             visible: 0;
             color: 0 0 0 0;
             rel1 {
                relative: 0.0 0.0;
                to_x : "eraser_image";
-               to_y : "bottom2";
+               to_y : "bottom3";
             }
          }
          description {
@@ -1237,19 +1099,22 @@ group { name: "elm/editfield/base/genlist_rename";
       }
    }
    programs {
-      program { name: "guidetext_show";
+      program {
+         name: "guidetext_show";
          signal: "elm,state,guidetext,visible";
          source: "elm";
          action: STATE_SET "default" 0.0;
          target: "elm.guidetext";
       }
-      program { name: "guidetext_hide";
+      program {
+         name: "guidetext_hide";
          signal: "elm,state,guidetext,hidden";
          source: "elm";
          action: STATE_SET "hidden" 0.0;
          target: "elm.guidetext";
       }
-      program { name: "eraser_show";
+      program {
+         name: "eraser_show";
          signal: "elm,state,eraser,show";
          source: "elm";
          action: STATE_SET "elm.eraser.show" 0.0;
@@ -1257,7 +1122,8 @@ group { name: "elm/editfield/base/genlist_rename";
          target: "eraser_image";
          target: "eraser";
       }
-      program { name: "eraser_hide";
+      program {
+         name: "eraser_hide";
          signal: "elm,state,eraser,hidden";
          source: "elm";
          action: STATE_SET "default" 0.0;
@@ -1265,17 +1131,87 @@ group { name: "elm/editfield/base/genlist_rename";
          target: "eraser_image";
          target: "eraser";
       }
-      program { name: "editing";
+      program {
+         name: "multiline_set";
+         signal: "elm,state,text,multiline";
+         source: "elm";
+         script {
+            set_multi_line();
+         }
+      }
+      program {
+         name: "singleline_set";
+         signal: "elm,state,text,singleline";
+         source: "elm";
+         script {
+            set_single_line();
+         }
+      }
+      program {
+         name: "password_set";
+         signal: "elm,state,password,set";
+         source: "elm";
+         script {
+            set_password();
+         }
+      }
+      program {
+         name: "password_unset";
+         signal: "elm,state,password,unset";
+         source: "elm";
+         script {
+            unset_password();
+         }
+      }
+      program {
+         name: "editing";
          signal: "elm,state,over,hide";
          source: "elm";
          action: STATE_SET "edit" 0.0;
+         target: "elm.swallow.content";
+         target: "elm.content.password";
+         target: "elm.content.multi";
+         target: "elm.content.single";
          target: "over";
+         target: "top2";
       }
-      program { name: "no_editing";
+      program {
+         name: "no_editing";
          signal: "elm,state,over,show";
          source: "elm";
+         script {
+            no_edit();
+         }
+      }
+      program {
+         name: "label_show";
+         signal: "elm,state,text,visible";
+         source: "elm";
+         action: STATE_SET "elm.text.show" 0.0;
+         target: "elm.text";
+         target: "top1";
+         target: "bottom1";
+         target: "bottom2";
+         target: "bottom3";
+      }
+      program {
+         name: "label_hide";
+         signal: "elm,state,text,hidden";
+         source: "elm";
          action: STATE_SET "default" 0.0;
-         target: "over";
+         target: "elm.text";
+         target: "top1";
+         target: "bottom1";
+         target: "bottom2";
+         target: "bottom3";
+      }
+      program {
+         name: "entry_show";
+         signal: "elm,state,entry,show";
+         source: "elm";
+         action: STATE_SET "edit" 0.0;
+         target: "elm.swallow.content";
+         target: "elm.content.multi";
       }
    }
-}
+}
\ No newline at end of file