started to do theme with accelerometer
authortanya <tanyshk@gmail.com>
Thu, 1 Jul 2010 04:56:52 +0000 (07:56 +0300)
committertanya <tanyshk@gmail.com>
Thu, 1 Jul 2010 04:56:52 +0000 (07:56 +0300)
applet/data/Makefile.am
applet/data/Makefile.in
applet/src/livewp-actor.c
applet/src/livewp-actor.h
applet/src/livewp-home-widget.c
applet/src/livewp-scene.c
applet/src/livewp-scene.h
applet/src/livewp-settings.c

index 9efc8bb..41bca49 100644 (file)
@@ -28,6 +28,9 @@ moderntheme_DATA = theme/Modern/*
 matrixthemedir = $(datadir)/livewp/theme/Matrix
 matrixtheme_DATA = theme/Matrix/* 
 
+accelthemedir = $(datadir)/livewp/theme/Accel
+acceltheme_DATA = theme/Accel/* 
+
 dbus_servicedir = $(datadir)/dbus-1/services
 dbus_service_DATA = org.maemo.livewp.service
 
@@ -59,6 +62,7 @@ uninstall-local:
 EXTRA_DIST = $(berlintheme_DATA) \
             $(moderntheme_DATA) \
             $(matrixtheme_DATA) \
+            $(acceltheme_DATA) \
             $(dbus_service_DATA)
 
 
index ede4186..1aa5e3a 100644 (file)
@@ -67,14 +67,15 @@ CONFIG_HEADER = $(top_builddir)/src/config.h
 CONFIG_CLEAN_FILES =
 SOURCES =
 DIST_SOURCES =
-am__installdirs = "$(DESTDIR)$(berlinthemedir)" "$(DESTDIR)$(dbus_servicedir)" "$(DESTDIR)$(desktoppaneldir)" "$(DESTDIR)$(matrixthemedir)" "$(DESTDIR)$(modernthemedir)"
+am__installdirs = "$(DESTDIR)$(accelthemedir)" "$(DESTDIR)$(berlinthemedir)" "$(DESTDIR)$(dbus_servicedir)" "$(DESTDIR)$(desktoppaneldir)" "$(DESTDIR)$(matrixthemedir)" "$(DESTDIR)$(modernthemedir)"
+accelthemeDATA_INSTALL = $(INSTALL_DATA)
 berlinthemeDATA_INSTALL = $(INSTALL_DATA)
 dbus_serviceDATA_INSTALL = $(INSTALL_DATA)
 desktoppanelDATA_INSTALL = $(INSTALL_DATA)
 matrixthemeDATA_INSTALL = $(INSTALL_DATA)
 modernthemeDATA_INSTALL = $(INSTALL_DATA)
-DATA = $(berlintheme_DATA) $(dbus_service_DATA) $(desktoppanel_DATA) \
-       $(matrixtheme_DATA) $(moderntheme_DATA)
+DATA = $(acceltheme_DATA) $(berlintheme_DATA) $(dbus_service_DATA) \
+       $(desktoppanel_DATA) $(matrixtheme_DATA) $(moderntheme_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -238,6 +239,8 @@ modernthemedir = $(datadir)/livewp/theme/Modern
 moderntheme_DATA = theme/Modern/*  
 matrixthemedir = $(datadir)/livewp/theme/Matrix
 matrixtheme_DATA = theme/Matrix/* 
+accelthemedir = $(datadir)/livewp/theme/Accel
+acceltheme_DATA = theme/Accel/* 
 dbus_servicedir = $(datadir)/dbus-1/services
 dbus_service_DATA = org.maemo.livewp.service
 desktoppaneldir = $(datadir)/applications/hildon-control-panel
@@ -249,6 +252,7 @@ icondir = $(datadir)/icons/hicolor
 EXTRA_DIST = $(berlintheme_DATA) \
             $(moderntheme_DATA) \
             $(matrixtheme_DATA) \
+            $(acceltheme_DATA) \
             $(dbus_service_DATA)
 
 all: all-am
@@ -293,6 +297,23 @@ clean-libtool:
 distclean-libtool:
        -rm -f libtool
 uninstall-info-am:
+install-accelthemeDATA: $(acceltheme_DATA)
+       @$(NORMAL_INSTALL)
+       test -z "$(accelthemedir)" || $(mkdir_p) "$(DESTDIR)$(accelthemedir)"
+       @list='$(acceltheme_DATA)'; for p in $$list; do \
+         if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+         f="`echo $$p | sed -e 's|^.*/||'`"; \
+         echo " $(accelthemeDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(accelthemedir)/$$f'"; \
+         $(accelthemeDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(accelthemedir)/$$f"; \
+       done
+
+uninstall-accelthemeDATA:
+       @$(NORMAL_UNINSTALL)
+       @list='$(acceltheme_DATA)'; for p in $$list; do \
+         f="`echo $$p | sed -e 's|^.*/||'`"; \
+         echo " rm -f '$(DESTDIR)$(accelthemedir)/$$f'"; \
+         rm -f "$(DESTDIR)$(accelthemedir)/$$f"; \
+       done
 install-berlinthemeDATA: $(berlintheme_DATA)
        @$(NORMAL_INSTALL)
        test -z "$(berlinthemedir)" || $(mkdir_p) "$(DESTDIR)$(berlinthemedir)"
