hermet pushed a commit to branch master.

http://git.enlightenment.org/tools/enventor.git/commit/?id=75345770ce047a65ff936ee6f2ceee8bb809b4b6

commit 75345770ce047a65ff936ee6f2ceee8bb809b4b6
Author: Hermet Park <[email protected]>
Date:   Fri Feb 5 17:42:26 2016 +0900

    add a function to invert view size.
---
 data/themes/default/images.edc         |   2 ++
 data/themes/default/images/Makefile.am |   3 ++-
 data/themes/default/images/expand.png  | Bin 202 -> 202 bytes
 data/themes/default/images/invert.png  | Bin 0 -> 262 bytes
 data/themes/default/layout_common.edc  |  22 +++++++++++++----
 src/bin/live_edit.c                    |   1 +
 src/bin/statusbar.c                    |  43 ++++++++++++++++++++++++++-------
 7 files changed, 56 insertions(+), 15 deletions(-)

diff --git a/data/themes/default/images.edc b/data/themes/default/images.edc
index f7755ec..c0a9eca 100644
--- a/data/themes/default/images.edc
+++ b/data/themes/default/images.edc
@@ -19,6 +19,7 @@ images {
    image: "live_text.png" COMP;
    image: "live_textblock.png" COMP;
    image: "expand.png" COMP;
+   image: "invert.png" COMP;
 }
 
 #define ICON_GROUP(_group_name, _image_path) \
@@ -45,6 +46,7 @@ ICON_GROUP("save", "save.png")
 ICON_GROUP("undo", "undo.png")
 ICON_GROUP("redo", "redo.png")
 ICON_GROUP("expand", "expand.png")
+ICON_GROUP("invert", "invert.png")
 ICON_GROUP("Image", "live_image.png")
 ICON_GROUP("Rect", "live_rectangle.png")
 ICON_GROUP("Spacer", "live_spacer.png")
diff --git a/data/themes/default/images/Makefile.am 
b/data/themes/default/images/Makefile.am
index c2e89ce..37de141 100644
--- a/data/themes/default/images/Makefile.am
+++ b/data/themes/default/images/Makefile.am
@@ -68,4 +68,5 @@ EXTRA_DIST = \
    undo.png \
    white_bar_vert_glow.png \
    horizontal_separated_bar_small_glow.png \
-   expand.png
+   expand.png \
+       invert.png
diff --git a/data/themes/default/images/expand.png 
b/data/themes/default/images/expand.png
index 6d9996c..dd8e15f 100644
Binary files a/data/themes/default/images/expand.png and 
b/data/themes/default/images/expand.png differ
diff --git a/data/themes/default/images/invert.png 
b/data/themes/default/images/invert.png
new file mode 100644
index 0000000..a55d07d
Binary files /dev/null and b/data/themes/default/images/invert.png differ
diff --git a/data/themes/default/layout_common.edc 
b/data/themes/default/layout_common.edc
index f248fb8..45f5d35 100644
--- a/data/themes/default/layout_common.edc
+++ b/data/themes/default/layout_common.edc
@@ -1829,20 +1829,32 @@ group { name: "statusbar_layout";
             align: 0 0.5;
          }
       }
