return;
}
- if (evt.isShiftDown() || evt.isAltDown() || evt.isControlDown())
+ boolean isControlDown = Platform.isControlDown(evt);
+ if (evt.isShiftDown() || isControlDown)
{
- if (evt.isAltDown() || evt.isControlDown())
+ editingSeqs = true;
+ if (isControlDown)
{
groupEditing = true;
}
- editingSeqs = true;
}
else
{
* set if av.getSelectionGroup() refers to a group that is defined on the
* alignment view, rather than a transient selection
*/
- private boolean editingDefinedGroup = false; // TODO: refactor to avcontroller or viewModel
+ // private boolean editingDefinedGroup = false; // TODO: refactor to
+ // avcontroller or viewModel
/**
* Set status message in alignment panel
final int res = findRes(evt);
final int seq = findSeq(evt);
oldSeq = seq;
+ needOverviewUpdate = false;
startWrapBlock = wrappedBlock;
&& (res < stretchGroup.getEndRes()))
{
av.setSelectionGroup(stretchGroup);
- editingDefinedGroup = true;
}
else
{
stretchGroup = null;
- editingDefinedGroup = false;
}
}
else if (!stretchGroup.getSequences(null).contains(sequence)
&& (allGroups[i].getEndRes() >= res))
{
stretchGroup = allGroups[i];
- editingDefinedGroup = true;
break;
}
}
}
av.setSelectionGroup(stretchGroup);
-
}
if (evt.isPopupTrigger()) // Mac: mousePressed
sg.setEndRes(res);
sg.addSequence(sequence, false);
av.setSelectionGroup(sg);
- editingDefinedGroup = false;
stretchGroup = sg;
if (av.getConservationSelected())
// always do this - annotation has own state
// but defer colourscheme update until hidden sequences are passed in
boolean vischange = stretchGroup.recalcConservation(true);
- needOverviewUpdate |= vischange && editingDefinedGroup;
+ needOverviewUpdate |= vischange && av.isSelectionDefinedGroup();
if (stretchGroup.cs != null)
{
stretchGroup.cs.alignmentChanged(stretchGroup,
}
PaintRefresher.Refresh(this, av.getSequenceSetId());
ap.paintAlignment(needOverviewUpdate);
- needOverviewUpdate =false;
- editingDefinedGroup = false;
+ needOverviewUpdate = false;
changeEndRes = false;
changeStartRes = false;
stretchGroup = null;
if (res > (stretchGroup.getStartRes() - 1))
{
stretchGroup.setEndRes(res);
- needOverviewUpdate |= editingDefinedGroup;
+ needOverviewUpdate |= av.isSelectionDefinedGroup();
}
}
else if (changeStartRes)
if (res < (stretchGroup.getEndRes() + 1))
{
stretchGroup.setStartRes(res);
- needOverviewUpdate |= editingDefinedGroup;
+ needOverviewUpdate |= av.isSelectionDefinedGroup();
}
}
if (stretchGroup.getSequences(null).contains(nextSeq))
{
stretchGroup.deleteSequence(seq, false);
- needOverviewUpdate |= editingDefinedGroup;
+ needOverviewUpdate |= av.isSelectionDefinedGroup();
}
else
{
}
stretchGroup.addSequence(nextSeq, false);
- needOverviewUpdate |= editingDefinedGroup;
+ needOverviewUpdate |= av.isSelectionDefinedGroup();
}
}
{
if (av.getAlignment() == null)
{
- Cache.log.warn("alignviewport av SeqSetId="
- + av.getSequenceSetId() + " ViewId=" + av.getViewId()
+ Cache.log.warn("alignviewport av SeqSetId=" + av.getSequenceSetId()
+ + " ViewId=" + av.getViewId()
+ " 's alignment is NULL! returning immediately.");
return;
}