new theme
authortanya <tanya@tanin.oblgaz>
Fri, 2 Apr 2010 14:18:13 +0000 (17:18 +0300)
committertanya <tanya@tanin.oblgaz>
Fri, 2 Apr 2010 14:18:13 +0000 (17:18 +0300)
applet/data/new/border.png [new file with mode: 0644]
applet/data/new/sky.png [new file with mode: 0644]
applet/data/new/stend.png [new file with mode: 0644]
applet/data/new/sun.png [new file with mode: 0644]
applet/data/new/town.png [new file with mode: 0644]
applet/data/new/tram.png [new file with mode: 0644]
applet/src/livewp-home-widget.c

diff --git a/applet/data/new/border.png b/applet/data/new/border.png
new file mode 100644 (file)
index 0000000..9eeb5f2
Binary files /dev/null and b/applet/data/new/border.png differ
diff --git a/applet/data/new/sky.png b/applet/data/new/sky.png
new file mode 100644 (file)
index 0000000..0c409c7
Binary files /dev/null and b/applet/data/new/sky.png differ
diff --git a/applet/data/new/stend.png b/applet/data/new/stend.png
new file mode 100644 (file)
index 0000000..0844c7e
Binary files /dev/null and b/applet/data/new/stend.png differ
diff --git a/applet/data/new/sun.png b/applet/data/new/sun.png
new file mode 100644 (file)
index 0000000..10931cd
Binary files /dev/null and b/applet/data/new/sun.png differ
diff --git a/applet/data/new/town.png b/applet/data/new/town.png
new file mode 100644 (file)
index 0000000..7683143
Binary files /dev/null and b/applet/data/new/town.png differ
diff --git a/applet/data/new/tram.png b/applet/data/new/tram.png
new file mode 100644 (file)
index 0000000..239cbea
Binary files /dev/null and b/applet/data/new/tram.png differ
index 3719a99..76533f3 100644 (file)
@@ -227,6 +227,28 @@ void change_sun(GtkWidget * actor, gpointer data)
         } 
     }
 }
