add a function to invert view size.

This commit is contained in:
Hermet Park 2016-02-05 17:42:26 +09:00
parent 10c40a182c
commit 75345770ce
7 changed files with 57 additions and 16 deletions

View File

@ -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")

View File

@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 B

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 B

View File

@ -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;
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;
description { state: "default" 0.0;
rel1.to_x: "size_spacer";
rel1.relative: 0.0 0.0;
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;

View File

@ -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);

View File

@ -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);