/[fenfire]/fenfire/org/fenfire/view/buoy/MainNode2D.java
ViewVC logotype

Diff of /fenfire/org/fenfire/view/buoy/MainNode2D.java

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.26 by mudyc, Sun Jun 22 16:15:35 2003 UTC revision 1.27 by benja, Mon Jun 23 12:25:52 2003 UTC
# Line 1  Line 1 
1  /*  /*
2  PageScrollView2D.java  MainNode2D.java
3   *       *    
4   *    Copyright (c) 2003 by Benja Fallenstein and Matti Katila   *    Copyright (c) 2003 by Benja Fallenstein and Matti Katila
5   *       *    
# Line 31  import org.nongnu.libvob.*; Line 31  import org.nongnu.libvob.*;
31  import org.nongnu.libvob.impl.DefaultVobMatcher;  import org.nongnu.libvob.impl.DefaultVobMatcher;
32  import org.nongnu.libvob.buoy.*;  import org.nongnu.libvob.buoy.*;
33    
 import java.awt.event.MouseEvent;  
   
34  /** A BuoyViewMainNode showing a 2D plane rendered through  /** A BuoyViewMainNode showing a 2D plane rendered through
35   *  a View2D. This class implements the keyboard and mouse   *  a View2D.
  *  command for moving on the spatial plane.  
36   */   */
37  public class MainNode2D extends AbstractMainNode2D {  public class MainNode2D extends AbstractMainNode2D {
38      public static boolean dbg = true;      public static boolean dbg = true;
# Line 95  public class MainNode2D extends Abstract Line 92  public class MainNode2D extends Abstract
92                          focus.getPanX()-boxw/zoom/2, focus.getPanY()-boxh/zoom/2,                          focus.getPanX()-boxw/zoom/2, focus.getPanY()-boxh/zoom/2,
93                                      1/zoom, 1/zoom, boxw, boxh);                                      1/zoom, 1/zoom, boxw, boxh);
94      }      }
   
   
     private float m_state_zoom = -1;  
   
     protected void readMouseState(MouseEvent e, VobScene oldVobScene) {  
         super.readMouseState(e, oldVobScene);  
         m_state_zoom = zoom;  
     }  
   
     public void changeZoom(float change) {  
         zoom = focus.getZoom() * (float) Math.exp(change/150.0);  
         focus.setZoom(zoom);  
     }  
   
     public boolean doMouse(MouseEvent e, VobScene oldVobScene) {  
         // let's zoom!!  
         if (m_state[2] == e.BUTTON2_MASK &&  
             e.getID() == MouseEvent.MOUSE_DRAGGED) {  
             zoom = m_state_zoom * (float)  
                 Math.exp((m_state[1] - e.getY())/150.0);  
             AbstractUpdateManager.setNoAnimation();  
             setZoomPan(oldVobScene, box2screen);  
             return true;  
         }  
   
         return super.doMouse(e, oldVobScene);  
     }  
   
     protected float getZoom() { return zoom; }  
95  }  }

Legend:
Removed from v.1.26  
changed lines
  Added in v.1.27

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26