@@ -386,7 +407,7 @@ CTAGS:
 
 
 distdir: $(DISTFILES)
-       $(mkdir_p) $(distdir)/theme/Berlin $(distdir)/theme/Matrix $(distdir)/theme/Modern
+       $(mkdir_p) $(distdir)/theme/Accel $(distdir)/theme/Berlin $(distdir)/theme/Matrix $(distdir)/theme/Modern
        @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
        list='$(DISTFILES)'; for file in $$list; do \
@@ -417,7 +438,7 @@ check-am: all-am
 check: check-am
 all-am: Makefile $(DATA)
 installdirs:
-       for dir in "$(DESTDIR)$(berlinthemedir)" "$(DESTDIR)$(dbus_servicedir)" "$(DESTDIR)$(desktoppaneldir)" "$(DESTDIR)$(matrixthemedir)" "$(DESTDIR)$(modernthemedir)"; do \
+       for dir in "$(DESTDIR)$(accelthemedir)" "$(DESTDIR)$(berlinthemedir)" "$(DESTDIR)$(dbus_servicedir)" "$(DESTDIR)$(desktoppaneldir)" "$(DESTDIR)$(matrixthemedir)" "$(DESTDIR)$(modernthemedir)"; do \
          test -z "$$dir" || $(mkdir_p) "$$dir"; \
        done
 install: install-am
@@ -462,9 +483,10 @@ info: info-am
 
 info-am:
 
-install-data-am: install-berlinthemeDATA install-data-local \
-       install-dbus_serviceDATA install-desktoppanelDATA \
-       install-matrixthemeDATA install-modernthemeDATA
+install-data-am: install-accelthemeDATA install-berlinthemeDATA \
+       install-data-local install-dbus_serviceDATA \
+       install-desktoppanelDATA install-matrixthemeDATA \
+       install-modernthemeDATA
 
 install-exec-am:
 
@@ -490,21 +512,23 @@ ps: ps-am
 
 ps-am:
 
-uninstall-am: uninstall-berlinthemeDATA uninstall-dbus_serviceDATA \
-       uninstall-desktoppanelDATA uninstall-info-am uninstall-local \
-       uninstall-matrixthemeDATA uninstall-modernthemeDATA
+uninstall-am: uninstall-accelthemeDATA uninstall-berlinthemeDATA \
+       uninstall-dbus_serviceDATA uninstall-desktoppanelDATA \
+       uninstall-info-am uninstall-local uninstall-matrixthemeDATA \
+       uninstall-modernthemeDATA
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
        distclean distclean-generic distclean-libtool distdir dvi \
