forked from enlightenment/efl
parent
2eee18b46f
commit
a6026e95cb
|
@ -55,4 +55,5 @@ src/bin/Makefile
|
|||
data/Makefile
|
||||
data/themes/Makefile
|
||||
data/images/Makefile
|
||||
data/objects/Makefile
|
||||
])
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
AUTOMAKE_OPTIONS = 1.4 foreign
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
SUBDIRS = themes images
|
||||
SUBDIRS = themes images objects
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
AUTOMAKE_OPTIONS = 1.4 foreign
|
||||
MAINTAINERCLEANFILES = Makefile.in
|
||||
|
||||
EDJE_CC = edje_cc
|
||||
EDJE_FLAGS = -v -id $(top_srcdir)/data -fd $(top_srcdir)/data
|
||||
|
||||
filesdir = $(datadir)/elementary/objects
|
||||
|
||||
files_DATA = test.edj
|
||||
|
||||
EXTRA_DIST = \
|
||||
test.edc over.png under.png
|
||||
|
||||
test.edj: Makefile $(EXTRA_DIST)
|
||||
$(EDJE_CC) $(EDJE_FLAGS) \
|
||||
$(top_srcdir)/data/objects/test.edc \
|
||||
$(top_builddir)/data/objects/test.edj
|
||||
|
||||
clean-local:
|
||||
rm -f *.edj
|
Binary file not shown.
After Width: | Height: | Size: 72 KiB |
|
@ -0,0 +1,61 @@
|
|||
collections {
|
||||
group { name: "layout";
|
||||
images {
|
||||
image: "over.png" COMP;
|
||||
image: "under.png" COMP;
|
||||
}
|
||||
parts {
|
||||
part { name: "under";
|
||||
description { state: "default" 0.0;
|
||||
align: 0.5 0.0;
|
||||
aspect: 1.486068111 1.486068111;
|
||||
aspect_preference: HORIZONTAL;
|
||||
image.normal: "under.png";
|
||||
}
|
||||
}
|
||||
part { name: "element1";
|
||||
type: SWALLOW;
|
||||
description { state: "default" 0.0;
|
||||
rel1 {
|
||||
relative: 0.2 0.2;
|
||||
}
|
||||
rel2 {
|
||||
relative: 0.4 0.3;
|
||||
}
|
||||
}
|
||||
}
|
||||
part { name: "element2";
|
||||
type: SWALLOW;
|
||||
description { state: "default" 0.0;
|
||||
rel1 {
|
||||
relative: 0.6 0.3;
|
||||
}
|
||||
rel2 {
|
||||
relative: 0.9 0.5;
|
||||
}
|
||||
}
|
||||
}
|
||||
part { name: "element3";
|
||||
type: SWALLOW;
|
||||
description { state: "default" 0.0;
|
||||
rel1 {
|
||||
relative: 0.1 0.7;
|
||||
}
|
||||
rel2 {
|
||||
relative: 0.9 0.9;
|
||||
}
|
||||
}
|
||||
}
|
||||
part { name: "over";
|
||||
description { state: "default" 0.0;
|
||||
align: 0.0 1.0;
|
||||
aspect: 2.238095238 2.238095238;
|
||||
max: 329 147;
|
||||
aspect_preference: HORIZONTAL;
|
||||
image.normal: "over.png";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 36 KiB |
|
@ -312,7 +312,6 @@ static void
|
|||
my_bt_8(void *data, Evas_Object *obj, void *event_info)
|
||||
{
|
||||
Evas_Object *win, *bg, *tb, *bt;
|
||||
char buf[PATH_MAX];
|
||||
|
||||
win = elm_win_add(NULL, "table", ELM_WIN_BASIC);
|
||||
elm_win_title_set(win, "Table");
|
||||
|
@ -377,7 +376,6 @@ static void
|
|||
my_bt_9(void *data, Evas_Object *obj, void *event_info)
|
||||
{
|
||||
Evas_Object *win, *bg, *bx, *ck;
|
||||
char buf[PATH_MAX];
|
||||
|
||||
win = elm_win_add(NULL, "clock", ELM_WIN_BASIC);
|
||||
elm_win_title_set(win, "Clock");
|
||||
|
@ -424,6 +422,46 @@ my_bt_9(void *data, Evas_Object *obj, void *event_info)
|
|||
evas_object_show(win);
|
||||
}
|
||||
|
||||
static void
|
||||
my_bt_10(void *data, Evas_Object *obj, void *event_info)
|
||||
{
|
||||
Evas_Object *win, *bg, *ly, *ck, *bt;
|
||||
char buf[PATH_MAX];
|
||||
|
||||
win = elm_win_add(NULL, "layout", ELM_WIN_BASIC);
|
||||
elm_win_title_set(win, "Layout");
|
||||
elm_win_autodel_set(win, 1);
|
||||
|
||||
bg = elm_bg_add(win);
|
||||
elm_win_resize_object_add(win, bg);
|
||||
evas_object_size_hint_weight_set(bg, 1.0, 1.0);
|
||||
evas_object_show(bg);
|
||||
|
||||
ly = elm_layout_add(win);
|
||||
snprintf(buf, sizeof(buf), "%s/objects/test.edj", PACKAGE_DATA_DIR);
|
||||
elm_layout_file_set(ly, buf, "layout");
|
||||
evas_object_size_hint_weight_set(ly, 1.0, 1.0);
|
||||
elm_win_resize_object_add(win, ly);
|
||||
evas_object_show(ly);
|
||||
|
||||
bt = elm_button_add(win);
|
||||
elm_button_label_set(bt, "Button 1");
|
||||
elm_layout_content_set(ly, "element1", bt);
|
||||
evas_object_show(bt);
|
||||
|
||||
bt = elm_button_add(win);
|
||||
elm_button_label_set(bt, "Button 2");
|
||||
elm_layout_content_set(ly, "element2", bt);
|
||||
evas_object_show(bt);
|
||||
|
||||
bt = elm_button_add(win);
|
||||
elm_button_label_set(bt, "Button 3");
|
||||
elm_layout_content_set(ly, "element3", bt);
|
||||
evas_object_show(bt);
|
||||
|
||||
evas_object_show(win);
|
||||
}
|
||||
|
||||
static void
|
||||
my_win_main(void)
|
||||
{
|
||||
|
@ -580,6 +618,13 @@ my_win_main(void)
|
|||
elm_box_pack_end(bx, bt);
|
||||
evas_object_show(bt);
|
||||
|
||||
bt = elm_button_add(win);
|
||||
elm_button_label_set(bt, "Layout");
|
||||
evas_object_smart_callback_add(bt, "clicked", my_bt_10, NULL);
|
||||
evas_object_size_hint_align_set(bt, -1.0, 0.0);
|
||||
elm_box_pack_end(bx, bt);
|
||||
evas_object_show(bt);
|
||||
|
||||
/* set an initial window size */
|
||||
evas_object_resize(win, 320, 320);
|
||||
/* show the window */
|
||||
|
|
|
@ -164,10 +164,18 @@ extern "C" {
|
|||
* "changed" - the user changed the time
|
||||
*/
|
||||
|
||||
EAPI Evas_Object *elm_layout_add(Evas_Object *parent);
|
||||
EAPI void elm_layout_file_set(Evas_Object *obj, const char *file, const char *group);
|
||||
EAPI void elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *content);
|
||||
EAPI Evas_Object *elm_layout_edje_get(Evas_Object *obj);
|
||||
/* smart callbacks elm_win objects will call:
|
||||
*/
|
||||
|
||||
// FIXME: fixes to do
|
||||
// * current sizing inefficient
|
||||
// * scroller could do with page up/down/left/right buttons and and idea of
|
||||
// a page size
|
||||
// * tab widget focusing (not useful for touchscreen tho...)
|
||||
//
|
||||
// FIXME: immediate hitlist for widgets:
|
||||
// HOVER: select a widget (any) and attach a hover to it - the over will hover
|
||||
|
|
|
@ -111,7 +111,7 @@ EAPI void
|
|||
elm_layout_file_set(Evas_Object *obj, const char *file, const char *group)
|
||||
{
|
||||
Widget_Data *wd = elm_widget_data_get(obj);
|
||||
_elm_theme_set(wd->lay, file, group);
|
||||
edje_object_file_set(wd->lay, file, group);
|
||||
_sizing_eval(obj);
|
||||
}
|
||||
|
||||
|
@ -145,3 +145,10 @@ elm_layout_content_set(Evas_Object *obj, const char *swallow, Evas_Object *conte
|
|||
_sizing_eval(obj);
|
||||
}
|
||||
}
|
||||
|
||||
EAPI Evas_Object *
|
||||
elm_layout_edje_get(Evas_Object *obj)
|
||||
{
|
||||
Widget_Data *wd = elm_widget_data_get(obj);
|
||||
return wd->lay;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue