Enlightenment CVS committal

Author  : monkeyiq
Project : misc
Module  : feh

Dir     : misc/feh/src


Modified Files:
        sixdof.c 


Log Message:
Better support for pressure sensitive 6dof

===================================================================
RCS file: /cvs/e/misc/feh/src/sixdof.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- sixdof.c    22 Apr 2008 13:50:33 -0000      1.2
+++ sixdof.c    23 Apr 2008 03:44:48 -0000      1.3
@@ -24,24 +24,26 @@
     }
 }
 
-void slideshow_zoom_in()
+void slideshow_zoom_in( double v )
 {
     winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
     if( w )
     {
-        w->zoom = w->zoom * 1.05;
+        printf("slideshow_zoom_in() v:%f\n",v);
+        w->zoom = w->zoom * (1 + ( v * 0.25 ) );
         w->im_x = (w->w - (w->zoom*w->im_w)) / 2;
         w->im_y = (w->h - (w->zoom*w->im_h)) / 2;
         winwidget_render_image(w, 0, 0);
     }
 }
 
-void slideshow_zoom_out()
+void slideshow_zoom_out( double v )
 {
     winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
     if( w )
     {
-        w->zoom = w->zoom * 0.95;
+        printf("slideshow_zoom_out() v:%f\n",v);
+        w->zoom = w->zoom * (1 + ( v * 0.25 ) );
         w->im_x = (w->w - (w->zoom*w->im_w)) / 2;
         w->im_y = (w->h - (w->zoom*w->im_h)) / 2;
         winwidget_render_image(w, 0, 0);
@@ -79,6 +81,46 @@
     }
 }
 
+void move_left( double v )
+{
+    winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
+    if( w )
+    {
+        w->im_x = w->im_x - (v * 40);
+        winwidget_render_image(w, 0, 0);
+    }
+}
+
+void move_right( double v )
+{
+    winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
+    if( w )
+    {
+        w->im_x = w->im_x - (v * 40);
+        winwidget_render_image(w, 0, 0);
+    }
+}
+
+void move_up( double v )
+{
+    winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
+    if( w )
+    {
+        w->im_y = w->im_y + (v * 40);
+        winwidget_render_image(w, 0, 0);
+    }
+}
+
+void move_down( double v )
+{
+    winwidget w = winwidget_get_first_window_of_type( WIN_TYPE_SLIDESHOW );
+    if( w )
+    {
+        w->im_y = w->im_y + (v * 40);
+        winwidget_render_image(w, 0, 0);
+    }
+}
+
 
 
 void sixdof_init( Display* disp )
@@ -88,10 +130,15 @@
 
    libsixdof_registerTrivialCallableFunction( sdof, "slideshow-next", "", 
&slideshow_next );
    libsixdof_registerTrivialCallableFunction( sdof, "slideshow-prev", "", 
&slideshow_prev );
-   libsixdof_registerTrivialCallableFunction( sdof, "zoom-in",        "", 
&slideshow_zoom_in );
-   libsixdof_registerTrivialCallableFunction( sdof, "zoom-out",       "", 
&slideshow_zoom_out );
+   libsixdof_registerCallableFunction( sdof, "zoom-in",        "", 
&slideshow_zoom_in );
+   libsixdof_registerCallableFunction( sdof, "zoom-out",       "", 
&slideshow_zoom_out );
    libsixdof_registerTrivialCallableFunction( sdof, "rotate-clockwise","", 
&slideshow_rotate_clockwise );
    libsixdof_registerTrivialCallableFunction( sdof, "rotate-anticlockwise","", 
&slideshow_rotate_anticlockwise );
+
+   libsixdof_registerCallableFunction( sdof, "move-up",   "", &move_up );
+   libsixdof_registerCallableFunction( sdof, "move-down", "", &move_down );
+   libsixdof_registerCallableFunction( sdof, "move-left", "", &move_left );
+   libsixdof_registerCallableFunction( sdof, "move-right","", &move_right );
 }
 
 



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to