naviframe: improve default back button.
authorGustavo Sverzut Barbieri <barbieri@gmail.com>
Wed, 25 Jul 2012 17:20:34 +0000 (17:20 +0000)
committerGustavo Sverzut Barbieri <barbieri@gmail.com>
Wed, 25 Jul 2012 17:20:34 +0000 (17:20 +0000)
back button now uses standard icon "arrow_left", and provides a "Back"
text that should be translated with the application.

Then we can define the elm/button/base/naviframe/back_btn/default as
an alias to the default button. If a theme wants it could still
provide an alternative button. IOW no breaks.

SVN revision: 74399

data/themes/widgets/button.edc
src/lib/elc_naviframe.c

index fde4d20..30a7020 100644 (file)
@@ -1,5 +1,6 @@
 group { name: "elm/button/base/default";
    alias: "elm/button/base/popup_button/default";
+   alias: "elm/button/base/naviframe/back_btn/default";
    images {
       image: "bt_base1.png" COMP;
       image: "bt_base2.png" COMP;
@@ -1103,193 +1104,6 @@ group { name: "elm/button/base/anchor";
       }
    }
 }
-group { name: "elm/button/base/naviframe/back_btn/default";
-   images {
-      image: "bt_base1.png" COMP;
-      image: "bt_base2.png" COMP;
-      image: "bt_hilight.png" COMP;
-      image: "bt_shine.png" COMP;
-      image: "bt_glow.png" COMP;
-      image: "bt_dis_base.png" COMP;
-      image: "bt_dis_hilight.png" COMP;
-      image: "icon_left_arrow.png" COMP;
-   }
-   parts {
-      part { name: "button_image";
-         mouse_events: 1;
-         description { state: "default" 0.0;
-            min: 12 12;
-            image {
-               normal: "bt_base2.png";
-               border: 7 7 7 7;
-            }
-            image.middle: SOLID;
-         }
-         description { state: "clicked" 0.0;
-            inherit: "default" 0.0;
-            image.normal: "bt_base1.png";
-         }
-         description { state: "disabled" 0.0;
-            inherit:  "default" 0.0;
-            image {
-               normal: "bt_dis_base.png";
-               border: 4 4 4 4;
-            }
-         }
-      }
-      part { name: "prev_image";
-         type: IMAGE;
-         scale: 1;
-         description { state: "default" 0.0;
-            min: 15 15;
-            max: 15 15;
-            fixed: 1 1;
-            align: 0.5 0.5;
-            image.normal: "icon_left_arrow.png";
-         }
-      }
-      part { name: "over1";
-         mouse_events: 0;
-         description { state: "default" 0.0;
-            rel2.relative: 1.0 0.5;
-            image {
-               normal: "bt_hilight.png";
-               border: 7 7 7 0;
-            }
-         }
-         description { state: "disabled" 0.0;
-            inherit:  "default" 0.0;
-            image {
-               normal: "bt_dis_hilight.png";
-               border: 4 4 4 0;
-            }
-         }
-      }
-      part { name: "over2";
-         mouse_events: 1;
-         repeat_events: 1;
-         ignore_flags: ON_HOLD;
-         description { state: "default" 0.0;
-            image {
-               normal: "bt_shine.png";
-               border: 7 7 7 7;
-            }
-         }
-         description { state: "disabled" 0.0;
-            inherit:  "default" 0.0;
-            visible: 0;
-         }
-      }
-      part { name: "over3";
-         mouse_events: 1;
-         repeat_events: 1;
-         description { state: "default" 0.0;
-            color: 255 255 255 0;
-            image {
-               normal: "bt_glow.png";
-               border: 12 12 12 12;
-            }
-            fill.smooth : 0;
-         }
-         description { state: "clicked" 0.0;
-            inherit:  "default" 0.0;
-            color: 255 255 255 255;
-         }
-      }
-      part { name: "disabler";
-         type: RECT;
-         description { state: "default" 0.0;
-            color: 0 0 0 0;
-            visible: 0;
-         }
-         description { state: "disabled" 0.0;
-            inherit: "default" 0.0;
-            visible: 1;
-         }
-      }
-   }
-   programs {
-      program {
-         name:   "button_click";
-         signal: "mouse,down,1";
-         source: "over2";
-         action: SIGNAL_EMIT "elm,action,press" "";
-         after: "button_click_anim";
-      }
-      program {
-         name:   "button_click_anim";
-         action: STATE_SET "clicked" 0.0;
-         target: "button_image";
-      }
-      program {
-         name:   "button_unclick";
-         signal: "mouse,up,1";
-         source: "over3";
-         action: SIGNAL_EMIT "elm,action,unpress" "";
-         after: "button_unclick_anim";
-      }
-      program {
-         name:   "button_pressed_anim";
-         signal: "elm,anim,activate";
-         source: "elm";
-         action: STATE_SET "clicked" 0.0;
-         target: "button_image";
-         target: "over3";
-         after: "button_unpressed_anim";
-      }
-      program {
-         name:   "button_unpressed_anim";
-         action: STATE_SET "default" 0.0;
-         transition: DECELERATE 0.5;
-         target: "button_image";
-         target: "over3";
-      }
-      program {
-         name:   "button_unclick_anim";
-         action: STATE_SET "default" 0.0;
-         target: "button_image";
-      }
-      program {
-         name:   "button_click2";
-         signal: "mouse,down,1";
-         source: "over3";
-         action: STATE_SET "clicked" 0.0;
-         target: "over3";
-      }
-      program {
-         name:   "button_unclick2";
-         signal: "mouse,up,1";
-         source: "over3";
-         action: STATE_SET "default" 0.0;
-         transition: DECELERATE 0.5;
-         target: "over3";
-      }
-      program {
-         name:   "button_unclick3";
-         signal: "mouse,clicked,1";
-         source: "over2";
-         action: SIGNAL_EMIT "elm,action,click" "";
-      }
-      program { name: "disable";
-         signal: "elm,state,disabled";
-         source: "elm";
-         action: STATE_SET "disabled" 0.0;
-         target: "button_image";
-         target: "over1";
-         target: "over2";
-         target: "disabler";
-      }
-      program { name: "enable";
-         signal: "elm,state,enabled";
-         source: "elm";
-         action: STATE_SET "default" 0.0;
-         target: "button_image";
-         target: "over1";
-         target: "over2";
-         target: "disabler";
-      }
-   }
-}
 
 group { name: "elm/button/base/colorselector/left/default";
    images {
index d62da0e..0714683 100644 (file)
@@ -614,7 +614,7 @@ _on_item_back_btn_clicked(void *data,
 static Evas_Object *
 _back_btn_new(Evas_Object *obj)
 {
-   Evas_Object *btn;
+   Evas_Object *btn, *ico;
    char buf[1024];
 
    btn = elm_button_add(obj);
@@ -625,6 +625,12 @@ _back_btn_new(Evas_Object *obj)
    snprintf
      (buf, sizeof(buf), "naviframe/back_btn/%s", elm_widget_style_get(obj));
    elm_object_style_set(btn, buf);
+   elm_object_domain_translatable_text_set(btn, PACKAGE, N_("Back"));
+
+   ico = elm_icon_add(btn);
+   elm_icon_standard_set(ico, "arrow_left");
+   elm_object_style_set(btn, buf);
+   elm_layout_content_set(btn, NULL, ico);
 
    return btn;
 }