I seem to have "fixed" the problem. But I an not sure it is the best way to
do it...
I extended the JSVGCanvas and orverrided the installKeyboardActions()
method. In the installKeyboardActions() I commented out the key maps I did
not what.
Not sure if this is a good way to do this? I does work. Any suggestions of a
better way, please tell me.
Thanks.
Below is my code:
public class MyCanvas extends JSVGCanvas {
public MyCanvas() {
super();
}
public MyCanvas(SVGUserAgent ua, boolean eventsEnabled, boolean
selectableText) {
super();
}
// Override the installKeyboardActions() Method in the implementation.
@Override
protected void installKeyboardActions() {
InputMap inputMap = getInputMap(JComponent.WHEN_FOCUSED);
KeyStroke key;
// I comment out the four key Actions I don't want. (So I my
Interactor can use them exclusively.)
/*
key = KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0);
inputMap.put(key, SCROLL_RIGHT_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, 0);
inputMap.put(key, SCROLL_LEFT_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_UP, 0);
inputMap.put(key, SCROLL_UP_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0);
inputMap.put(key, SCROLL_DOWN_ACTION);
*/
key = KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT,
KeyEvent.SHIFT_MASK);
inputMap.put(key, FAST_SCROLL_RIGHT_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, KeyEvent.SHIFT_MASK);
inputMap.put(key, FAST_SCROLL_LEFT_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_UP, KeyEvent.SHIFT_MASK);
inputMap.put(key, FAST_SCROLL_UP_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, KeyEvent.SHIFT_MASK);
inputMap.put(key, FAST_SCROLL_DOWN_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_I, KeyEvent.CTRL_MASK);
inputMap.put(key, ZOOM_IN_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_O, KeyEvent.CTRL_MASK);
inputMap.put(key, ZOOM_OUT_ACTION);
key = KeyStroke.getKeyStroke(KeyEvent.VK_T, KeyEvent.CTRL_MASK);
inputMap.put(key, RESET_TRANSFORM_ACTION);
}
}