seoz pushed a commit to branch master.

commit 7affed9e268a51f50d007ab50b358d94b9720a62
Author: Daniel Juyung Seo <[email protected]>
Date:   Wed Jun 19 01:55:46 2013 +0900

    naviframe_example.c: added very simple naviframe example.
---
 src/examples/.gitignore          |  1 +
 src/examples/Makefile.am         |  2 ++
 src/examples/naviframe_example.c | 48 ++++++++++++++++++++++++++++++++++++++++
 src/lib/elc_naviframe.h          |  3 +++
 4 files changed, 54 insertions(+)

diff --git a/src/examples/.gitignore b/src/examples/.gitignore
index 86d0dd0..2789245 100644
--- a/src/examples/.gitignore
+++ b/src/examples/.gitignore
@@ -60,6 +60,7 @@
 /map_example_03
 /mapbuf_example
 /menu_example_01
+/naviframe_example
 /notify_example_01
 /panel_example_01
 /panes_example
diff --git a/src/examples/Makefile.am b/src/examples/Makefile.am
index 432a57a..07b29de 100644
--- a/src/examples/Makefile.am
+++ b/src/examples/Makefile.am
@@ -114,6 +114,7 @@ map_example_02.c \
 map_example_03.c \
 mapbuf_example.c \
 menu_example_01.c \
+naviframe_example.c \
 notify_example_01.c \
 panes_example.c \
 panel_example_01.c \
@@ -252,6 +253,7 @@ map_example_02 \
 map_example_03 \
 mapbuf_example \
 menu_example_01 \
+naviframe_example \
 notify_example_01 \
 panes_example \
 panel_example_01 \
diff --git a/src/examples/naviframe_example.c b/src/examples/naviframe_example.c
new file mode 100644
index 0000000..081fce1
--- /dev/null
+++ b/src/examples/naviframe_example.c
@@ -0,0 +1,48 @@
+//Compile with:
+//gcc -g naviframe_example.c -o naviframe_example `pkg-config --cflags --libs 
elementary`
+
+#include <Elementary.h>
+
+void
+_btn_cb(void *data, Evas_Object *obj, void *event_info)
+{
+   Evas_Object *nf = data, *btn;
+   if (!nf) return;
+
+   btn = elm_button_add(nf);
+   elm_object_text_set(btn, "Go to Second Page.");
+   evas_object_smart_callback_add(btn, "clicked", _btn_cb, nf);
+
+   elm_naviframe_item_push(nf, "Next Page", NULL, NULL, btn, NULL);
+}
+
+EAPI_MAIN int
+elm_main(int argc, char **argv)
+{
+   Evas_Object *win, *nf, *btn;
+
+   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
+
+   win = elm_win_util_standard_add("naviframe", "Naviframe");
+   elm_win_autodel_set(win, EINA_TRUE);
+   evas_object_resize(win, 400, 400);
+   evas_object_show(win);
+
+   nf = elm_naviframe_add(win);
+   evas_object_size_hint_weight_set(nf, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, nf);
+   evas_object_show(nf);
+
+   btn = elm_button_add(nf);
+   elm_object_text_set(btn, "Go to Second Page.");
+   evas_object_smart_callback_add(btn, "clicked", _btn_cb, nf);
+
+   elm_naviframe_item_push(nf, "First Page", NULL, NULL, btn, NULL);
+
+   elm_run();
+
+   elm_shutdown();
+
+   return 0;
+}
+ELM_MAIN()
diff --git a/src/lib/elc_naviframe.h b/src/lib/elc_naviframe.h
index 52171ec..4a03cd2 100644
--- a/src/lib/elc_naviframe.h
+++ b/src/lib/elc_naviframe.h
@@ -73,6 +73,9 @@
  * What happens is that the topmost item of a naviframe will be the
  * widget's target layout, when accessed directly. Items lying below
  * the top one can be interacted with this way.
+ *
+ * Here is an example on its usage:
+ * @li @ref naviframe_example
  */
 
 /**

-- 

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev

Reply via email to