/[fenfire]/fenfire/org/fenfire/modules/pp/PPCanvasCursor.java
ViewVC logotype

Diff of /fenfire/org/fenfire/modules/pp/PPCanvasCursor.java

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

revision 1.3 by mudyc, Fri Apr 4 23:25:06 2003 UTC revision 1.4 by mudyc, Sat Apr 5 20:26:34 2003 UTC
# Line 158  private static final String rcsid = "$Id Line 158  private static final String rcsid = "$Id
158              setZoomPan(vs, into);              setZoomPan(vs, into);
159              // XXX SinglePaper.i(space, d, window, current).render(vs, into, c2fCS, c2fCSInv, hook);              // XXX SinglePaper.i(space, d, window, current).render(vs, into, c2fCS, c2fCSInv, hook);
160          } else {          } else {
   
             // kludge  
             int focusCtr = vs.matcher.getCS("FocusCtr");  
   
161              int zo = (int)(zoom * 100000);              int zo = (int)(zoom * 100000);
162              int geometry = vs.orthoCS(0, "FocusGeometry",0, zo,0, panx, pany);                int geometry = vs.orthoCS(0, "FocusGeometry",0, zo,0, panx, pany);  
163                            
164              //vs.map.put(new UniquePaperVob(URN5Namespace.instance.generateId()), into, geometry);              vs.map.put(new UniquePaperVob(URN5Namespace.instance.generateId()), into, geometry);
165              (new SpatialPlane(PP.noteType, PP.contains)).renderAWT(vs, into, geometry, node, space, hook);              (new SpatialPlane(PP.noteType, PP.contains)).renderAWT(vs, into, geometry, node, space, hook);
166          }          }
167      }      }
# Line 179  private static final String rcsid = "$Id Line 175  private static final String rcsid = "$Id
175      private int [] m_state = null;      private int [] m_state = null;
176      private float m_state_zoom = -1;      private float m_state_zoom = -1;
177      public boolean mouse(MouseEvent e, VobScene oldVobScene) {      public boolean mouse(MouseEvent e, VobScene oldVobScene) {
         pa("mouse e"+e+" pans: "+panx+", "+pany);  
   
178          if (e.getID() == MouseEvent.MOUSE_PRESSED) {          if (e.getID() == MouseEvent.MOUSE_PRESSED) {
179              m_state = new int[]{ e.getX(), e.getY(), e.getModifiers()};              m_state = new int[]{ e.getX(), e.getY(), e.getModifiers()};
180              m_state_zoom = zoom;              m_state_zoom = zoom;
# Line 188  private static final String rcsid = "$Id Line 182  private static final String rcsid = "$Id
182          }          }
183          if (m_state == null) throw new Error("Mouse state not found!");          if (m_state == null) throw new Error("Mouse state not found!");
184    
         if (m_state[2] == e.BUTTON1_MASK){  
185    
186              float[] pt = new float[] { e.getX(), e.getY(), 0 };          if (m_state[2] == e.BUTTON3_MASK) {
               
             // We must transform into Frame, and then the C2F coordinate system  
             int mainctrCS = ((DefaultVobMatcher)oldVobScene.matcher).getCS(0, "Center");  
             pa("mainctr"+ mainctrCS);  
   
             int frame = ((DefaultVobMatcher)oldVobScene.matcher).getCS(mainctrCS, "MAINVP");  
             int c2f = ((DefaultVobMatcher)oldVobScene.matcher).getCS(frame, "C2F");  
             if (c2f < 0) c2f = c2fCS;  
             if(frame < 0 || c2f < 0)  
                 throw new Error("No cs point!"+frame+" "+c2f);  
                   
             // XXX vp, not frame!  
             oldVobScene.coords.inverseTransformPoints3(mainctrCS, pt, pt);  
             oldVobScene.coords.inverseTransformPoints3(c2f, pt, pt);  
             panx = pt[0]; pany = pt[1];  
187                            
188              // XXX current = current.h(d.contains);                // let's zoom!!
189              AbstractUpdateManager.chg();              zoom = m_state_zoom * (float)
190                    Math.exp((m_state[1] - e.getY())/150.0);
191                return true;
192            }
193    
194    
195    
196            if (m_state[2] == e.BUTTON1_MASK){
197    
198                if (GraphicsAPI.getInstance() instanceof GLAPI) {
199                    float[] pt = new float[] { e.getX(), e.getY(), 0 };
200                    
201                    // We must transform into Frame, and then the C2F coordinate system
202                    int mainctrCS = ((DefaultVobMatcher)oldVobScene.matcher).getCS(0, "Center");
203                    pa("mainctr"+ mainctrCS);
204                    
205                    int frame = ((DefaultVobMatcher)oldVobScene.matcher).getCS(mainctrCS, "MAINVP");
206                    int c2f = ((DefaultVobMatcher)oldVobScene.matcher).getCS(frame, "C2F");
207                    if (c2f < 0) c2f = c2fCS;
208                    if(frame < 0 || c2f < 0)
209                        throw new Error("No cs point!"+frame+" "+c2f);
210                    
211                    // XXX vp, not frame!
212                    oldVobScene.coords.inverseTransformPoints3(mainctrCS, pt, pt);
213                    oldVobScene.coords.inverseTransformPoints3(c2f, pt, pt);
214                    panx = pt[0]; pany = pt[1];
215                    
216                    // XXX current = current.h(d.contains);  
217                    AbstractUpdateManager.chg();
218                } else {
219                    
220                    
221    
222                }
223              return false;              return false;
224          }          }
225    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

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