svn update: 60246 (latest:60246)
authorJaehwan Kim <jae.hwan.kim@samsung.com>
Thu, 23 Jun 2011 10:35:54 +0000 (19:35 +0900)
committerJaehwan Kim <jae.hwan.kim@samsung.com>
Thu, 23 Jun 2011 10:35:54 +0000 (19:35 +0900)
65 files changed:
configure.ac
data/Makefile.am
data/e-logo-2.png [new file with mode: 0644]
data/e-logo-mask.png [new file with mode: 0644]
data/texture.png [new file with mode: 0644]
expedite.rebase.complete [deleted file]
m4/ac_attribute.m4 [new file with mode: 0644]
src/bin/Makefile.am
src/bin/about.c
src/bin/engine_software_gdi.c
src/bin/filter_object_blur.c [new file with mode: 0644]
src/bin/filter_object_blur_solid.c [new file with mode: 0644]
src/bin/filter_object_brightness.c [new file with mode: 0644]
src/bin/filter_object_brightness_solid.c [new file with mode: 0644]
src/bin/filter_object_colors.c [new file with mode: 0644]
src/bin/filter_object_colors_solid.c [new file with mode: 0644]
src/bin/filter_object_greyscale.c [new file with mode: 0644]
src/bin/filter_object_greyscale_solid.c [new file with mode: 0644]
src/bin/filter_object_invert.c [new file with mode: 0644]
src/bin/filter_object_invert_solid.c [new file with mode: 0644]
src/bin/filter_object_sepia.c [new file with mode: 0644]
src/bin/filter_object_sepia_solid.c [new file with mode: 0644]
src/bin/image_data_argb.c
src/bin/image_data_argb_alpha.c
src/bin/image_data_ycbcr601pl.c
src/bin/image_data_ycbcr601pl_map_nearest_solid_rotate.c
src/bin/image_data_ycbcr601pl_map_solid_rotate.c
src/bin/image_data_ycbcr601pl_wide_stride.c
src/bin/image_mask.c [new file with mode: 0644]
src/bin/image_mask_10.c [new file with mode: 0644]
src/bin/image_mask_11.c [new file with mode: 0644]
src/bin/image_mask_12.c [new file with mode: 0644]
src/bin/image_mask_13.c [new file with mode: 0644]
src/bin/image_mask_14.c [new file with mode: 0644]
src/bin/image_mask_15.c [new file with mode: 0644]
src/bin/image_mask_2.c [new file with mode: 0644]
src/bin/image_mask_3.c [new file with mode: 0644]
src/bin/image_mask_4.c [new file with mode: 0644]
src/bin/image_mask_5.c [new file with mode: 0644]
src/bin/image_mask_6.c [new file with mode: 0644]
src/bin/image_mask_7.c [new file with mode: 0644]
src/bin/image_mask_8.c [new file with mode: 0644]
src/bin/image_mask_9.c [new file with mode: 0644]
src/bin/main.c
src/bin/main.h
src/bin/proxy_image_offscreen.c [new file with mode: 0644]
src/bin/tests.h
src/bin/textblock_auto_align.c
src/bin/textblock_intl.c
src/bin/ui.c
src/bin/widgets_file_icons.c
src/bin/widgets_file_icons_2.c
src/bin/widgets_file_icons_2_grouped.c
src/bin/widgets_file_icons_2_same.c
src/bin/widgets_file_icons_2_same_grouped.c
src/bin/widgets_file_icons_3.c
src/bin/widgets_file_icons_4.c
src/bin/widgets_list_1.c
src/bin/widgets_list_1_grouped.c
src/bin/widgets_list_2.c
src/bin/widgets_list_2_grouped.c
src/bin/widgets_list_3.c
src/bin/widgets_list_3_grouped.c
src/bin/widgets_list_4.c
src/bin/widgets_list_4_grouped.c

index 4ed57ea..e5dc838 100644 (file)
@@ -67,10 +67,6 @@ AC_SUBST(ddraw_libs)
 EXPEDITE_CHECK_ENGINE([direct3d], [Direct3D], "yes", [d3d_libs="-ld3d9 -ld3dx9d -lgdi32"])
 AC_SUBST(d3d_libs)
 
-# OpenGL GLEW
-EXPEDITE_CHECK_ENGINE([opengl-glew], [OpenGL Glew], "yes", [glew_libs="-lglew32 -lgdi32"])
-AC_SUBST(glew_libs)
-
 # Software SDL
 EXPEDITE_CHECK_ENGINE([software-sdl], [Software SDL], "yes")
 
@@ -83,10 +79,6 @@ EXPEDITE_CHECK_ENGINE([fb], [Framebuffer], "yes")
 # DIRECTFB
 EXPEDITE_CHECK_ENGINE([directfb], [DirectFB], "yes")
 
-# Quartz
-EXPEDITE_CHECK_ENGINE([quartz], [Quartz], "yes", [quartz_libs="-framework Cocoa -framework ApplicationServices"])
-AC_SUBST(quartz_libs)
-
 # Software 16bit X11
 EXPEDITE_CHECK_ENGINE([software-16-x11], [Software 16 bits X11], "yes")
 
@@ -197,6 +189,7 @@ AM_PROG_CC_STDC
 AC_HEADER_STDC
 AC_C_CONST
 AM_PROG_CC_C_O
+AC_C___ATTRIBUTE__
 
 WIN32_CFLAGS=""
 case "$host_os" in
@@ -256,12 +249,10 @@ echo "    X Render XCB.................: ${have_xrender_xcb}"
 echo "    Software GDI.................: ${have_software_gdi}"
 echo "    Software DirectDraw..........: ${have_software_ddraw}"
 echo "    Direct3D.....................: ${have_direct3d}"
-echo "    Open GL Glew.................: ${have_opengl_glew}"
 echo "    Software SDL.................: ${have_software_sdl}"
 echo "    Open GL SDL..................: ${have_opengl_sdl}"
 echo "    FB...........................: ${have_fb}"
 echo "    DirectFB.....................: ${have_directfb}"
