+ AlignViewport getOriginatingSource(CommandI command)\r
+ {\r
+ AlignViewport originalSource = viewport;\r
+ //For sequence removal and addition, we need to fire\r
+ //the property change event FROM the viewport where the\r
+ //original alignment was altered\r
+ if (command instanceof EditCommand)\r
+ {\r
+ EditCommand editCommand = (EditCommand) command;\r
+ AlignmentI al = editCommand.getAlignment();\r
+ Vector comps = (Vector) PaintRefresher.components\r
+ .get(viewport.getSequenceSetId());\r
+ for (int i = 0; i < comps.size(); i++)\r
+ {\r
+ if (comps.elementAt(i) instanceof AlignmentPanel)\r
+ {\r
+ if (al == ( (AlignmentPanel) comps.elementAt(i)).av.alignment)\r
+ {\r
+ originalSource = ( (AlignmentPanel) comps.elementAt(i)).av;\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ }\r
+ return originalSource;\r
+ }\r