case KeyEvent.VK_SPACE:\r
if(av.cursorMode)\r
{\r
- seqPanel.insertGapAtCursor(evt.isControlDown());\r
+ seqPanel.insertGapAtCursor(evt.isControlDown() || evt.isShiftDown());\r
}\r
break;\r
\r
case KeyEvent.VK_DELETE:\r
if(av.cursorMode)\r
{\r
- seqPanel.deleteGapAtCursor(evt.isControlDown());\r
- break;\r
+ seqPanel.deleteGapAtCursor(evt.isControlDown() || evt.isShiftDown());\r
}\r
+ break;\r
\r
case KeyEvent.VK_BACK_SPACE:\r
if(!av.cursorMode)\r
}\r
break;\r
\r
+ case KeyEvent.VK_S:\r
+ if(av.cursorMode)\r
+ {\r
+ seqPanel.setCursorRow();\r
+ }\r
+ break;\r
+ case KeyEvent.VK_C:\r
+ if(av.cursorMode)\r
+ {\r
+ seqPanel.setCursorColumn();\r
+ }\r
+ break;\r
+ case KeyEvent.VK_P:\r
+ if(av.cursorMode)\r
+ {\r
+ seqPanel.setCursorPosition();\r
+ }\r
+ break;\r
+\r
+ case KeyEvent.VK_ENTER:\r
+ case KeyEvent.VK_COMMA:\r
+ if(av.cursorMode)\r
+ {\r
+ seqPanel.setCursorRowAndColumn();\r
+ }\r
+ break;\r
+\r
case KeyEvent.VK_Q:\r
if(av.cursorMode)\r
{\r
}\r
else\r
{\r
- int cwidth = seqPanel.seqCanvas.getWrappedCanvasWidth(seqPanel.seqCanvas.getWidth());\r
- if( start<av.getStartRes() || start>(av.getStartRes()+cwidth) )\r
- {\r
- vscroll.setValue(start / cwidth);\r
- av.startRes = vscroll.getValue() * cwidth;\r
- }\r
+ scrollToWrappedVisible(start);\r
}\r
}\r
}\r
\r
+ void scrollToWrappedVisible(int res)\r
+ {\r
+ int cwidth = seqPanel.seqCanvas.getWrappedCanvasWidth(seqPanel.seqCanvas.getWidth());\r
+ if( res<=av.getStartRes() || res>=(av.getStartRes()+cwidth) )\r
+ {\r
+ vscroll.setValue(res / cwidth);\r
+ av.startRes = vscroll.getValue() * cwidth;\r
+ }\r
+ }\r
+\r
/**\r
* DOCUMENT ME!\r
*\r