-echo "    Quartz.......................: ${have_quartz}"
 echo "    Software X11 16 bits.........: ${have_software_16_x11}"
 echo "    Software DirectDraw 16 bits..: ${have_software_16_ddraw}"
 echo "    Software WinCE 16 bits.......: ${have_software_16_wince}"
index c84b062..939fc95 100644 (file)
@@ -52,7 +52,9 @@ blend.png \
 map.png \
 3d.png \
 data.png \
-widgets.png
-
+widgets.png \
+e-logo-2.png \
+e-logo-mask.png \
+texture.png
 
 EXTRA_DIST = $(files_DATA)
diff --git a/data/e-logo-2.png b/data/e-logo-2.png
new file mode 100644 (file)
index 0000000..0992bfb
Binary files /dev/null and b/data/e-logo-2.png differ
diff --git a/data/e-logo-mask.png b/data/e-logo-mask.png
new file mode 100644 (file)
index 0000000..b71600c
Binary files /dev/null and b/data/e-logo-mask.png differ
diff --git a/data/texture.png b/data/texture.png
new file mode 100644 (file)
index 0000000..630726a
Binary files /dev/null and b/data/texture.png differ
diff --git a/expedite.rebase.complete b/expedite.rebase.complete
deleted file mode 100644 (file)
index 9183ce4..0000000
+++ /dev/null
@@ -1 +0,0 @@
-[expedite] Rebase is completed.
diff --git a/m4/ac_attribute.m4 b/m4/ac_attribute.m4
new file mode 100644 (file)
index 0000000..23479a9
--- /dev/null
@@ -0,0 +1,47 @@
+dnl Copyright (C) 2004-2008 Kim Woelders
+dnl Copyright (C) 2008 Vincent Torri <vtorri at univ-evry dot fr>
+dnl That code is public domain and can be freely used or copied.
+dnl Originally snatched from somewhere...
+
+dnl Macro for checking if the compiler supports __attribute__
+
+dnl Usage: AC_C___ATTRIBUTE__
+dnl call AC_DEFINE for HAVE___ATTRIBUTE__ and __UNUSED__
+dnl if the compiler supports __attribute__, HAVE___ATTRIBUTE__ is
+dnl defined to 1 and __UNUSED__ is defined to __attribute__((unused))
+dnl otherwise, HAVE___ATTRIBUTE__ is not defined and __UNUSED__ is
+dnl defined to nothing.
+
+AC_DEFUN([AC_C___ATTRIBUTE__],
+[
+
+AC_MSG_CHECKING([for __attribute__])
+
+AC_CACHE_VAL([ac_cv___attribute__],
+   [AC_TRY_COMPILE(
+       [
+#include <stdlib.h>
+
+int func(int x);
+int foo(int x __attribute__ ((unused)))
+{
+   exit(1);
+}
+       ],
+       [],
+       [ac_cv___attribute__="yes"],
+       [ac_cv___attribute__="no"]
+    )])
+
+AC_MSG_RESULT($ac_cv___attribute__)
+
+if test "x${ac_cv___attribute__}" = "xyes" ; then
+   AC_DEFINE([HAVE___ATTRIBUTE__], [1], [Define to 1 if your compiler has __attribute__])
+   AC_DEFINE([__UNUSED__], [__attribute__((unused))], [Macro declaring a function argument to be unused])
+  else
+    AC_DEFINE([__UNUSED__], [], [Macro declaring a function argument to be unused])
+fi
+
+])
+
+dnl End of ac_attribute.m4
index bad365c..20793b2 100644 (file)
@@ -114,9 +114,37 @@ proxy_image.c \
 proxy_text_fixed.c \
 proxy_text_random.c
 
+#image_mask.c \
+#image_mask_2.c \
+#image_mask_3.c \
+#image_mask_4.c \
+#image_mask_5.c \
+#image_mask_6.c \
+#image_mask_7.c \
+#image_mask_8.c \
+#image_mask_9.c \
+#image_mask_10.c \
+#image_mask_11.c \
+#image_mask_12.c \
+#image_mask_13.c \
+#image_mask_14.c \
+#image_mask_15.c \
+#filter_object_colors.c \
+#filter_object_colors_solid.c \
+#filter_object_sepia.c \
+#filter_object_sepia_solid.c \
+#filter_object_greyscale.c \
+#filter_object_greyscale_solid.c \
+#filter_object_invert.c \
+#filter_object_invert_solid.c \
+#filter_object_brightness.c \
+#filter_object_brightness_solid.c \
+#filter_object_blur.c \
+#filter_object_blur_solid.c
+
 expedite_CFLAGS = @WIN32_CFLAGS@
 expedite_CXXFLAGS = @EXPEDITE_CXXFLAGS@
-expedite_LDADD = @SDL_LIBS@ @x_libs@ @gdi_libs@ @ddraw_libs@ @ddraw_16_libs@ @d3d_libs@ @wince_16_libs@ @glew_libs@ @DIRECTFB_LIBS@ @XCB_LIBS@ @EVAS_LIBS@ @EINA_LIBS@ @EVIL_LIBS@ @quartz_libs@ -lm
+expedite_LDADD = @SDL_LIBS@ @x_libs@ @gdi_libs@ @ddraw_libs@ @ddraw_16_libs@ @d3d_libs@ @wince_16_libs@ @DIRECTFB_LIBS@ @XCB_LIBS@ @EVAS_LIBS@ @EINA_LIBS@ @EVIL_LIBS@ -lm
 expedite_LDFLAGS = @lt_enable_auto_import@
 
 if BUILD_SOFTWARE_XLIB
@@ -159,11 +187,6 @@ expedite_SOURCES += \
 engine_direct3d.cpp engine_direct3d.h
 endif
 
-if BUILD_OPENGL_GLEW
-expedite_SOURCES += \
-engine_gl_glew.c engine_gl_glew.h
-endif
-
 if BUILD_SOFTWARE_SDL
 expedite_SOURCES += \
 engine_software_sdl.c engine_software_sdl.h
