From 062cfdcc1b213d5cecd907a367dee51046e2eb7b Mon Sep 17 00:00:00 2001 From: David Walter Seikel Date: Sun, 11 May 2014 05:40:27 +1000 Subject: Add a rectangle to pad out those that don't use the winFang box, and have them make their widdgets relative to that. --- src/libraries/winFang.c | 18 ++++++++++++++++++ src/libraries/winFang.h | 2 ++ 2 files changed, 20 insertions(+) (limited to 'src/libraries') diff --git a/src/libraries/winFang.c b/src/libraries/winFang.c index bcf99ce..5f5b575 100644 --- a/src/libraries/winFang.c +++ b/src/libraries/winFang.c @@ -262,6 +262,14 @@ winFang *winFangAdd(winFang *parent, int x, int y, int w, int h, char *title, ch ); elm_box_pack_end(result->box, obj1); eo_unref(obj1); + + result->content = eo_add(EVAS_OBJ_RECTANGLE_CLASS, result->win, + evas_obj_size_hint_align_set(EVAS_HINT_FILL, EVAS_HINT_FILL), + evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, EVAS_HINT_EXPAND), + evas_obj_color_set(0, 0, 0, 0), + evas_obj_visibility_set(EINA_TRUE) + ); + elm_box_pack_end(result->box, result->content); } evas_object_resize(result->win, result->w, result->h); @@ -277,6 +285,7 @@ void winFangDel(winFang *win) if (!win) return; + eo_unref(win->content); eo_unref(win->box); eo_unref(win->bg); EINA_CLIST_FOR_EACH_ENTRY(wf, &win->winFangs, winFang, node) @@ -294,6 +303,15 @@ void winFangDel(winFang *win) evas_object_del(win->win); } +void useBox(winFang *win) +{ + eo_do(win->content, + evas_obj_visibility_set(EINA_FALSE), + evas_obj_size_hint_weight_set(EVAS_HINT_EXPAND, 0.0), + evas_obj_size_set(0, 0) + ); +} + Widget *widgetAdd(winFang *win, const Eo_Class *klass, Evas_Object *parent, char *title) { Widget *result; diff --git a/src/libraries/winFang.h b/src/libraries/winFang.h index f3b4e45..17cf942 100644 --- a/src/libraries/winFang.h +++ b/src/libraries/winFang.h @@ -24,6 +24,7 @@ typedef struct _winFang Evas_Object *title; Evas_Object *bg; Evas_Object *box; + Evas_Object *content; EPhysics_Body *body; Eina_Clist widgets; Eina_Clist winFangs; @@ -58,6 +59,7 @@ void winFangHide(winFang *win); void winFangShow(winFang *win); void winFangDel(winFang *win); +void useBox(winFang *win); Widget *widgetAdd(winFang *win, const Eo_Class *klass, Evas_Object *parent, char *title); #endif -- cgit v1.1