+void change_tram(GtkWidget * actor, gpointer data)
+{
+    double alt, azm;
+    gint x, y, z, scale, sc, daytime;
+    //fprintf(stderr, "change sun \n");
+    if (actor){
+        x = g_object_get_data(G_OBJECT(actor), "x");
+        y = g_object_get_data(G_OBJECT(actor), "y");
+        scale = g_object_get_data(G_OBJECT(actor), "scale");
+        x = x + 5;
+        if (x > 480+350) x = -350;
+        scale = (x + 400) * 50 / 880 + 100;
+        y = y - 240 * (scale-100) / 100;
+        
+        //fprintf(stderr, "scale =%i y=%i\n", y,scale);
+        actor_set_position_full(actor, x, y, g_object_get_data(G_OBJECT(actor), "z"));
+        g_object_set_data(G_OBJECT(actor), "x", x);
+        //g_object_set_data(G_OBJECT(actor), "y", y);
+        hildon_animation_actor_set_scale(actor, (double)scale/100, (double)scale/100);
+        g_object_set_data(G_OBJECT(actor), "scale", scale);
+    }
+}
 
 void change_sky(GtkWidget * actor, gpointer data)
 {
@@ -278,18 +300,66 @@ init_scene(GtkWidget *window)
 
   get_sun_pos(&alt, &azm);
   get_sun_screen_pos(alt, azm, &x, &y);
-  actor = init_object("sun", "sun.png", x, y, 20, 88, 88, 1, 10, 255, &change_sun);
+  actor = init_object("sun", "new/sun.png", x, y, 11, 88, 88, 1, 100, 255, &change_sun);
+  //scene.static_actors = g_slist_append(scene.static_actors, G_OBJECT(actor));
+  scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
+  //ma1->multiactor_init("sun", g_slist_append(list, G_OBJECT(actor)));
+
+  actor = init_object("sky", "new/sky.png", 0, 0, 5, 800, 480, 1, 100, 255, NULL);
+  scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
+
+  actor = init_object("town", "new/town.png", 0, 480-374, 10, 800, 374, 1, 100, 255, NULL);
+  scene.static_actors = g_slist_append(scene.static_actors, G_OBJECT(actor));
+  
+  actor = init_object("border", "new/border.png", 0, 480-79, 30, 800, 79, 1, 100, 255, NULL);
+  scene.static_actors = g_slist_append(scene.static_actors, G_OBJECT(actor));
+  
+  actor = init_object("tram", "new/tram.png", -350, 60+480-374+34, 25, 350, 274, 1, 100, 255, &change_tram);
+  scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
+  
+/*
+  actor = init_object("cloud1", 400, 150, 2, 200, 150, NULL);
+  scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
+
+  actor = init_object("sun", 10, 10, 50, 88, 88, NULL);
+  list = g_slist_append(list, G_OBJECT(actor));
+  actor = init_object("cloud1", 50, 50, 49, 150, 100, NULL);
+  list = g_slist_append(list, G_OBJECT(actor));
+
+  ma1 = multiactor_init("multi", list, 0, 0, 50, 1.0, TRUE);
+  //objects_list = g_slist_append(objects_list, G_OBJECT(ma)); 
+  */
+
+}
+static void
+init_scene1(GtkWidget *window)
+{
+  GtkWidget *actor;
+  GdkPixbuf *pixbuf;
+  GtkWidget *image;
+  double alt, azm;
+  gint x, y;
+  GSList * list = NULL;
+
+  scene.window = window;
+  scene.daytime = get_daytime();
+  scene.dynamic_actors = NULL;
+  scene.static_actors = NULL;
+
+  get_sun_pos(&alt, &azm);
+  get_sun_screen_pos(alt, azm, &x, &y);
+  actor = init_object("sun", "sun.png", x, y, 20, 88, 88, 1, 100, 255, &change_sun);
   //scene.static_actors = g_slist_append(scene.static_actors, G_OBJECT(actor));
   scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
   //ma1->multiactor_init("sun", g_slist_append(list, G_OBJECT(actor)));
 
-  actor = init_object("background", "sky_dark.png", 0, 0, 4, 800, 480, 1, 10, 255, NULL);
+  actor = init_object("background", "sky_dark.png", 0, 0, 4, 800, 480, 1, 100, 255, NULL);
   scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
 
-  actor = init_object("sky", "sky.png", 0, 0, 5, 800, 480, 1, 10, 255, &change_sky);
+  actor = init_object("sky", "sky.png", 0, 0, 5, 800, 480, 1, 100, 255, &change_sky);
   scene.dynamic_actors = g_slist_append(scene.dynamic_actors, G_OBJECT(actor));
 
-  actor = init_object("town", "town.png", 0, 0, 10, 800, 480, 1, 10, 255, NULL);
+  actor = init_object("town", "town.png", 0, 0, 10, 800, 480, 1, 100, 255, NULL);
   scene.static_actors = g_slist_append(scene.static_actors, G_OBJECT(actor));
   
 /*
@@ -307,6 +377,7 @@ init_scene(GtkWidget *window)
 
 }
 
+
 void 
 get_sun_screen_pos(double alt, double azm, gint * x, gint * y)
 {
@@ -392,13 +463,13 @@ change_actor(GtkWidget * actor)
             
         x += 40;
         y -= 20;
-        scale -= 1;
+        scale -= 10;
         if (x > 500){
             x = 400;
             y = 150;
             sc = 1;
         }
-        sc = (double)scale / 10;
+        sc = (double)scale / 100;
         hildon_animation_actor_set_scale(actor, sc, sc);
         fprintf(stderr, "cloud x=%d y=%d scale=%f", x, y, sc);
         actor_set_position_full(actor, x, y, g_object_get_data(G_OBJECT(actor), "z"));
@@ -505,7 +576,7 @@ animation_wallpaper_plugin_init (AWallpaperPlugin *desktop_plugin)
   gtk_container_add (GTK_CONTAINER (desktop_plugin), label);
   init_applet_position();
   init_scene(desktop_plugin);
-  desktop_plugin->timer = g_timeout_add(1000*10, plugin_on_timeout, desktop_plugin);
+  desktop_plugin->timer = g_timeout_add(50, plugin_on_timeout, desktop_plugin);
 }
 
 static void