@@ -184,11 +207,6 @@ expedite_SOURCES += \
 engine_directfb.c engine_directfb.h
 endif
 
-if BUILD_QUARTZ
-expedite_SOURCES += \
-engine_quartz.m engine_quartz.h
-endif
-
 if BUILD_SOFTWARE_16_X11
 expedite_SOURCES += \
 engine_software_16_x11.c engine_software_16_x11.h
index deb6bbe..f36fdbc 100644 (file)
@@ -56,7 +56,7 @@ _cleanup(void)
 }
 
 static void
-_loop(double t, int f)
+_loop(double t __UNUSED__, int f __UNUSED__)
 {
 }
 
index 6832986..ecb2754 100644 (file)
@@ -172,7 +172,7 @@ MainWndProc(HWND   hwnd,
 }
 
 Eina_Bool
-engine_software_gdi_args(const char *engine, int width, int height)
+engine_software_gdi_args(const char *engine __UNUSED__, int width, int height)
 {
    WNDCLASS                       wc;
    RECT                           rect;
@@ -181,7 +181,6 @@ engine_software_gdi_args(const char *engine, int width, int height)
    DWORD                          style;
    DWORD                          exstyle;
    int                            depth;
-   int                            i;
 
    instance = GetModuleHandle(NULL);
    if (!instance) return EINA_FALSE;
diff --git a/src/bin/filter_object_blur.c b/src/bin/filter_object_blur.c
new file mode 100644 (file)
index 0000000..a7bac9b
--- /dev/null
@@ -0,0 +1,107 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_blur
+#define NAME "Filter Object Blur"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_BLUR);
+       evas_object_filter_param_int_set(o, "radius", 3);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_blur_solid.c b/src/bin/filter_object_blur_solid.c
new file mode 100644 (file)
index 0000000..b61fd2c
--- /dev/null
@@ -0,0 +1,108 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_blur_solid
+#define NAME "Filter Object Blur Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_BLUR);
+       evas_object_filter_param_int_set(o, "radius", 5);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_brightness.c b/src/bin/filter_object_brightness.c
new file mode 100644 (file)
index 0000000..a1d5ef6
--- /dev/null
@@ -0,0 +1,109 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_brightness
+#define NAME "Filter Object Brightness"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_BRIGHTNESS);
+       evas_object_filter_param_float_set(o, "adjust", i / (double)OBNUM);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+       evas_object_filter_param_float_set(o_images[i], "adjust",
+                       ((i + f) % OBNUM) / (2.0 * OBNUM) - 1);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_brightness_solid.c b/src/bin/filter_object_brightness_solid.c
new file mode 100644 (file)
index 0000000..849482e
--- /dev/null
@@ -0,0 +1,111 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_brightness_solid
+#define NAME "Filter Object Brightness Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_BRIGHTNESS);
+       evas_object_filter_param_float_set(o, "adjust",
+                       i / (2.0 * OBNUM) - 1.0);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+       evas_object_filter_param_float_set(o_images[i], "adjust",
+                       (((i + f) % OBNUM) * 2.0) / (OBNUM) - 1.0);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_colors.c b/src/bin/filter_object_colors.c
new file mode 100644 (file)
index 0000000..2b66799
--- /dev/null
@@ -0,0 +1,111 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_colors
+#define NAME "Filter Object Colors"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+   Evas_Filter filters[3] = {
+          EVAS_FILTER_GREYSCALE,
+          EVAS_FILTER_INVERT,
+          EVAS_FILTER_SEPIA
+   };
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, filters[i % 3]);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_colors_solid.c b/src/bin/filter_object_colors_solid.c
new file mode 100644 (file)
index 0000000..534ab81
--- /dev/null
@@ -0,0 +1,112 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_colors_solid
+#define NAME "Filter Object Colors Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+   Evas_Filter filters[3] = {
+          EVAS_FILTER_GREYSCALE,
+          EVAS_FILTER_INVERT,
+          EVAS_FILTER_SEPIA
+   };
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, filters[i % 3]);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_greyscale.c b/src/bin/filter_object_greyscale.c
new file mode 100644 (file)
index 0000000..0d41ddd
--- /dev/null
@@ -0,0 +1,106 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_greyscale
+#define NAME "Filter Object Greyscale"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_GREYSCALE);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_greyscale_solid.c b/src/bin/filter_object_greyscale_solid.c
new file mode 100644 (file)
index 0000000..98373f5
--- /dev/null
@@ -0,0 +1,107 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_greyscale_solid
+#define NAME "Filter Object Greyscale Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_GREYSCALE);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_invert.c b/src/bin/filter_object_invert.c
new file mode 100644 (file)
index 0000000..506dd59
--- /dev/null
@@ -0,0 +1,106 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_invert
+#define NAME "Filter Object Invert"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_INVERT);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_invert_solid.c b/src/bin/filter_object_invert_solid.c
new file mode 100644 (file)
index 0000000..03e4eaa
--- /dev/null
@@ -0,0 +1,107 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_invert_solid
+#define NAME "Filter Object Invert Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_INVERT);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_sepia.c b/src/bin/filter_object_sepia.c
new file mode 100644 (file)
index 0000000..e9db58a
--- /dev/null
@@ -0,0 +1,106 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_sepia
+#define NAME "Filter Object Sepia"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_SEPIA);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
diff --git a/src/bin/filter_object_sepia_solid.c b/src/bin/filter_object_sepia_solid.c
new file mode 100644 (file)
index 0000000..3f092cf
--- /dev/null
@@ -0,0 +1,107 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME filter_object_sepia_solid
+#define NAME "Filter Object Sepia Solid"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_filter_set(o, EVAS_FILTER_SEPIA);
+       evas_object_layer_set(o,1);
+       evas_object_show(o);
+       src = o;
+       o_images[i] = src;
+     }
+
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
index c063766..90f6779 100644 (file)
@@ -52,7 +52,7 @@ static void _loop(double t, int f)
    for (i = 0; i < 1; i++)
      {
        unsigned int *data, *p;
-       int ff;
+
         w = 640;
        h = 480;
        x = (win_w / 2) - (w / 2);
@@ -63,7 +63,6 @@ static void _loop(double t, int f)
        data = evas_object_image_data_get(o_images[i], 1);
         st = evas_object_image_stride_get(o_images[i]) >> 2;
        p = data;
-       ff = (f ^ (f << 8) ^ (f << 16) ^ (f << 24));
        for (y = 0; y < h; y++)
          {
             for (x = 0; x < w; x++)
index 6c7fc33..1498fb7 100644 (file)
@@ -52,7 +52,7 @@ static void _loop(double t, int f)
    for (i = 0; i < 1; i++)
      {
        unsigned int *data, *p;
-       int ff, a, r, g, b;
+       int a, r, g, b;
         w = 640;
        h = 480;
        x = (win_w / 2) - (w / 2);
@@ -63,7 +63,6 @@ static void _loop(double t, int f)
        data = evas_object_image_data_get(o_images[i], 1);
         st = evas_object_image_stride_get(o_images[i]) >> 2;
        p = data;
-       ff = (f ^ (f << 8) ^ (f << 16) ^ (f << 24));
        for (y = 0; y < h; y++)
          {
             for (x = 0; x < w; x++)
index 107945a..d3be38f 100644 (file)
@@ -23,6 +23,7 @@ static void _setup(void)
 {
    int i, y;
    FILE *f;
+   size_t r;
    unsigned char **data, **lp;
    Evas_Object *o;
    for (i = 0; i < 1; i++)
@@ -42,9 +43,9 @@ static void _setup(void)
        f = fopen(build_path("tp.yuv"), "rb");
        if (f)
          {
-            fread(yp, 640 * 480, 1, f);
-            fread(up, 320 * 240, 1, f);
-            fread(vp, 320 * 240, 1, f);
+            r = fread(yp, 640 * 480, 1, f);
+            r = fread(up, 320 * 240, 1, f);
+            r = fread(vp, 320 * 240, 1, f);
             fclose(f);
          }
        data = evas_object_image_data_get(o_images[i], 1);
index 6587715..85d9a58 100644 (file)
@@ -24,6 +24,7 @@ static void _setup(void)
    int i, y;
    FILE *f;
    unsigned char **data, **lp;
+   size_t r;
    Evas_Object *o;
    for (i = 0; i < 1; i++)
      {
@@ -43,9 +44,9 @@ static void _setup(void)
         f = fopen(build_path("tp.yuv"), "rb");
         if (f)
           {
-             fread(yp, 640 * 480, 1, f);
-             fread(up, 320 * 240, 1, f);
-             fread(vp, 320 * 240, 1, f);
+             r = fread(yp, 640 * 480, 1, f);
+             r = fread(up, 320 * 240, 1, f);
+             r = fread(vp, 320 * 240, 1, f);
              fclose(f);
           }
         data = evas_object_image_data_get(o_images[i], 1);
index 6054946..6c7218f 100644 (file)
@@ -24,6 +24,7 @@ static void _setup(void)
    int i, y;
    FILE *f;
    unsigned char **data, **lp;
+   size_t r;
    Evas_Object *o;
    for (i = 0; i < 1; i++)
      {
@@ -42,9 +43,9 @@ static void _setup(void)
         f = fopen(build_path("tp.yuv"), "rb");
         if (f)
           {
-             fread(yp, 640 * 480, 1, f);
-             fread(up, 320 * 240, 1, f);
-             fread(vp, 320 * 240, 1, f);
+             r = fread(yp, 640 * 480, 1, f);
+             r = fread(up, 320 * 240, 1, f);
+             r = fread(vp, 320 * 240, 1, f);
              fclose(f);
           }
         data = evas_object_image_data_get(o_images[i], 1);
index b27f717..e46e94b 100644 (file)
@@ -23,6 +23,7 @@ static void _setup(void)
 {
    int i, y;
    FILE *f;
+   size_t r;
    unsigned char **data, **lp;
    Evas_Object *o;
    for (i = 0; i < 1; i++)
@@ -42,9 +43,9 @@ static void _setup(void)
        f = fopen(build_path("tp.yuv"), "rb");
        if (f)
          {
-            fread(yp, 640 * 480, 1, f);
-            fread(up, 320 * 240, 1, f);
-            fread(vp, 320 * 240, 1, f);
+            r = fread(yp, 640 * 480, 1, f);
+            r = fread(up, 320 * 240, 1, f);
+            r = fread(vp, 320 * 240, 1, f);
             fclose(f);
          }
        data = evas_object_image_data_get(o_images[i], 1);
diff --git a/src/bin/image_mask.c b/src/bin/image_mask.c
new file mode 100644 (file)
index 0000000..3677990
--- /dev/null
@@ -0,0 +1,110 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask
+#define NAME "Image Mask"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("image.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+
+       o = evas_object_image_add(evas);
+       o_images[i + 1] = o;
+       evas_object_image_file_set(o, build_path("e-logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+       evas_object_clip_set(o_images[i],o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+       evas_object_move(o_images[i + 1], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_10.c b/src/bin/image_mask_10.c
new file mode 100644 (file)
index 0000000..ab89b9d
--- /dev/null
@@ -0,0 +1,119 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_10
+#define NAME "Image Mask 10"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[1];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < 1; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("texture.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, win_w * 4, win_h * 4);
+       evas_object_resize(o, win_w * 4, win_h * 4);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < 1; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Map *m;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < 1; i++)
+     {
+       w = win_w * 4;
+       h = win_h * 4;
+       x = (win_w / 2) - (w / 2);
+       y = (win_h / 2) - (h / 2);
+        m = evas_map_new(4);
+        evas_map_util_points_populate_from_geometry(m, 
+                                                    -win_w, -win_h,
+                                                    win_w * 4, win_h * 4, 0);
+        evas_map_util_rotate(m, f, win_w / 2, win_h / 2);
+        evas_object_map_enable_set(o_images[i], 1);
+        evas_object_map_set(o_images[i], m);
+        evas_map_free(m);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_11.c b/src/bin/image_mask_11.c
new file mode 100644 (file)
index 0000000..0b0a67a
--- /dev/null
@@ -0,0 +1,123 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_11
+#define NAME "Image Mask 11"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Map *m;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   m = evas_map_new(4);
+   evas_map_util_points_populate_from_geometry(m,
+                                               (win_w - 720) / 2,
+                                               (win_h - 420) / 2,
+                                               720, 420, 0);
+   evas_map_util_rotate(m, f, win_w / 2, win_h / 2);
+   evas_object_map_enable_set(o_mask, 1);
+   evas_object_map_set(o_mask, m);
+   evas_map_free(m);
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_12.c b/src/bin/image_mask_12.c
new file mode 100644 (file)
index 0000000..fb94e58
--- /dev/null
@@ -0,0 +1,119 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_12
+#define NAME "Image Mask 12"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_text_add(evas);
+   o_mask = o;
+   evas_object_text_font_set(o, "Vera-Bold", 150);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("texture.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 500, 444);
+       evas_object_resize(o, win_w * 4, win_h * 4);
+//     evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   const char *strs[] = {
+      "Big", "Smelly", "Fish", "Pants", "Octopus", "Garden", "There", "I",
+      "Am", "You", "Are", "Erogenous", "We", "Stick", "Wet", "Fishy",
+      "Fiddly", "Family", "Lair", "Monkeys", "Magazine"
+   };
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = win_w * 4;
+       h = win_h * 4;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (500 / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (444 / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   evas_object_text_text_set(o_mask, strs[rnd() % (sizeof(strs) / sizeof(char *))]);
+   evas_object_color_set(o_mask, 255, 255, 255, 255);
+   evas_object_geometry_get(o_mask, NULL, NULL, &w, &h);
+   evas_object_move(o_mask, (win_w - w) / 2, (win_h - h) / 2);
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_13.c b/src/bin/image_mask_13.c
new file mode 100644 (file)
index 0000000..559b657
--- /dev/null
@@ -0,0 +1,119 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_13
+#define NAME "Image Mask 13"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_text_add(evas);
+   o_mask = o;
+   evas_object_text_font_set(o, "Vera-Bold", 150);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+        o = evas_object_image_add(evas);
+        o_images[i] = o;
+        evas_object_image_file_set(o, build_path("logo.png"), NULL);
+        evas_object_image_fill_set(o, 0, 0, 120, 160);
+        evas_object_resize(o, 120, 160);
+        evas_object_show(o);
+       evas_object_clip_set(o, o_mask);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   const char *strs[] = {
+      "Big", "Smelly", "Fish", "Pants", "Octopus", "Garden", "There", "I",
+      "Am", "You", "Are", "Erogenous", "We", "Stick", "Wet", "Fishy",
+      "Fiddly", "Family", "Lair", "Monkeys", "Magazine"
+   };
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   evas_object_text_text_set(o_mask, strs[rnd() % (sizeof(strs) / sizeof(char *))]);
+   evas_object_color_set(o_mask, 255, 255, 255, 255);
+   evas_object_geometry_get(o_mask, NULL, NULL, &w, &h);
+   evas_object_move(o_mask, (win_w - w) / 2, (win_h - h) / 2);
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_14.c b/src/bin/image_mask_14.c
new file mode 100644 (file)
index 0000000..a2a5d83
--- /dev/null
@@ -0,0 +1,118 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_14
+#define NAME "Image Mask 14"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+        evas_object_image_smooth_scale_set(o, 1);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h, w0, h0;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w0 = 80;
+        h0 = 80;
+        w = 5 + ((1.0 + cos((double)(f + (i * 10)) / (7.4 * SLOW) )) * w0 * 2);
+        h = 5 + ((1.0 + sin((double)(f + (i * 19)) / (12.6 * SLOW) )) * h0 * 2);
+        x = (win_w / 2) - (w / 2);
+        x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w0 / 2);
+        y = (win_h / 2) - (h / 2);
+        y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h0 / 2);
+        evas_object_move(o_images[i], x, y);
+        evas_object_resize(o_images[i], w, h);
+        evas_object_image_fill_set(o_images[i], 0, 0, w, h);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_15.c b/src/bin/image_mask_15.c
new file mode 100644 (file)
index 0000000..f6a1abe
--- /dev/null
@@ -0,0 +1,118 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_15
+#define NAME "Image Mask 15"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+        evas_object_image_smooth_scale_set(o, 0);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h, w0, h0;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w0 = 80;
+        h0 = 80;
+        w = 5 + ((1.0 + cos((double)(f + (i * 10)) / (7.4 * SLOW) )) * w0 * 2);
+        h = 5 + ((1.0 + sin((double)(f + (i * 19)) / (12.6 * SLOW) )) * h0 * 2);
+        x = (win_w / 2) - (w / 2);
+        x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w0 / 2);
+        y = (win_h / 2) - (h / 2);
+        y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h0 / 2);
+        evas_object_move(o_images[i], x, y);
+        evas_object_resize(o_images[i], w, h);
+        evas_object_image_fill_set(o_images[i], 0, 0, w, h);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_2.c b/src/bin/image_mask_2.c
new file mode 100644 (file)
index 0000000..550bd3a
--- /dev/null
@@ -0,0 +1,110 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_2
+#define NAME "Image Mask 2"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("e-logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+
+       o = evas_object_image_add(evas);
+       o_images[i + 1] = o;
+       evas_object_image_file_set(o, build_path("e-logo-2.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+       evas_object_clip_set(o_images[i], o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+       evas_object_move(o_images[i + 1], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_3.c b/src/bin/image_mask_3.c
new file mode 100644 (file)
index 0000000..39978b3
--- /dev/null
@@ -0,0 +1,110 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_3
+#define NAME "Image Mask 3"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("e-logo-2.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+
+       o = evas_object_image_add(evas);
+       o_images[i + 1] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_show(o);
+       evas_object_clip_set(o_images[i], o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i+= 2)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+       evas_object_move(o_images[i + 1], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_4.c b/src/bin/image_mask_4.c
new file mode 100644 (file)
index 0000000..1657437
--- /dev/null
@@ -0,0 +1,113 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_4
+#define NAME "Image Mask 4"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_5.c b/src/bin/image_mask_5.c
new file mode 100644 (file)
index 0000000..288a120
--- /dev/null
@@ -0,0 +1,113 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_5
+#define NAME "Image Mask 5"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-2.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 120, 160);
+   evas_object_resize(o, 120, 160);
+   evas_object_move(o, (win_w - 120) / 2, (win_h - 160) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_6.c b/src/bin/image_mask_6.c
new file mode 100644 (file)
index 0000000..caac8f0
--- /dev/null
@@ -0,0 +1,113 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_6
+#define NAME "Image Mask 6"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120 / 2, 160 / 2);
+       evas_object_resize(o, 120 / 2, 160 / 2);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120 / 2;
+       h = 160 / 2;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_7.c b/src/bin/image_mask_7.c
new file mode 100644 (file)
index 0000000..a8ccb87
--- /dev/null
@@ -0,0 +1,118 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_7
+#define NAME "Image Mask 7"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-2.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 120, 160);
+   evas_object_resize(o, 120, 160);
+   evas_object_move(o, (win_w - 120) / 2, (win_h - 160) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < OBNUM; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("logo.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 120, 160);
+       evas_object_resize(o, 120, 160);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+       w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   w = 10 + (110 + (110 * sin((double)(f) / (14.3 * SLOW))));
+   h = 10 + (150 + (150 * sin((double)(f) / (21.7 * SLOW))));
+   evas_object_image_fill_set(o_mask, 0, 0, w, h);
+   evas_object_resize(o_mask, w, h);
+   evas_object_move(o_mask, (win_w - w) / 2, (win_h - h) / 2);
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_8.c b/src/bin/image_mask_8.c
new file mode 100644 (file)
index 0000000..961a44d
--- /dev/null
@@ -0,0 +1,113 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_8
+#define NAME "Image Mask 8"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[1];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < 1; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("texture.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 500, 444);
+       evas_object_resize(o, win_w * 4, win_h * 4);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < 1; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < 1; i++)
+     {
+       w = win_w * 4;
+       h = win_h * 4;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (500 / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (444 / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
diff --git a/src/bin/image_mask_9.c b/src/bin/image_mask_9.c
new file mode 100644 (file)
index 0000000..b602ef7
--- /dev/null
@@ -0,0 +1,124 @@
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_mask_9
+#define NAME "Image Mask 9"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[1];
+static Evas_Object *o_mask;
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o;
+   
+   o = evas_object_image_add(evas);
+   o_mask = o;
+   evas_object_image_file_set(o, build_path("e-logo-mask.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 720, 420);
+   evas_object_resize(o, 720, 420);
+   evas_object_move(o, (win_w - 720) / 2, (win_h - 420) / 2);
+   evas_object_show(o);
+   
+   for (i = 0; i < 1; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_file_set(o, build_path("texture.png"), NULL);
+       evas_object_image_fill_set(o, 0, 0, 500, 444);
+       evas_object_resize(o, win_w * 4, win_h * 4);
+       evas_object_clip_set(o, o_mask);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < 1; i++) evas_object_del(o_images[i]);
+   evas_object_del(o_mask);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Map *m;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < 1; i++)
+     {
+       w = win_w * 4;
+       h = win_h * 4;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (500 / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (444 / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   m = evas_map_new(4);
+   
+   evas_map_util_points_populate_from_geometry(m, 
+                                               (win_w - 720) / 2, 
+                                               (win_h - 420) / 2, 
+                                               720, 420, 0);
+   evas_map_util_rotate(m, f, win_w / 2, win_h / 2);
+   evas_object_map_enable_set(o_mask, 1);
+   evas_object_map_set(o_mask, m);
+   evas_map_free(m);
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
index 8e406ae..b4c0bf3 100644 (file)
@@ -1158,9 +1158,6 @@ static const Expedite_Engine engines[] = {
 #if HAVE_EVAS_DIRECT3D
   { "direct3d",engine_direct3d_args, engine_direct3d_loop, engine_direct3d_shutdown },
 #endif
-#if HAVE_EVAS_OPENGL_GLEW
-  { "glew" , engine_gl_glew_args, engine_gl_glew_loop, engine_gl_glew_shutdown },
-#endif
 #if HAVE_EVAS_SOFTWARE_SDL
   { "sdl",   engine_software_sdl_args, engine_software_sdl_loop, engine_software_sdl_shutdown },
   { "sdl-16",engine_software_sdl_args, engine_software_sdl_loop, engine_software_sdl_shutdown },
@@ -1174,9 +1171,6 @@ static const Expedite_Engine engines[] = {
 #if HAVE_EVAS_DIRECTFB
   { "directfb",engine_directfb_args, engine_directfb_loop, engine_directfb_shutdown },
 #endif
-#if HAVE_EVAS_QUARTZ
-  { "quartz",engine_quartz_args, engine_quartz_loop, engine_quartz_shutdown },
-#endif
 #if HAVE_EVAS_SOFTWARE_16_X11
   { "x11-16",engine_software_16_x11_args, engine_software_16_x11_loop, engine_software_16_x11_shutdown },
 #endif
index 1102783..fc78a7e 100644 (file)
@@ -8,6 +8,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <unistd.h>
 #include <math.h>
 #include <time.h>
 
@@ -48,9 +49,6 @@
 #if HAVE_EVAS_DIRECT3D
 #include "engine_direct3d.h"
 #endif
-#if HAVE_EVAS_OPENGL_GLEW
-#include "engine_gl_glew.h"
-#endif
 #if HAVE_EVAS_SOFTWARE_SDL
 #include "engine_software_sdl.h"
 #endif
@@ -63,9 +61,6 @@
 #if HAVE_EVAS_DIRECTFB
 #include "engine_directfb.h"
 #endif
-#if HAVE_EVAS_QUARTZ
-#include "engine_quartz.h"
-#endif
 #if HAVE_EVAS_SOFTWARE_16_X11
 #include "engine_software_16_x11.h"
 #endif
diff --git a/src/bin/proxy_image_offscreen.c b/src/bin/proxy_image_offscreen.c
new file mode 100644 (file)
index 0000000..b147142
--- /dev/null
@@ -0,0 +1,114 @@
+/**
+ * This tests that proxy works fine if the proxy (of an image) works when
+ * offscreen.
+ */
+#undef FNAME
+#undef NAME
+#undef ICON
+
+/* metadata */
+#define FNAME image_blend_unscaled_proxy_start
+#define NAME "Proxy Offscreen"
+#define ICON "blend.png"
+
+#ifndef PROTO
+# ifndef UI
+#  include "main.h"
+
+/* standard var */
+static int done = 0;
+/* private data */
+static Evas_Object *o_images[OBNUM];
+
+/* setup */
+static void _setup(void)
+{
+   int i;
+   Evas_Object *o,*src;
+
+   o = evas_object_image_add(evas);
+   evas_object_image_file_set(o, build_path("logo.png"), NULL);
+   evas_object_image_fill_set(o, 0, 0, 120, 160);
+   evas_object_resize(o, 120, 160);
+   evas_object_move(o, -400, -300);
+   src = o;
+
+   for (i = 0; i < OBNUM / 2; i++)
+     {
+       o = evas_object_image_add(evas);
+       o_images[i] = o;
+       evas_object_image_source_set(o, src);
+       evas_object_resize(o, 120, 160);
+       evas_object_image_fill_set(o, 0,0,120,160);
+       evas_object_show(o);
+     }
+   done = 0;
+}
+
+/* cleanup */
+static void _cleanup(void)
+{
+   int i;
+   for (i = 0; i < OBNUM; i++) evas_object_del(o_images[i]);
+}
+
+/* loop - do things */
+static void _loop(double t, int f)
+{
+   int i;
+   Evas_Coord x, y, w, h;
+   for (i = 0; i < OBNUM; i++)
+     {
+        w = 120;
+       h = 160;
+       x = (win_w / 2) - (w / 2);
+       x += sin((double)(f + (i * 13)) / (36.7 * SLOW)) * (w / 2);
+       y = (win_h / 2) - (h / 2);
+       y += cos((double)(f + (i * 28)) / (43.8 * SLOW)) * (h / 2);
+       evas_object_move(o_images[i], x, y);
+     }
+   FPS_STD(NAME);
+}
+
+/* prepend special key handlers if interactive (before STD) */
+static void _key(char *key)
+{
+   KEY_STD;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+/* template stuff - ignore */
+# endif
+#endif
+
+#ifdef UI
+_ui_menu_item_add(ICON, NAME, FNAME);
+#endif
+
+#ifdef PROTO
+void FNAME(void);
+#endif
+
+#ifndef PROTO
+# ifndef UI
+void FNAME(void)
+{
+   ui_func_set(_key, _loop);
+   _setup();
+}
+# endif
+#endif
+#undef FNAME
+#undef NAME
+#undef ICON
+
index 202db87..8607950 100644 (file)
 #include "proxy_image.c"
 #include "proxy_text_fixed.c"
 #include "proxy_text_random.c"
+#if 0 // test disabled - evas having code disabled
+#include "image_mask.c"
+#include "image_mask_2.c"
+#include "image_mask_3.c"
+#include "image_mask_4.c"
+#include "image_mask_5.c"
+#include "image_mask_6.c"
+#include "image_mask_7.c"
+#include "image_mask_8.c"
+#include "image_mask_9.c"
+#include "image_mask_10.c"
+#include "image_mask_11.c"
+#include "image_mask_12.c"
+#include "image_mask_13.c"
+#include "image_mask_14.c"
+#include "image_mask_15.c"
+#include "filter_object_colors.c"
+#include "filter_object_colors_solid.c"
+#include "filter_object_invert.c"
+#include "filter_object_invert_solid.c"
+#include "filter_object_greyscale.c"
+#include "filter_object_greyscale_solid.c"
+#include "filter_object_brightness.c"
+#include "filter_object_brightness_solid.c"
+#include "filter_object_sepia.c"
+#include "filter_object_sepia_solid.c"
+#include "filter_object_blur.c"
+#include "filter_object_blur_solid.c"
+#endif
index da5a341..eb63766 100644 (file)
@@ -53,7 +53,7 @@ static void _setup(void)
       "<br>"
       "In the next text, the paragraph should be right aligned and the<br>"
       "words should appear in the following order: 'דוגמה' first, 'of' second,<br>"
-      "'טקסט' third, 'english' fourth and 'in' fifth, counting from right to left<ps>"
+      "'טקסט' third, 'english' fourth and 'in' fifth, counting from right to left<ps>"
       "דוגמה of טקסט in english."
       );
 
index 5dc7930..8559d70 100644 (file)
@@ -48,7 +48,7 @@ static void _setup(void)
       "Icelandic: 'Kæmi ný öxi hér ykist þjófum nú bæði víl og ádrepa'<br>"
       "Japanese (hiragana): 'いろはにほへとちりぬるを'<br>"
       "Japanese (katakana): 'イロハニホヘト チリヌルヲ ワカヨタレソ ツネナラム'<br>"
-      "Hebrew: '? דג סקרן שט בים מאוכזב ולפתע מצא לו חברה איך הקליטה'<br>"
+      "Hebrew: 'דג סקרן שט בים מאוכזב ולפתע מצא לו חברה איך הקליטה?‏'<br>"
       "Polish: 'Pchnąć w tę łódź jeża lub ośm skrzyń fig'<br>"
       "Russian: 'В чащах юга жил бы цитрус? Да, но фальшивый экземпляр!'<br>"
       "IPA: 'ˈjunɪˌkoːd'<br>"
index 041f92f..7b2eef2 100644 (file)
@@ -157,13 +157,49 @@ static double weights[] =
      38.2952, // test 86
      5.5560,
      0.5000,
-     10.000, // Proxy tests
+     1.000,
+     10.000,
+   
+     5.000, // test 91
+     20.000, // MASK
+     20.000, // MASK 2
+     20.000, // MASK 3
+     20.000, // MASK 4
+   
+     20.000, // test 96
+     20.000, // MASK 6
+     20.000, // MASK 7
+     20.000, // MASK 8
+     20.000, // MASK 9
+   
+     20.000, // test 101
+     20.000, // MASK 11
+     20.000, // MASK 12
+     20.000, // MASK 13
+     20.000, // MASK 14
+   
+     20.000, // test 106 MASK 15
+     1.000,
+     2.000,
+     1.000,
+     2.000,
+
+     1.000, // test 111
+     2.000,
+     1.000,
+     2.000,
+     1.000,
+
+     2.000,   // test 116
      10.000,
      10.000,
    
+     0.0, // Exit
+   
      0.0, // no final test - add a 0 at the end anyway to pad
      0.0,
      0.0,
+     0.0,
      0.0
 };
 
@@ -194,7 +230,7 @@ _ui_all(void)
    double fps = 0.0;
    double wfps = 0.0;
    int t_count = 0;
-   int i;
+   unsigned int i;
    double avgw = 0.0;
 
    evas_object_hide(o_menu_logo);
@@ -246,7 +282,7 @@ _ui_all(void)
         
         now = time(NULL);
         tim = localtime(&now);
-        if (tim) strftime(datestr, sizeof(datestr), "%F %T", tim);
+        if (tim) strftime(datestr, sizeof(datestr), "%Y-%m-%d %H:%M:%S", tim);
         else snprintf(datestr, sizeof(datestr), "unknown");
 //        printf("%5.2f , EVAS SPEED\n", fps / t_count);
         printf("%5.2f , EVAS SPEED (WEIGHTED), "
@@ -281,7 +317,7 @@ _ui_num(int n)
    double wfps = 0.0;
    int t_count = 0;
    Menu_Item *mi;
-   int i;
+   unsigned int i;
    double avgw = 0.0;
 
    evas_object_hide(o_menu_logo);
@@ -359,7 +395,7 @@ _ui_select(void)
 }
 
 static void
-_ui_key(void *data, Evas *e, Evas_Object *obj, void *event_info)
+_ui_key(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
 {
    Evas_Event_Key_Down *ev;
 
@@ -380,7 +416,7 @@ _ui_key(void *data, Evas *e, Evas_Object *obj, void *event_info)
        if (!strcmp(ev->keyname, "Left")) menu_sel++;
        if (!strcmp(ev->keyname, "Right")) menu_sel--;
        if (menu_sel < 0) menu_sel = 0;
-       else if (menu_sel >= eina_list_count(menu)) menu_sel = eina_list_count(menu) - 1;
+       else if ((unsigned int)menu_sel >= eina_list_count(menu)) menu_sel = eina_list_count(menu) - 1;
        menu_anim_sel = menu_sel;
        if (!strcmp(ev->keyname, "Return")) _ui_select();
      }
@@ -391,7 +427,7 @@ static int down = 0;
 static int down_menu_sel = 0;
 
 static void
-_ui_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info)
+_ui_mouse_down(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
 {
    Evas_Event_Mouse_Down *ev;
 
@@ -410,7 +446,7 @@ _ui_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info)
 }
 
 static void
-_ui_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info)
+_ui_mouse_up(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
 {
    Evas_Event_Mouse_Up *ev;
 
@@ -435,7 +471,7 @@ _ui_mouse_up(void *data, Evas *e, Evas_Object *obj, void *event_info)
 }
 
 static void
-_ui_mouse_move(void *data, Evas *e, Evas_Object *obj, void *event_info)
+_ui_mouse_move(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj __UNUSED__, void *event_info)
 {
    Evas_Event_Mouse_Move *ev;
 
@@ -446,7 +482,7 @@ _ui_mouse_move(void *data, Evas *e, Evas_Object *obj, void *event_info)
        menu_sel = down_menu_sel + ((ev->cur.canvas.x - down_x) / 25);
        /* scroll */
        if (menu_sel < 0) menu_sel = 0;
-       else if (menu_sel >= eina_list_count(menu)) menu_sel = eina_list_count(menu) - 1;
+       else if ((unsigned int)menu_sel >= eina_list_count(menu)) menu_sel = eina_list_count(menu) - 1;
        menu_anim_sel = menu_sel;
      }
    else
index bf1e230..f603c57 100644 (file)
@@ -77,11 +77,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index cf54f5b..8536d3b 100644 (file)
@@ -75,11 +75,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index 87dc91c..31b6c1b 100644 (file)
@@ -83,11 +83,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index 47b9b48..7dbf9ff 100644 (file)
@@ -60,11 +60,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index 5a2e6a0..f5e8324 100644 (file)
@@ -64,11 +64,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index afde3af..72e26ab 100644 (file)
@@ -75,11 +75,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index 9ca6625..9955dca 100644 (file)
@@ -75,11 +75,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = ICON_SIZE;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x + 8, y);
index 64cd2a1..98a6296 100644 (file)
@@ -91,11 +91,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index b327efb..8117dbd 100644 (file)
@@ -99,11 +99,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index 56dff92..4cd84e5 100644 (file)
@@ -91,11 +91,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index fae8011..ed3f0a0 100644 (file)
@@ -99,11 +99,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index ae022cd..bc75d8f 100644 (file)
@@ -120,11 +120,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index d545f0f..82ad974 100644 (file)
@@ -136,11 +136,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index 4291b29..ca30a93 100644 (file)
@@ -120,11 +120,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);
index 2cb9aae..42108a4 100644 (file)
@@ -136,11 +136,9 @@ static void _cleanup(void)
 static void _loop(double t, int f)
 {
    int i;
-   Evas_Coord x, y, w, h, tw, th, cent;
+   Evas_Coord x, y, tw, th, cent;
    x = 0;
    y = 0 - f;
-   w = win_w;
-   h = ICON_SIZE;
    for (i = 0; i < NUM; i++)
      {
        evas_object_move(o_images[i], x, y);