-       dvi-am html html-am info info-am install install-am \
-       install-berlinthemeDATA install-data install-data-am \
-       install-data-local install-dbus_serviceDATA \
-       install-desktoppanelDATA install-exec install-exec-am \
-       install-info install-info-am install-man \
+       dvi-am html html-am info info-am install \
+       install-accelthemeDATA install-am install-berlinthemeDATA \
+       install-data install-data-am install-data-local \
+       install-dbus_serviceDATA install-desktoppanelDATA install-exec \
+       install-exec-am install-info install-info-am install-man \
        install-matrixthemeDATA install-modernthemeDATA install-strip \
        installcheck installcheck-am installdirs maintainer-clean \
        maintainer-clean-generic mostlyclean mostlyclean-generic \
-       mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
+       mostlyclean-libtool pdf pdf-am ps ps-am uninstall \
+       uninstall-accelthemeDATA uninstall-am \
        uninstall-berlinthemeDATA uninstall-dbus_serviceDATA \
        uninstall-desktoppanelDATA uninstall-info-am uninstall-local \
        uninstall-matrixthemeDATA uninstall-modernthemeDATA
index 8e4e0a3..822b642 100644 (file)
@@ -179,6 +179,44 @@ gchar * read_notification()
     return message;
 }
 
+void
+change_obj(Actor *actor, AWallpaperPlugin *desktop_plugin)
+{
+    char * accel_filename = "/sys/class/i2c-adapter/i2c-3/3-001d/coord";
+    //char * accel_filename = "/home/tanya/coord";
+
+    FILE *fd = NULL;
+    int rs, ax, ay, az, dx, dy;
+    fd = fopen(accel_filename, "r");
+    if (fd == NULL){
+        fprintf(stderr, "cannot open file\n");
+        return;
+    }
+    rs = fscanf((FILE*)fd, "%i %i %i", &ax, &ay, &az);
+    fclose(fd);
+    if (rs != 3){
+        fprintf(stderr, "cannot read information from file\n");
+        return;
+    }
+
+    fprintf(stderr, "change obj %i %i %i\n", ax, ay, az);
+    dx = -ax / 100;
+    dy = -ay / 100;
+
+    actor->x = actor->x + dx;
+    actor->y = actor->y + dy;
+
+    if (actor->x > 800) actor->x = 0;
+    if (actor->x < 0) actor->x = 800;
+
+    if (actor->y > 480) actor->y = 0;
+    if (actor->y < 0) actor->y = 480;
+
+    set_actor_position(actor, actor->x, actor->y, actor->z, desktop_plugin);
+
+
+}
+
 void 
 change_billboard(Actor * actor, AWallpaperPlugin *desktop_plugin)
 {
index cfe92a5..817f6a6 100644 (file)
@@ -74,6 +74,7 @@ void destroy_actor(Actor *actor);
 void set_actor_position(Actor *actor, gint x, gint y, gint z, AWallpaperPlugin *desktop_plugin);
 void set_actor_scale(Actor *actor, double scalex, double scaley);
 void set_actor_visible(Actor *actor, gboolean visible);
+void change_obj(Actor * actor, AWallpaperPlugin *desktop_plugin);
 void change_billboard(Actor * actor, AWallpaperPlugin *desktop_plugin);
 void change_moon(Actor * actor, AWallpaperPlugin *desktop_plugin);
 void change_sun(Actor * actor, AWallpaperPlugin *desktop_plugin);
index 3ff8735..0619f40 100644 (file)
@@ -437,13 +437,14 @@ animation_wallpaper_plugin_init (AWallpaperPlugin *desktop_plugin)
     priv->xapplet = 0;
     priv->yapplet = 0;
     priv->scene = NULL;
-//    priv->theme = g_strdup("Modern");
+    priv->theme = g_strdup("Modern");
 //#if 0 
     priv->hash_scene_func = g_hash_table_new(g_str_hash, g_str_equal);
     
     g_hash_table_insert(priv->hash_scene_func, g_strdup("Berlin"), (gpointer)&init_scene_Berlin);
     g_hash_table_insert(priv->hash_scene_func, g_strdup("Modern"), (gpointer)&init_scene_Modern);
     g_hash_table_insert(priv->hash_scene_func, g_strdup("Matrix"), (gpointer)&init_scene_Matrix);
+    g_hash_table_insert(priv->hash_scene_func, g_strdup("Accel"), (gpointer)&init_scene_Accel);
 //#endif
     //priv->theme = g_strdup("Modern");
     desktop_plugin->priv->main_widget = gtk_fixed_new();
index 32502ba..c35ad54 100644 (file)
@@ -59,6 +59,36 @@ reload_scene(AWallpaperPlugin *desktop_plugin)
     init_scene_theme(desktop_plugin);
 }
 
