Enlightenment CVS committal
Author : raster
Project : e17
Module : libs/ecore
Dir : e17/libs/ecore/src/bin
Modified Files:
Tag: SPLIT
ecore_test.c
Log Message:
clean up test proggy and evas module headers.. still working on it.
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/ecore/src/bin/Attic/ecore_test.c,v
retrieving revision 1.1.2.15
retrieving revision 1.1.2.16
diff -u -3 -r1.1.2.15 -r1.1.2.16
--- ecore_test.c 8 Feb 2003 01:30:56 -0000 1.1.2.15
+++ ecore_test.c 8 Feb 2003 02:15:21 -0000 1.1.2.16
@@ -5,12 +5,24 @@
#include <math.h>
+/* APP GLOBALS */
double start_time = 0;
-Window win = 0;
-Ecore_Evas *ee = NULL;
-Evas *evas = NULL;
-Evas_Object *objects[64];
+int
+handler_signal_exit(int ev_type, void *ev, void *data)
+{
+ Ecore_Event_Signal_Exit *e;
+
+ e = ev;
+ if (e->interrupt) printf("exit: interrupt\n");
+ if (e->quit) printf("exit: quit\n");
+ if (e->terminate) printf("exit: terminate\n");
+ ecore_main_loop_quit();
+ return 1;
+}
+
+/**** ECORE TEST CODE */
+/* NB: also tests ECORE_JOB */
void
job_call(void *data)
{
@@ -20,7 +32,7 @@
int
idle_enterer(void *data)
{
-// printf("-> Entering idle %3.3f\n", ecore_time_get() - start_time);
+ printf("-> Entering idle %3.3f\n", ecore_time_get() - start_time);
return 1;
}
@@ -35,47 +47,24 @@
timer(void *data)
{
printf("Q- Timer tick %3.8f\n", ecore_time_get() - start_time);
+ /* test ecore_job */
+ ecore_job_add(job_call, "1");
+ ecore_job_add(job_call, "2");
+ ecore_job_add(job_call, "3");
return 1;
}
-int
-obj_timer(void *data)
+void
+setup_ecore_test(void)
{
- Evas_Object *o;
- double x, y;
- double w, h;
- double ow, oh;
- double t;
- int m, n;
- int i;
-
- t = ecore_time_get();
- for (i = 0; i < (sizeof(objects) / sizeof(Evas_Object *)); i++)
- {
- o = objects[i];
- evas_output_viewport_get(evas_object_evas_get(o), NULL, NULL, &w, &h);
- evas_object_geometry_get(o, NULL, NULL, &ow, &oh);
- m = ((int)o / 36) & 0x3f;
- n = ((int)o / 763) & 0x3f;
- x = sin(t * (double)m / 12) * ((w - ow) / 2);
- y = sin(t * (double)n / 12) * ((h - oh) / 2);
- evas_object_move(o, (w / 2) - (ow / 2) + x, (h / 2) - (oh / 2) + y);
- }
- return 1;
+ ecore_idle_enterer_add(idle_enterer, NULL);
+ ecore_idler_add(idler, NULL);
+ ecore_timer_add(1.0, timer, NULL);
}
-int
-handler_signal_exit(int ev_type, void *ev, void *data)
-{
- Ecore_Event_Signal_Exit *e;
-
- e = ev;
- if (e->interrupt) printf("exit: interrupt\n");
- if (e->quit) printf("exit: quit\n");
- if (e->terminate) printf("exit: terminate\n");
- ecore_main_loop_quit();
- return 1;
-}
+/**** ECORE_X TEST CODE */
+
+Window win = 0;
int
handler_x_key_down(int type, void *event, void *data)
@@ -104,9 +93,6 @@
e = event;
printf("Mouse down %i [%i][%i]\n", e->button, e->double_click, e->triple_click);
- ecore_job_add(job_call, "1");
- ecore_job_add(job_call, "2");
- ecore_job_add(job_call, "3");
return 1;
}
@@ -238,28 +224,16 @@
return 1;
}
-int
-main(int argc, const char **argv)
+void
+setup_ecore_x_test(void)
{
- start_time = ecore_time_get();
-
- ecore_init();
- ecore_app_args_set(argc, argv);
-
- if (!ecore_x_init(NULL)) return -1;
- if (!ecore_evas_init()) return -1;
-
win = ecore_x_window_new(0, 0, 0, 120, 60);
ecore_x_window_prop_title_set(win, "Ecore Test Program");
ecore_x_window_prop_name_class_set(win, "ecore_test", "main");
ecore_x_window_prop_delete_request_set(win, 1);
ecore_x_window_show(win);
+ ecore_x_flush();
- ecore_idle_enterer_add(idle_enterer, NULL);
-// ecore_idler_add(idler, NULL);
- ecore_timer_add(1.0, timer, NULL);
-
- ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, handler_signal_exit, NULL);
ecore_event_handler_add(ECORE_X_EVENT_KEY_DOWN, handler_x_key_down, NULL);
ecore_event_handler_add(ECORE_X_EVENT_KEY_UP, handler_x_key_up, NULL);
ecore_event_handler_add(ECORE_X_EVENT_MOUSE_BUTTON_DOWN,
handler_x_mouse_button_down, NULL);
@@ -275,46 +249,132 @@
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_DELETE_REQUEST,
handler_x_window_delete_request, NULL);
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_PROP_TITLE_CHANGE,
handler_x_window_prop_title_change, NULL);
ecore_event_handler_add(ECORE_X_EVENT_WINDOW_PROP_NAME_CLASS_CHANGE,
handler_x_window_prop_name_class_change, NULL);
+}
+
+/**** ECORE_EVAS TEST CODE */
+
+Ecore_Evas *ee = NULL;
+Evas *evas = NULL;
+Evas_Object *objects[64];
+
+int
+obj_timer(void *data)
+{
+ Evas_Object *o;
+ double x, y;
+ double w, h;
+ double ow, oh;
+ double t;
+ int m, n;
+ int i;
+
+ t = ecore_time_get() - start_time;
+ for (i = 0; i < (sizeof(objects) / sizeof(Evas_Object *)); i++)
+ {
+ o = objects[i];
+ evas_output_viewport_get(evas_object_evas_get(o), NULL, NULL, &w, &h);
+ evas_object_geometry_get(o, NULL, NULL, &ow, &oh);
+ m = ((int)o / 36) & 0x3f;
+ n = ((int)o / 763) & 0x3f;
+ x = sin(t * (double)m / 12) * ((w - ow) / 2);
+ y = sin(t * (double)n / 12) * ((h - oh) / 2);
+ evas_object_move(o, (w / 2) - (ow / 2) + x, (h / 2) - (oh / 2) + y);
+ }
+ return 1;
+}
+void
+setup_ecore_evas_test(void)
+{
+ Evas_Object *o;
+ int i;
+
+ /* create a new ecore wrapped evas canvas in X */
ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 240, 320);
ecore_evas_title_set(ee, "Ecore Evas Test");
ecore_evas_name_class_set(ee, "ecore_test", "test_evas");
+ /* get the actual evas ecore created for us */
evas = ecore_evas_get(ee);
- {
- Evas_Object *o;
- int i;
+
+ /* image cache set (in bytes) */
+ evas_image_cache_set(evas, 0 * 1024);
+ /* font cache set (in bytes) */
+ evas_font_cache_set(evas, 0 * 1024);
+ /* add a directory to look in for fonts */
+ evas_font_path_append(evas, "./");
+
+ /* set up a big white rectangle on the bg */
+ o = evas_object_rectangle_add(evas);
+ evas_object_color_set(o, 255, 255, 255, 255);
+ evas_object_move(o, 0, 0);
+ evas_object_resize(o, 100000, 100000);
+ evas_object_layer_set(o, -1000000);
+ evas_object_show(o);
+ /* make a bunch of rectangles */
+ for (i = 0; i < (sizeof(objects) / sizeof(Evas_Object *)); i++)
+ {
o = evas_object_rectangle_add(evas);
- evas_object_color_set(o, 255, 255, 255, 255);
- evas_object_move(o, 0, 0);
- evas_object_resize(o, 100000, 100000);
- evas_object_layer_set(o, -1000000);
+ evas_object_move(o, 10, 10);
+ evas_object_pass_events_set(o, 1);
+ evas_object_color_set(o,
+ ((int)o) & 0xff,
+ ((int)o / 30) & 0xff,
+ ((int)o / 65) & 0xff,
+ ((int)o / 156) & 0xff);
+ evas_object_resize(o, 4 + (((int)o) % 100), 4 + (((int)o / 50) % 100));
evas_object_show(o);
-
- for (i = 0; i < (sizeof(objects) / sizeof(Evas_Object *)); i++)
- {
- o = evas_object_rectangle_add(evas);
- evas_object_move(o, 10, 10);
- evas_object_pass_events_set(o, 1);
- evas_object_color_set(o,
- ((int)o) & 0xff,
- ((int)o / 30) & 0xff,
- ((int)o / 65) & 0xff,
- ((int)o / 156) & 0xff);
- evas_object_resize(o, 4 + (((int)o) % 100), 4 + (((int)o / 50) % 100));
- evas_object_show(o);
- objects[i] = o;
- }
- ecore_timer_add(0.01, obj_timer, NULL);
+ objects[i] = o;
}
+ /* add a timer to animate them */
+ ecore_timer_add(0.01, obj_timer, NULL);
+
ecore_evas_show(ee);
+}
+
+/**** MAIN */
+int
+main(int argc, const char **argv)
+{
+ /* get the time the program started at */
+ start_time = ecore_time_get();
+
+ /* init ecore */
+ ecore_init();
+ /* tell ecore what our arguments are */
+ ecore_app_args_set(argc, argv);
+
+ /* init ecore_x */
+ if (!ecore_x_init(NULL)) return -1;
+ /* init ecore_evas */
+ if (!ecore_evas_init()) return -1;
+
+ /* setup a callback to handle a systsme signal to quit */
+ ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, handler_signal_exit, NULL);
- ecore_x_flush();
+#if 0
+ /* setup to test ecore module basics */
+ setup_ecore_test();
+#endif
+
+#if 0
+ /* setup to test ecore_x module things */
+ setup_ecore_x_test();
+#endif
+
+#if 1
+ /* setup to test ecore_evas module */
+ setup_ecore_evas_test();
+#endif
+ /* run the main loop */
ecore_main_loop_begin();
-
+
+ /* shut down ecore_evas */
ecore_evas_shutdown();
+ /* shut down ecore_x */
ecore_x_shutdown();
+ /* shut down ecore */
ecore_shutdown();
return 0;
}
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs