282 |
|
|
283 |
for(Iterator i = buoyqueue.iterator(); i.hasNext(); ) |
for(Iterator i = buoyqueue.iterator(); i.hasNext(); ) |
284 |
((Runnable)i.next()).run(); |
((Runnable)i.next()).run(); |
285 |
|
buoyqueue = new ArrayList(); |
286 |
} |
} |
287 |
|
|
288 |
/** Cause the changes to the zooming and panning variables |
/** Cause the changes to the zooming and panning variables |
301 |
* @return A map, to be used for the next generated vobscene's |
* @return A map, to be used for the next generated vobscene's |
302 |
* DefaultVobMatcher.setKeyMap() method. |
* DefaultVobMatcher.setKeyMap() method. |
303 |
*/ |
*/ |
304 |
public Map setCursorTo(VobScene vs, float x, float y, ViewContext context) { |
public Map setCursorTo(VobScene vs, float x, float y, AbstractViewContext context) { |
305 |
// First, get the frame that was hit. |
// First, get the frame that was hit. |
306 |
// This gives the "frame" coordsys. |
// This gives the "frame" coordsys. |
307 |
int cs = vs.coords.getCSAt(0, x, y, null); |
int cs = vs.coords.getCSAt(0, x, y, null); |
317 |
int vp = ((GLVobCoorder)vs.coords).getParent(cs); |
int vp = ((GLVobCoorder)vs.coords).getParent(cs); |
318 |
Object key = vs.matcher.getKey(vp); |
Object key = vs.matcher.getKey(vp); |
319 |
if("MAINVP".equals(key)) { |
if("MAINVP".equals(key)) { |
320 |
pa("Main viewport - no reaction yet"); |
pa("Main viewport"); |
321 |
|
cs = vs.coords.getCSAt(cs, x, y, null); |
322 |
|
Object k = vs.matcher.getKey(cs); |
323 |
|
pa("Hit: "+cs+" "+k); |
324 |
|
if(!(k instanceof Cell)) { |
325 |
|
pa("Not a cell?!"); |
326 |
|
return null; |
327 |
|
} |
328 |
|
context.setAccursed((Cell)k); |
329 |
|
context.setCursorOffset(1); |
330 |
return null; |
return null; |
331 |
} |
} |
332 |
if(! (key instanceof Pair)) { |
if(! (key instanceof Pair)) { |