+
+void 
+init_scene_Accel(AWallpaperPlugin *desktop_plugin)
+{
+    fprintf(stderr,"init scene accel\n");  
+    Actor *actor;
+    Scene *scene;
+    gint now = time(NULL);
+    
+    scene = g_new0(Scene, 1);
+    scene->actors = NULL;
+    desktop_plugin->priv->scene = scene;
+    
+    actor = init_object(desktop_plugin, "sky", "sky0.png", 
+                      0, 0, 1, 800, 480, 
+                      TRUE , TRUE, 100, 255, 
+                      NULL, NULL, NULL);
+    scene->actors = g_slist_append(scene->actors, actor);
+      
+    actor = init_object(desktop_plugin, "sun", "sun.png", 
+                      100, 100, 2, 88, 88, 
+                      TRUE, TRUE, 100, 255, 
+                      (gpointer)&change_obj, NULL, NULL);
+    actor->time_start_animation = now;
+    actor->duration_animation = G_MAXINT;
+    scene->actors = g_slist_append(scene->actors, actor);
+    
+    run_long_timeout(desktop_plugin);
+}
+
 void
 init_scene_Matrix(AWallpaperPlugin *desktop_plugin)
 {
index 303233e..a7acc79 100644 (file)
@@ -41,6 +41,7 @@ void reload_scene(AWallpaperPlugin *desktop_plugin);
 void init_scene_Modern(AWallpaperPlugin *desktop_plugin);
 void init_scene_Berlin(AWallpaperPlugin *desktop_plugin);
 void init_scene_Matrix(AWallpaperPlugin *desktop_plugin);
+void init_scene_Accel(AWallpaperPlugin *desktop_plugin);
 void init_scene_theme(AWallpaperPlugin *desktop_plugin);
 
 #endif
index c7eaa12..5e6193b 100644 (file)
@@ -63,6 +63,7 @@ create_theme_selector (void)
       hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Berlin"));
       hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Modern"));
       hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Matrix"));
+      hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (selector), _("Accel"));
       return selector;
 }
 /*******************************************************************************/
@@ -90,6 +91,11 @@ create_themes_button (gchar *theme){
             hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 2);
             hildon_button_set_value(HILDON_BUTTON(button), _("Matrix"));
         }
+        if (!strcmp(theme, "Accel")){
+            hildon_touch_selector_set_active (HILDON_TOUCH_SELECTOR (selector), 0, 2);
+            hildon_button_set_value(HILDON_BUTTON(button), _("Accel"));
+        }
+
 
     }
     return button;
@@ -168,6 +174,8 @@ lw_settings(Animation_WallpaperPrivate *priv, gpointer data){
                     priv->theme = g_strdup("Modern");
                 if (!strcmp(hildon_button_get_value(HILDON_BUTTON (theme_button)), _("Matrix")))
                     priv->theme = g_strdup("Matrix");
+                if (!strcmp(hildon_button_get_value(HILDON_BUTTON (theme_button)), _("Accel")))
+                    priv->theme = g_strdup("Accel");
             }
             /* Check rich animation */
             if (hildon_check_button_get_active (HILDON_CHECK_BUTTON(rich_animation_button)))