-      part { name: "elm.text.size[";
-         type: TEXT;
+      swallow { "invert_btn";
          clip_to: "base_clip";
          scale: 1;
-         effect: SHADOW BOTTOM;
-         description { state: "default" 0.0;
+         desc {
             rel1.to_x: "size_spacer";
             rel1.relative: 0.0 0.0;
             rel2.relative: 0.0 1.0;
             align: 0 0.5;
+            fixed: 0 0;
+            min: 18 18;
+         }
+      }
+      text { "elm.text.size[";
+         clip_to: "base_clip";
+         scale: 1;
+         effect: SHADOW BOTTOM;
+         desc {
+            rel1.to_x: "invert_btn";
+            rel1.relative: 1.0 0.0;
+            rel2.to_x: "invert_btn";
+            rel2.relative: 0.0 1.0;
+            align: 0 0.5;
             fixed: 1 0;
             color: COL_NM;
             text {
-               text: "Size [";
+               text: "[";
                size: 11;
                align: 0 0.5;
                min: 1 0;
diff --git a/src/bin/live_edit.c b/src/bin/live_edit.c
index 9af681d..ab5b3ca 100644
--- a/src/bin/live_edit.c
+++ b/src/bin/live_edit.c
@@ -710,6 +710,7 @@ layout_update(live_data *ld)
 static void
 live_edit_update_internal(live_data *ld)
 {
+   evas_smart_objects_calculate(evas_object_evas_get(ld->layout));
    layout_update(ld);
    ctrl_pt_update(ld);
    align_line_update(ld);
diff --git a/src/bin/statusbar.c b/src/bin/statusbar.c
index 131b354..6a2e413 100644
--- a/src/bin/statusbar.c
+++ b/src/bin/statusbar.c
@@ -55,8 +55,27 @@ ctxpopup_dismissed_cb(void *data, Evas_Object *obj,
 }
 
 static void
-view_scale_btn_cb(void *data, Evas_Object *obj,
-                  void *event_info EINA_UNUSED)
+view_invert_btn_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
+{
+   stats_data *sd = data;
+
+   //Toggle on the configurable view size forcely.
+   if (!config_view_size_configurable_get())
+     {
+        config_view_size_configurable_set(EINA_TRUE);
+     }
+
+   Evas_Coord w, h;
+   config_view_size_get(&w, &h);
+   config_view_size_set(h, w);
+   enventor_object_live_view_size_set(base_enventor_get(), h, w);
+
+   //Just in live edit mode case.
+   live_edit_update();
+}
+
+static void
+view_scale_btn_cb(void *data, Evas_Object *obj, void *event_info EINA_UNUSED)
 {
    stats_data *sd = data;
 
@@ -90,7 +109,8 @@ view_scale_btn_cb(void *data, Evas_Object *obj,
 }
 
 static Evas_Object *
-create_statusbar_btn(Evas_Object *layout, const char *tooltip_msg,
+create_statusbar_btn(Evas_Object *layout, const char *image,
+                     const char *part_name, const char *tooltip_msg,
                      Evas_Smart_Cb func, void *data)
 {
    Evas_Object *box = elm_box_add(layout);
@@ -103,14 +123,14 @@ create_statusbar_btn(Evas_Object *layout, const char 
*tooltip_msg,
    evas_object_show(btn);
 
    Evas_Object *img = elm_image_add(btn);
-   elm_image_file_set(img, EDJE_PATH, "expand");
+   elm_image_file_set(img, EDJE_PATH, image);
    elm_object_content_set(btn, img);
 
    elm_object_tooltip_text_set(box, tooltip_msg);
    elm_object_tooltip_orient_set(box, ELM_TOOLTIP_ORIENT_TOP_RIGHT);
 
    elm_box_pack_end(box, btn);
-   elm_object_part_content_set(layout, "scale_btn", box);
+   elm_object_part_content_set(layout, part_name, box);
 
    return btn;
 }
@@ -152,10 +172,15 @@ stats_init(Evas_Object *parent)
    Evas_Object *layout = elm_layout_add(parent);
    elm_layout_file_set(layout, EDJE_PATH, "statusbar_layout");
 
-   Evas_Object *btn;
-   btn = create_statusbar_btn(layout,
-                              "View Scale (Ctrl + Mouse Wheel)",
-                              view_scale_btn_cb, sd);
+   //View Scale button
+   create_statusbar_btn(layout, "expand", "scale_btn",
+                        "View Scale (Ctrl + Mouse Wheel)",
+                        view_scale_btn_cb, sd);
+
+   create_statusbar_btn(layout, "invert", "invert_btn",
+                        "Invert View Size",
+                        view_invert_btn_cb, sd);
+
    sd->layout = layout;
 
    stats_cursor_pos_update(0, 0, 0, 0);

-- 


Reply via email to