+ /**
+ * Handles left mouse button press
+ *
+ * @param evt
+ * @param res
+ */
+ protected void leftMouseButtonPressed(MouseEvent evt, final int res)
+ {
+ if (!evt.isControlDown() && !evt.isShiftDown())
+ {
+ av.getColumnSelection().clear();
+ }
+
+ av.getColumnSelection().addElement(res);
+ SequenceGroup sg = new SequenceGroup();
+ // try to be as quick as possible
+ SequenceI[] iVec = av.getAlignment().getSequencesArray();
+ for (int i = 0; i < iVec.length; i++)
+ {
+ sg.addSequence(iVec[i], false);
+ iVec[i] = null;
+ }
+ iVec = null;
+ sg.setStartRes(res);
+ sg.setEndRes(res);
+
+ if (evt.isShiftDown())
+ {
+ int min = Math.min(av.getColumnSelection().getMin(), res);
+ int max = Math.max(av.getColumnSelection().getMax(), res);
+ for (int i = min; i < max; i++)