- removed dependencies to LibrAlign
authorPatric Plitzner <p.plitzner@bgbm.org>
Wed, 15 Jul 2015 10:43:01 +0000 (10:43 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Wed, 15 Jul 2015 10:43:01 +0000 (10:43 +0000)
32 files changed:
.gitattributes
eu.etaxonomy.taxeditor.editor/.classpath
eu.etaxonomy.taxeditor.editor/.project
eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/build.properties
eu.etaxonomy.taxeditor.editor/lib/commons-lang3-3.1.jar [deleted file]
eu.etaxonomy.taxeditor.editor/lib/core-1.8.5.jar [deleted file]
eu.etaxonomy.taxeditor.editor/lib/sequencing-1.8.5.jar [deleted file]
eu.etaxonomy.taxeditor.editor/plugin.xml
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorUtil.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditSequenceHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/LoadPherogramHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenAlignmentEditorHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/ShowPherogramHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SpecimenPropertyTester.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractAlignmentEditorHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractPherogramComponentHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ChangePherogramQualityOutputType.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CreateConsensusSequenceHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramLeftHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramRightHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ReverseComplementHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleInsertOverwriteHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleLeftRightInsertionHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramBaseCallLinesHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramProbabilitiesHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/UpdateConsensusSequenceHandler.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/package-info.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditor.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditorInput.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramMouseListener.java [deleted file]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramViewPart.java [deleted file]

index d734c42..a09fc59 100644 (file)
@@ -376,9 +376,6 @@ eu.etaxonomy.taxeditor.editor/icons/pherogram-insert-left-disabled-16x16.png -te
 eu.etaxonomy.taxeditor.editor/icons/pherogram-insert-right-16x16.png -text
 eu.etaxonomy.taxeditor.editor/icons/pherogram-insert-right-disabled-16x16.png -text
 eu.etaxonomy.taxeditor.editor/icons/xper64.png -text
-eu.etaxonomy.taxeditor.editor/lib/commons-lang3-3.1.jar -text
-eu.etaxonomy.taxeditor.editor/lib/core-1.8.5.jar -text
-eu.etaxonomy.taxeditor.editor/lib/sequencing-1.8.5.jar -text
 eu.etaxonomy.taxeditor.editor/p2.inf -text
 eu.etaxonomy.taxeditor.editor/plugin.xml -text
 eu.etaxonomy.taxeditor.editor/pom.xml -text
@@ -404,32 +401,14 @@ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditorInput.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditNewTaxonHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditSequenceHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/HandlerTools.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/LoadPherogramHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenAlignmentEditorHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenParentHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenTaxonEditorHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SaveAllHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SaveTaxonHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/ShowPherogramHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SpecimenPropertyTester.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/TaxonParameterConverter.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractAlignmentEditorHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractPherogramComponentHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ChangePherogramQualityOutputType.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CreateConsensusSequenceHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramLeftHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramRightHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ReverseComplementHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleInsertOverwriteHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleLeftRightInsertionHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramBaseCallLinesHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramProbabilitiesHandler.java -text svneol=unset#text/plain
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/UpdateConsensusSequenceHandler.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/package-info.java -text svneol=unset#text/plain
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/create/NewNameHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/create/NewPersonHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/create/NewReferenceHandler.java -text
@@ -457,10 +436,6 @@ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/po
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/CreateNodeOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/RefreshNodeNumberingOperation.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditor.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditorInput.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramMouseListener.java -text
-eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramViewPart.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroup.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java -text
index 078bb01..856e9f9 100644 (file)
@@ -1,22 +1,9 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.bio/"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.core/"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.experimental/"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.commons.swt/"/>\r
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>\r
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>\r
-       <classpathentry including="**/*.java" kind="src" path="src/main/java"/>\r
-       <classpathentry including="**/*.java" kind="src" path="src/test/java"/>\r
-       <classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/core-1.8.5.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/sequencing-1.8.5.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/commons-lang3-3.1.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/JPhyloIO" sourcepath="lib/JPhyloIO"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.core"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.swt"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.tic.core"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.tic.swt"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/info.bioinfweb.libralign.biojava1"/>\r
-       <classpathentry kind="output" path="target/classes"/>\r
-</classpath>\r
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+       <classpathentry including="**/*.java" kind="src" path="src/main/java"/>
+       <classpathentry including="**/*.java" kind="src" path="src/test/java"/>
+       <classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
+       <classpathentry kind="output" path="target/classes"/>
+</classpath>
index 501b29e..f03a32a 100644 (file)
                <nature>org.eclipse.jdt.core.javanature</nature>\r
                <nature>org.eclipse.pde.PluginNature</nature>\r
        </natures>\r
-       <linkedResources>\r
-               <link>\r
-                       <name>lib/JPhyloIO</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/JPhyloIO/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.commons.bio</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.commons.bio/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.commons.core</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.commons.core/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.commons.experimental</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.commons.experimental/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.commons.swt</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.commons.swt/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.libralign.biojava1</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.libralign.biojava1/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.libralign.core</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.libralign.core/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.libralign.swt</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.libralign.swt/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.tic.core</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.tic.core/bin</locationURI>\r
-               </link>\r
-               <link>\r
-                       <name>lib/info.bioinfweb.tic.swt</name>\r
-                       <type>2</type>\r
-                       <locationURI>WORKSPACE_LOC/info.bioinfweb.tic.swt/bin</locationURI>\r
-               </link>\r
-       </linkedResources>\r
 </projectDescription>\r
index ebfb625..bcd8ff0 100644 (file)
@@ -177,17 +177,4 @@ Bundle-ClassPath: .,
  jdimodel.jar,
  pdebuild.jar,
  compatibility.jar,
- junit.jar,
- lib/core-1.8.5.jar,
- lib/sequencing-1.8.5.jar,
- lib/commons-lang3-3.1.jar,
- lib/JPhyloIO/,
- lib/info.bioinfweb.libralign.core/,
- lib/info.bioinfweb.libralign.swt/,
- lib/info.bioinfweb.tic.core/,
- lib/info.bioinfweb.tic.swt/,
- lib/info.bioinfweb.libralign.biojava1/,
- lib/info.bioinfweb.commons.bio/,
- lib/info.bioinfweb.commons.core/,
- lib/info.bioinfweb.commons.experimental/,
- lib/info.bioinfweb.commons.swt/
+ junit.jar
index 8d591c2..5179263 100644 (file)
@@ -6,17 +6,4 @@ bin.includes = META-INF/,\
                icons/,\
                p2.inf,\
                OSGI-INF/l10n/plugin.properties,\
-               OSGI-INF/l10n/plugin_de.properties,\
-               lib/core-1.8.5.jar,\
-               lib/sequencing-1.8.5.jar,\
-               lib/commons-lang3-3.1.jar,\
-               lib/JPhyloIO/,\
-               lib/info.bioinfweb.libralign.core/,\
-               lib/info.bioinfweb.libralign.swt/,\
-               lib/info.bioinfweb.tic.core/,\
-               lib/info.bioinfweb.tic.swt/,\
-               lib/info.bioinfweb.libralign.biojava1/,\
-               lib/info.bioinfweb.commons.bio/,\
-               lib/info.bioinfweb.commons.core/,\
-               lib/info.bioinfweb.commons.experimental/,\
-               lib/info.bioinfweb.commons.swt/
+               OSGI-INF/l10n/plugin_de.properties
diff --git a/eu.etaxonomy.taxeditor.editor/lib/commons-lang3-3.1.jar b/eu.etaxonomy.taxeditor.editor/lib/commons-lang3-3.1.jar
deleted file mode 100644 (file)
index a85e539..0000000
Binary files a/eu.etaxonomy.taxeditor.editor/lib/commons-lang3-3.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.editor/lib/core-1.8.5.jar b/eu.etaxonomy.taxeditor.editor/lib/core-1.8.5.jar
deleted file mode 100644 (file)
index c6c7bdc..0000000
Binary files a/eu.etaxonomy.taxeditor.editor/lib/core-1.8.5.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.editor/lib/sequencing-1.8.5.jar b/eu.etaxonomy.taxeditor.editor/lib/sequencing-1.8.5.jar
deleted file mode 100644 (file)
index b987ebe..0000000
Binary files a/eu.etaxonomy.taxeditor.editor/lib/sequencing-1.8.5.jar and /dev/null differ
index d16220b..39e3bc0 100644 (file)
             id="eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor"
             name="%editor.name.8">
       </editor>
-      <editor
-            class="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor"
-            default="false"
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor"
-            name="Alignment Editor">
-      </editor>
    </extension>
       <extension
             id="eu.etaxonomy.taxeditor.editor.molecular.PherogramView"
                id="eu.etaxonomy.taxeditor.editor.view.validation.problems"
                name="%view.name.6">
          </view>
-         <view
-               allowMultiple="true"
-               class="eu.etaxonomy.taxeditor.editor.molecular.PherogramViewPart"
-               id="eu.etaxonomy.taxeditor.editor.molecular.PherogramView"
-               name="PherogramView"
-               restorable="true">
-         </view>
       </extension>
       <!-- VALIDATION RELATED STUFF -->
        <extension point="org.eclipse.core.resources.markers" name="%extension.name.0" id="eu.etaxonomy.taxeditor.markers.validationerror">
                label="%command.label.54"
                style="push">
          </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.editor.editSequence"
-               label="Edit Sequence"
-               style="push">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isSequence">
-               </reference>
-            </visibleWhen>
-         </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.editor.showPherogram"
-               label="Show Pherogram"
-               style="push">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isSingleRead">
-               </reference>
-            </visibleWhen>
-         </command>
          <dynamic
                class="eu.etaxonomy.taxeditor.editor.view.derivate.contextMenu.DerivateViewContextMenu"
                id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateContextMenu">
          </command>
       </menuContribution>
       <menuContribution
-            allPopups="false"
-            locationURI="menu:org.eclipse.ui.main.menu">
-         <menu
-               label="View">
-            <menu
-                  label="Pherogram">
-               <command
-                     commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.changeQualityOutput"
-                     style="push">
-               </command>
-               <command
-                     commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowProbabilities"
-                     style="push">
-               </command>
-               <command
-                     commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowBaseCallLines"
-                     style="push">
-               </command>
-               <visibleWhen
-                     checkEnabled="true">
-                  <with
-                        variable="activePartId">
-                     <or>
-                        <equals
-                              value="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor">
-                        </equals>
-                        <equals
-                              value="eu.etaxonomy.taxeditor.editor.molecular.PherogramView">
-                        </equals>
-                     </or>
-                  </with>
-               </visibleWhen>
-            </menu>
-         </menu>
-         <menu
-               label="Alignment Editor">
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.loadPherogram"
-                  style="push">
-            </command>
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramLeft"
-                  id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramLeft"
-                  name="Cut pherogram left">
-            </command>
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramRight"
-                  id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramRight"
-                  style="push">
-            </command>
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.reverseComplementRows"
-                  mnemonic="r"
-                  style="push">
-            </command>
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.createConsensus"
-                  style="push">
-            </command>
-            <command
-                  commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.updateConsensus"
-                  style="push">
-            </command>
-            <visibleWhen
-                  checkEnabled="true">
-               <with
-                     variable="activePartId">
-                  <equals
-                        value="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor">
-                  </equals>
-               </with>
-            </visibleWhen>
-         </menu>
-      </menuContribution>
-      <menuContribution
             locationURI="toolbar:org.eclipse.ui.main.toolbar?after=eu.etaxonomy.taxeditor.navigation.search.toolbar">
          <toolbar
                id="eu.etaxonomy.taxeditor.editor.alignmentToolbar">
             commandId="eu.etaxonomy.taxeditor.editor.handler.OpenChecklistEditorHandler">
       </handler>
       <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.LoadPherogramHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.loadPherogram">
-         <activeWhen>
-            <with
-                  variable="activePartId">
-               <equals
-                     value="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor">
-               </equals>
-            </with>
-         </activeWhen>
-      </handler>
-      <handler
             class="eu.etaxonomy.taxeditor.editor.view.derivate.handler.DeleteDerivateHandler"
             commandId="eu.etaxonomy.taxeditor.editor.view.derivate.command.delete">
          <activeWhen>
             class="eu.etaxonomy.taxeditor.editor.view.descriptive.handler.ToggleShowOnlyIndividualAssociationsHandler"
             commandId="eu.etaxonomy.taxeditor.editor.handler.showOnlyIndividualAssociations">
       </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleInsertOverwriteHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleInsertOverwrite">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleLeftRightInsertionHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleLeftRightInsertion">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.CutPherogramLeftHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramLeft">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.CutPherogramRightHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramRight">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ReverseComplementHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.reverseComplementRows">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.CreateConsensusSequenceHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.createConsensus">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.UpdateConsensusSequenceHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.updateConsensus">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleShowPherogramProbabilitiesHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowProbabilities">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleShowPherogramBaseCallLinesHandler"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowBaseCallLines">
-      </handler>
-      <handler
-            class="eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ChangePherogramQualityOutputType"
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.changeQualityOutput">
-      </handler>
    </extension>
    <extension
          name="%extension.name"
             name="%command.name.39">
       </command>
       <command
-            defaultHandler="eu.etaxonomy.taxeditor.editor.handler.OpenAlignmentEditorHandler"
-            id="eu.etaxonomy.taxeditor.editor.handler.OpenAlignmentEditor"
-            name="Open Alignment Editor">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.loadPherogram"
-            name="Load Pherogram">
-      </command>
-      <command
             id="eu.etaxonomy.taxeditor.editor.handler.showOnlyIndividualAssociations"
             name="%command.name.41">
       </command>
       <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleInsertOverwrite"
-            name="Toggle insert/overwrite">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleLeftRightInsertion"
-            name="Toggle left/right insertion in base call sequence">
-      </command>
-      <command
             defaultHandler="eu.etaxonomy.taxeditor.editor.handler.OpenTaxonEditorHandler"
             id="eu.etaxonomy.taxeditor.editor.openTaxonEditor"
             name="%command.name.42">
             id="eu.etaxonomy.taxeditor.description.commands.moveDescriptionElements"
             name="%command.name.12">
       </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.editor.handler.EditSequenceHandler"
-            id="eu.etaxonomy.taxeditor.editor.editSequence"
-            name="Edit Sequence">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.editor.handler.ShowPherogramHandler"
-            id="eu.etaxonomy.taxeditor.editor.showPherogram"
-            name="Show Pherogram">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramLeft"
-            name="Cut pherogram left">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.cutPherogramRight"
-            name="Cut pherogram right">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.reverseComplementRows"
-            name="Reverse complement selected rows">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.createConsensus"
-            name="(Re)create consensus sequence">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.updateConsensus"
-            name="Update consensus sequence">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowProbabilities"
-            name="Toggle show probability values">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.toggleShowBaseCallLines"
-            name="Toggle show base call lines">
-      </command>
-      <command
-            id="eu.etaxonomy.taxeditor.editor.molecular.pherogramComponent.changeQualityOutput"
-            name="Change quality output">
-      </command>
    </extension>
    <extension
          point="org.eclipse.core.expressions.definitions">
             </test>
          </with>
       </definition>
-      <definition
-            id="isSequence">
-         <with
-               variable="selection">
-            <test
-                  property="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester.isSequence">
-            </test>
-         </with>
-      </definition>
-      <definition
-            id="isSingleRead">
-         <with
-               variable="selection">
-            <test
-                  property="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester.isSingleRead">
-            </test>
-         </with>
-      </definition>
    </extension>
    <extension
          point="org.eclipse.core.expressions.propertyTesters">
             properties="isGroupEditor"
             type="eu.etaxonomy.taxeditor.bulkeditor.BulkEditor">
       </propertyTester>
-      <propertyTester
-            class="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
-            id="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
-            namespace="eu.etaxonomy.taxeditor.editor.handler.SpecimenPropertyTester"
-            properties="isSequence,isSingleRead"
-            type="org.eclipse.jface.viewers.IStructuredSelection">
-      </propertyTester>
-   </extension>
-   <extension
-         point="org.eclipse.ui.bindings">   
-      <scheme
-            description="%scheme.description"
-            id="eu.etaxonomy.taxeditor.bindings.scheme.default"
-            name="%scheme.name">
-      </scheme>
-      <key
-            commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.loadPherogram"
-            schemeId="eu.etaxonomy.taxeditor.bindings.scheme.default"
-            sequence="M1+O">
-      </key>
    </extension>
     <extension
          point="org.eclipse.ui.importWizards">
index d923dd9..c935014 100644 (file)
@@ -37,8 +37,6 @@ import eu.etaxonomy.taxeditor.editor.group.authority.CdmAuthorityEditorInput;
 import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
 import eu.etaxonomy.taxeditor.editor.key.KeyEditor;
 import eu.etaxonomy.taxeditor.editor.key.polytomous.PolytomousKeyEditorInput;
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditorInput;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditor;
 import eu.etaxonomy.taxeditor.editor.view.checklist.ChecklistEditorInput;
 import eu.etaxonomy.taxeditor.editor.view.dataimport.BioCaseEditorInput;
@@ -123,16 +121,6 @@ public class EditorUtil extends AbstractUtility {
        }
 
        /**
-        * Opens a new AlignmentEditor for the given input
-        * @param input
-        * @throws PartInitException
-        */
-       public static void open(AlignmentEditorInput input)
-               throws PartInitException {
-           open(input, AlignmentEditor.ID);
-       }
-
-       /**
         * Opens a new {@link DataImportEditor} for the given input
         * @param input a {@link DataImportEditorInput}
         * @throws PartInitException
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditSequenceHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditSequenceHandler.java
deleted file mode 100644 (file)
index 74926e0..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-package eu.etaxonomy.taxeditor.editor.handler;
-
-
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TreeNode;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.handlers.HandlerUtil;
-
-import eu.etaxonomy.cdm.model.molecular.Sequence;
-import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditorInput;
-
-
-
-/**
- * Opens the alignment editor from the CDM tree.
- *
- * @author Ben St&ouml;ver
- * @author pplitzner
- */
-public class EditSequenceHandler extends AbstractHandler {
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
-        ISelection currentSelection = HandlerUtil.getCurrentSelection(event);
-        TreeNode treeNodeOfSelection = EditorUtil.getTreeNodeOfSelection(currentSelection);
-        if(treeNodeOfSelection != null && treeNodeOfSelection.getValue() instanceof Sequence){
-            AlignmentEditorInput input = new AlignmentEditorInput(((Sequence)treeNodeOfSelection.getValue()).getUuid());  //TODO Should there always be a new instance created here? What if the specified CDM node is already opened in an AlignmentEditor? => Possible create Singleton that keeps instances by sequence objects in a map.
-            try {
-                EditorUtil.open(input);
-            }
-            catch (PartInitException e) {
-                // TODO Auto-generated catch block
-                e.printStackTrace();
-            }
-        }
-        return null;
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/LoadPherogramHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/LoadPherogramHandler.java
deleted file mode 100644 (file)
index a803a64..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
-* Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
-* http://www.e-taxonomy.eu
-* 
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.handler;
-
-
-import java.io.File;
-import java.io.IOException;
-
-import org.biojava.bio.chromatogram.UnsupportedChromatogramFormatException;
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.ui.IEditorPart;
-
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;
-import eu.etaxonomy.taxeditor.model.AbstractUtility;
-import eu.etaxonomy.taxeditor.model.MessagingUtils;
-
-
-
-/**
- * Handler that loads an additional read into the contig alignment displayed by an instance of {@link AlignmentEditor}.
- * 
- * @author Ben Stöver
- * @author pplitzner
- */
-public class LoadPherogramHandler extends AbstractHandler {
-       //TODO Change so that also URIs which do not point to files can be specified.
-       
-       /* (non-Javadoc)
-     * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-     */
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
-        IEditorPart activeEditor = AbstractUtility.getActiveEditor();
-        if (activeEditor instanceof AlignmentEditor) {
-            AlignmentEditor alignmentEditor = (AlignmentEditor)activeEditor;
-            
-            FileDialog fileDialog = new FileDialog(alignmentEditor.getSite().getShell());
-            fileDialog.setText("Import pherogram into contig alignment");
-            fileDialog.setFilterNames(new String[]{"All supported formats", "AB1 pherogram files", "SCF pherogram files", "All files"});
-            fileDialog.setFilterExtensions(new String[]{"*.ab1;*.scf", "*.ab1", "*.scf", "*.*"});
-            
-            String path = fileDialog.open();
-            if (path != null) {
-               try {
-                       alignmentEditor.addRead(new File(path).toURI(), false);
-               }
-               catch (UnsupportedChromatogramFormatException e) {
-                    MessagingUtils.errorDialog("Unsupported format", this, "The format of the pherogram file \"" + path + 
-                               "\" is not supported. (Only AB1 and SCF are supported.)", "eu.etaxonomy.taxeditor.editor", e, false);  //TODO set pluginID
-               }
-               catch (IOException e) {
-                    MessagingUtils.errorDialog("Unsupported format", this, 
-                               "An IO error occurred while trying to read the file \"" + path + "\".", 
-                               "/eu.etaxonomy.taxeditor.editor", e, false);  //TODO set pluginID
-               }
-            }
-        }
-        return null;
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenAlignmentEditorHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenAlignmentEditorHandler.java
deleted file mode 100644 (file)
index 4350fa2..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2014 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.handler;
-
-
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.ui.PartInitException;
-
-import eu.etaxonomy.taxeditor.editor.EditorUtil;
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditorInput;
-import eu.etaxonomy.taxeditor.model.MessagingUtils;
-
-
-
-/**
- * Opens the {@link AlignmentEditor}.
- * 
- * @author pplitzner
- * @date 04.08.2014
- */
-@Deprecated
-public class OpenAlignmentEditorHandler extends AbstractHandler {
-    /* (non-Javadoc)
-     * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-     */
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
-        AlignmentEditorInput input = new AlignmentEditorInput(null);  //TODO Does it make sense to start an empty editor?
-        try {
-            EditorUtil.open(input);
-        } 
-        catch (PartInitException e) {
-            MessagingUtils.error(OpenAlignmentEditorHandler.class, "Could not open AlignmentEditor", e);
-        }
-        return null;
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/ShowPherogramHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/ShowPherogramHandler.java
deleted file mode 100644 (file)
index bfd2141..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-package eu.etaxonomy.taxeditor.editor.handler;\r
-\r
-\r
-import info.bioinfweb.libralign.pherogram.model.PherogramComponentModel;\r
-\r
-import java.net.URI;\r
-\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.jface.viewers.ISelection;\r
-import org.eclipse.jface.viewers.TreeNode;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.handlers.HandlerUtil;\r
-\r
-import eu.etaxonomy.cdm.model.media.MediaUtils;\r
-import eu.etaxonomy.cdm.model.molecular.SingleRead;\r
-import eu.etaxonomy.taxeditor.editor.EditorUtil;\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.editor.molecular.PherogramViewPart;\r
-import eu.etaxonomy.taxeditor.model.MessagingUtils;\r
-\r
-\r
-\r
-/**\r
- * Displays an undistorted pherogram with {@link PherogramViewPart}.\r
- *\r
- * @author Ben Stöver\r
- *\r
- */\r
-public class ShowPherogramHandler extends AbstractHandler {\r
-       public static void showPherogram(PherogramComponentModel model) throws PartInitException {\r
-               PherogramViewPart.createView(model);\r
-       }\r
-\r
-\r
-       @Override\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               ISelection currentSelection = HandlerUtil.getCurrentSelection(event);\r
-               TreeNode treeNodeOfSelection = EditorUtil.getTreeNodeOfSelection(currentSelection);\r
-               if (treeNodeOfSelection != null && treeNodeOfSelection.getValue() instanceof SingleRead) {\r
-                   //TODO Can the parent node (containing the cut positions) be extracted from SingleRead?\r
-                       try {\r
-                           SingleRead singleRead = (SingleRead)treeNodeOfSelection.getValue();\r
-                           URI uri = null;\r
-                           if (singleRead.getPherogram() != null) {  // Pherogram objects without URI are possible.\r
-                               uri = MediaUtils.getFirstMediaRepresentationPart(singleRead.getPherogram()).getUri();\r
-                           }\r
-\r
-                           if (uri == null) {\r
-                       MessagingUtils.messageDialog("No pherogram available", this,\r
-                               "The selected read does not have an associated pherogram.");\r
-                           }\r
-                           else {\r
-                     showPherogram(new PherogramComponentModel(AlignmentEditor.readPherogram(uri)));\r
-                           }\r
-                       }\r
-               catch (Exception e) {\r
-                   MessagingUtils.errorDialog("Error", null, e.getLocalizedMessage(), "eu.etaxonomy.taxeditor.editor",\r
-                           e, false);\r
-               }\r
-        }\r
-        return null;\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SpecimenPropertyTester.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/SpecimenPropertyTester.java
deleted file mode 100644 (file)
index 17c8213..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-package eu.etaxonomy.taxeditor.editor.handler;
-
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.TreeNode;
-
-import eu.etaxonomy.cdm.model.molecular.Sequence;
-import eu.etaxonomy.cdm.model.molecular.SingleRead;
-import eu.etaxonomy.taxeditor.editor.EditorUtil;
-
-
-
-/**
- * Tests types of specimens to add items to the context menu.
- * 
- * @author pplitzner
- * @author BenStoever
- */
-public class SpecimenPropertyTester extends PropertyTester {
-    private static final String SEQUENCE = "isSequence";
-    private static final String SINGLE_READ = "isSingleRead";
-
-    
-    public SpecimenPropertyTester() {}
-
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-     */
-    /** {@inheritDoc} */
-    @Override
-    public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-        if (receiver instanceof IStructuredSelection) {
-            IStructuredSelection selection = (IStructuredSelection) receiver;
-            TreeNode treeNodeOfSelection = EditorUtil.getTreeNodeOfSelection(selection);
-            if (treeNodeOfSelection!=null) {
-                if (SEQUENCE.equals(property)) {
-                    return isSequence(treeNodeOfSelection.getValue());
-                }
-                else if (SINGLE_READ.equals(property)) {
-                       return isSingleReadAlignment(treeNodeOfSelection.getValue());
-                }
-            }
-        }
-        return false;
-    }
-
-    
-       private boolean isSequence(Object object) {
-       return (object instanceof Sequence);
-       }
-
-    
-       private boolean isSingleReadAlignment(Object object) {
-       return (object instanceof SingleRead);
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractAlignmentEditorHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractAlignmentEditorHandler.java
deleted file mode 100644 (file)
index 96ce973..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.ui.IEditorPart;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.model.AbstractUtility;\r
-\r
-\r
-\r
-/**\r
- * Abstract implementation for all handlers triggering actions in an active instance of\r
- * {@link AlignmentEditor}.\r
- *\r
- * @author Ben Stöver\r
- * @date 19.06.2015\r
- */\r
-public abstract class AbstractAlignmentEditorHandler extends AbstractHandler {\r
-    @Override\r
-    public Object execute(ExecutionEvent event) throws ExecutionException {\r
-        IEditorPart activeEditor = AbstractUtility.getActiveEditor();\r
-        if (activeEditor instanceof AlignmentEditor) {\r
-            doExecute(event, (AlignmentEditor)activeEditor);\r
-        }\r
-        return null;\r
-    }\r
-\r
-\r
-    public abstract void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException;\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractPherogramComponentHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/AbstractPherogramComponentHandler.java
deleted file mode 100644 (file)
index e7b92d6..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import info.bioinfweb.libralign.alignmentarea.AlignmentArea;\r
-import info.bioinfweb.libralign.dataarea.implementations.pherogram.PherogramArea;\r
-import info.bioinfweb.libralign.pherogram.PherogramComponent;\r
-\r
-import java.util.Iterator;\r
-\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.ui.IWorkbenchPart;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.editor.molecular.PherogramViewPart;\r
-import eu.etaxonomy.taxeditor.model.AbstractUtility;\r
-\r
-\r
-\r
-/**\r
- * Abstract handler implementation allows to performs the concrete operation either on an instance of\r
- * {@link PherogramViewPart} or all {@link AlignmentArea}s inside an instance of {@link AlignmentEditor}.\r
- *\r
- * @author Ben Stöver\r
- * @date 23.06.2015\r
- */\r
-public abstract class AbstractPherogramComponentHandler extends AbstractHandler {\r
-    @Override\r
-    public Object execute(ExecutionEvent event) throws ExecutionException {\r
-        IWorkbenchPart activePart = AbstractUtility.getActivePart();\r
-\r
-        if (activePart instanceof AlignmentEditor) {\r
-            AlignmentEditor editor = (AlignmentEditor)activePart;\r
-            Iterator<Integer> idIterator = editor.getReadsArea().getAlignmentModel().sequenceIDIterator();\r
-            while (idIterator.hasNext()) {\r
-                PherogramArea area = editor.getPherogramArea(idIterator.next());\r
-                if (area != null) {\r
-                    doExecute(event, area);\r
-                }\r
-            }\r
-        }\r
-        else if (activePart instanceof PherogramViewPart) {\r
-            doExecute(event, ((PherogramViewPart)activePart).getPherogramView().getTraceCurveView());\r
-        }\r
-        return null;\r
-    }\r
-\r
-\r
-    public abstract void doExecute(ExecutionEvent event, PherogramComponent component) throws ExecutionException;\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ChangePherogramQualityOutputType.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ChangePherogramQualityOutputType.java
deleted file mode 100644 (file)
index 18fc06f..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import info.bioinfweb.libralign.pherogram.PherogramComponent;\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-\r
-\r
-/**\r
- * Switches between the quality output types available for components displaying pherograms.\r
- *\r
- * @author Ben Stöver\r
- * @date 19.06.2015\r
- */\r
-public class ChangePherogramQualityOutputType extends AbstractPherogramComponentHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, PherogramComponent component) throws ExecutionException {\r
-        component.getFormats().changeQualityOutputType();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CreateConsensusSequenceHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CreateConsensusSequenceHandler.java
deleted file mode 100644 (file)
index 2a2cc73..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-\r
-\r
-\r
-/**\r
- * Handler that creates the consensus sequence from all single read sequences in the active instance\r
- * of {@link AlignmentEditor}. A previously present consensus sequence will be overwritten.\r
- *\r
- * @author Ben Stöver\r
- * @date 19.06.2015\r
- * @see UpdateConsensusSequenceHandler\r
- * @see AlignmentEditor#createConsensusSequence()\r
- */\r
-public class CreateConsensusSequenceHandler extends AbstractAlignmentEditorHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        editor.createConsensusSequence();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramLeftHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramLeftHandler.java
deleted file mode 100644 (file)
index 305d63e..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.model.MessagingUtils;\r
-\r
-\r
-\r
-/**\r
- * Handler that cuts the base call sequence of a pherogram attached to the current sequence on the left\r
- * of the current selection or cursor position.\r
- *\r
- * @author Ben Stöver\r
- * @date 15.06.2015\r
- */\r
-public class CutPherogramLeftHandler extends AbstractAlignmentEditorHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        String errorMessage = editor.cutPherogramLeft();\r
-        if (errorMessage != null) {\r
-            MessagingUtils.errorDialog("Unable to cut base call sequence", this, errorMessage, "eu.etaxonomy.taxeditor.editor", null, false);  //TODO set pluginID\r
-        }\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramRightHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/CutPherogramRightHandler.java
deleted file mode 100644 (file)
index 7844fc6..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.model.MessagingUtils;\r
-\r
-\r
-\r
-/**\r
- * Handler that cuts the base call sequence of a pherogram attached to the current sequence on the right\r
- * of the current selection or cursor position.\r
- *\r
- * @author BenStoever\r
- * @date 15.06.2015\r
- */\r
-public class CutPherogramRightHandler extends AbstractAlignmentEditorHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        String errorMessage = editor.cutPherogramRight();\r
-        if (errorMessage != null) {\r
-            MessagingUtils.errorDialog("Unable to cut base call sequence", this, errorMessage, "eu.etaxonomy.taxeditor.editor", null, false);  //TODO set pluginID\r
-        }\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ReverseComplementHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ReverseComplementHandler.java
deleted file mode 100644 (file)
index f8b003e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-\r
-\r
-\r
-/**\r
- * Reverse complements the single read sequence in an active {@link AlignmentEditor}, where the alignment cursor\r
- * is currently located.\r
- *\r
- * @author Ben Stöver\r
- */\r
-public class ReverseComplementHandler extends AbstractAlignmentEditorHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        editor.reverseComplementSelectedSequences();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleInsertOverwriteHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleInsertOverwriteHandler.java
deleted file mode 100644 (file)
index 283767b..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import java.util.Map;\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.PlatformUI;\r
-import org.eclipse.ui.commands.ICommandService;\r
-import org.eclipse.ui.commands.IElementUpdater;\r
-import org.eclipse.ui.menus.UIElement;\r
-\r
-import eu.etaxonomy.taxeditor.editor.handler.HandlerTools;\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.model.AbstractUtility;\r
-\r
-\r
-\r
-/**\r
- * Switches an {@link AlignmentEditor} between insertion and overwrite mode.\r
- *\r
- * @author Ben Stöver\r
- * @date 04.12.2014\r
- */\r
-public class ToggleInsertOverwriteHandler extends AbstractAlignmentEditorHandler implements IElementUpdater {\r
-       public static final String COMMAND_ID =\r
-                       "eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleInsertOverwrite";\r
-\r
-\r
-    private final ImageDescriptor INSERT_DESCRIPTOR = HandlerTools.createImageDescriptor("insert-16x16.png");\r
-    private final ImageDescriptor OVERWRITE_DESCRIPTOR = HandlerTools.createImageDescriptor("overwrite-16x16.png");\r
-\r
-\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        editor.toggleInsertOverwrite();\r
-    }\r
-\r
-\r
-       @Override\r
-       public void updateElement(UIElement element, @SuppressWarnings("rawtypes") Map parameters) {\r
-        IEditorPart activeEditor = AbstractUtility.getActiveEditor();\r
-               if (activeEditor instanceof AlignmentEditor) {\r
-                       if (((AlignmentEditor)activeEditor).isInsertMode()) {\r
-                           element.setIcon(INSERT_DESCRIPTOR);\r
-                               element.setText("INS");\r
-                               element.setTooltip("Click to switch to overwrite mode");\r
-                       }\r
-                       else {\r
-                element.setIcon(OVERWRITE_DESCRIPTOR);\r
-                               element.setText("OVR");\r
-                               element.setTooltip("Click to switch to insertion mode");\r
-                       }\r
-            ((ICommandService)PlatformUI.getWorkbench().getService(ICommandService.class)).refreshElements(\r
-                    ToggleLeftRightInsertionHandler.COMMAND_ID, null);\r
-               }\r
-       }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleLeftRightInsertionHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleLeftRightInsertionHandler.java
deleted file mode 100644 (file)
index d149eb1..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy\r
- * http://www.e-taxonomy.eu\r
- *\r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-import java.util.Map;\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.commands.IElementUpdater;\r
-import org.eclipse.ui.menus.UIElement;\r
-\r
-import eu.etaxonomy.taxeditor.editor.handler.HandlerTools;\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.model.AbstractUtility;\r
-\r
-\r
-\r
-/**\r
- * Switches an {@link AlignmentEditor} between insertion in the base sequence to\r
- * the left or to the right.\r
- *\r
- * @author Ben Stöver\r
- * @date 04.12.2014\r
- */\r
-public class ToggleLeftRightInsertionHandler extends AbstractAlignmentEditorHandler implements IElementUpdater {\r
-    public static final String COMMAND_ID = "eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.toggleLeftRightInsertion";\r
-\r
-\r
-    private final ImageDescriptor INSERT_LEFT_DESCRIPTOR =\r
-            HandlerTools.createImageDescriptor("pherogram-insert-left-16x16.png");\r
-    private final ImageDescriptor INSERT_RIGHT_DESCRIPTOR =\r
-            HandlerTools.createImageDescriptor("pherogram-insert-right-16x16.png");\r
-    private final ImageDescriptor INSERT_LEFT_DISABLED_DESCRIPTOR =\r
-            HandlerTools.createImageDescriptor("pherogram-insert-left-disabled-16x16.png");\r
-    private final ImageDescriptor INSERT_RIGHT_DISABLED_DESCRIPTOR =\r
-            HandlerTools.createImageDescriptor("pherogram-insert-right-disabled-16x16.png");\r
-\r
-\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        editor.toggleLeftRightInsertionInPherogram();\r
-    }\r
-\r
-\r
-    @Override\r
-    public void updateElement(UIElement element, @SuppressWarnings("rawtypes") Map parameters) {\r
-        IEditorPart activeEditor = AbstractUtility.getActiveEditor();\r
-        if (activeEditor instanceof AlignmentEditor) {\r
-            setBaseEnabled(((AlignmentEditor)activeEditor).isInsertMode());\r
-            if (((AlignmentEditor)activeEditor).isInsertLeftInPherogram()) {\r
-                element.setIcon(INSERT_LEFT_DESCRIPTOR);\r
-                element.setDisabledIcon(INSERT_LEFT_DISABLED_DESCRIPTOR);\r
-                element.setText("Left");\r
-                element.setTooltip("Switch to insert pherogram distorsions right of future edits.");\r
-            }\r
-            else {\r
-                element.setIcon(INSERT_RIGHT_DESCRIPTOR);\r
-                element.setDisabledIcon(INSERT_RIGHT_DISABLED_DESCRIPTOR);\r
-                element.setText("Right");\r
-                element.setTooltip("Switch to insert pherogram distorsions left of future edits.");\r
-            }\r
-        }\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramBaseCallLinesHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramBaseCallLinesHandler.java
deleted file mode 100644 (file)
index 43ceb31..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import info.bioinfweb.libralign.pherogram.PherogramComponent;\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-\r
-\r
-/**\r
- * @author BenStoever\r
- * @date 23.06.2015\r
- *\r
- */\r
-public class ToggleShowPherogramBaseCallLinesHandler extends AbstractPherogramComponentHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, PherogramComponent component) throws ExecutionException {\r
-        component.getFormats().toggleShowBaseCallLines();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramProbabilitiesHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/ToggleShowPherogramProbabilitiesHandler.java
deleted file mode 100644 (file)
index 41b03a0..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2015 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import info.bioinfweb.libralign.pherogram.PherogramComponent;\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-import eu.etaxonomy.taxeditor.editor.molecular.PherogramViewPart;\r
-\r
-\r
-\r
-/**\r
- * Toggles whether probability values (substitution, overcall and undercall) should be displayed\r
- * in pherogram areas of {@link AlignmentEditor} or {@link PherogramViewPart}.\r
- *\r
- * @author Ben Stöver\r
- * @date 23.06.2015\r
- */\r
-public class ToggleShowPherogramProbabilitiesHandler extends AbstractPherogramComponentHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, PherogramComponent component) throws ExecutionException {\r
-        component.getFormats().toggleShowProbabilityValues();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/UpdateConsensusSequenceHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/UpdateConsensusSequenceHandler.java
deleted file mode 100644 (file)
index 6bcdf98..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;\r
-\r
-\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor;\r
-\r
-\r
-\r
-public class UpdateConsensusSequenceHandler extends AbstractAlignmentEditorHandler {\r
-    @Override\r
-    public void doExecute(ExecutionEvent event, AlignmentEditor editor) throws ExecutionException {\r
-        editor.updateConsensusSequence();\r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/package-info.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/alignmenteditor/package-info.java
deleted file mode 100644 (file)
index bd0508a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-// $Id$\r
-/**\r
- * Copyright (C) 2015 EDIT\r
- * European Distributed Institute of Taxonomy\r
- * http://www.e-taxonomy.eu\r
- *\r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-/**\r
- * Contains handlers that trigger actions in an active instance of\r
- * {@link eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor}. Handlers opening\r
- * an alignment editor or pherogram view are not contained in here.\r
- *\r
- * @author Ben Stöver\r
- */\r
-package eu.etaxonomy.taxeditor.editor.handler.alignmenteditor;
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditor.java
deleted file mode 100644 (file)
index acf1aac..0000000
+++ /dev/null
@@ -1,717 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2014 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.molecular;
-
-
-import info.bioinfweb.libralign.alignmentarea.AlignmentArea;
-import info.bioinfweb.libralign.alignmentarea.selection.SelectionModel;
-import info.bioinfweb.libralign.alignmentarea.tokenpainter.NucleotideTokenPainter;
-import info.bioinfweb.libralign.dataarea.implementations.ConsensusSequenceArea;
-import info.bioinfweb.libralign.dataarea.implementations.SequenceIndexArea;
-import info.bioinfweb.libralign.dataarea.implementations.pherogram.PherogramArea;
-import info.bioinfweb.libralign.editsettings.EditSettingsChangeEvent;
-import info.bioinfweb.libralign.editsettings.EditSettingsListener;
-import info.bioinfweb.libralign.model.AlignmentModel;
-import info.bioinfweb.libralign.model.AlignmentModelChangeListener;
-import info.bioinfweb.libralign.model.AlignmentModelUtils;
-import info.bioinfweb.libralign.model.adapters.StringAdapter;
-import info.bioinfweb.libralign.model.events.SequenceChangeEvent;
-import info.bioinfweb.libralign.model.events.SequenceRenamedEvent;
-import info.bioinfweb.libralign.model.events.TokenChangeEvent;
-import info.bioinfweb.libralign.model.implementations.PackedAlignmentModel;
-import info.bioinfweb.libralign.model.tokenset.CharacterTokenSet;
-import info.bioinfweb.libralign.model.tokenset.TokenSet;
-import info.bioinfweb.libralign.multiplealignments.AlignmentAreaList;
-import info.bioinfweb.libralign.multiplealignments.MultipleAlignmentsContainer;
-import info.bioinfweb.libralign.pherogram.model.PherogramAreaModel;
-import info.bioinfweb.libralign.pherogram.model.ShiftChange;
-import info.bioinfweb.libralign.pherogram.provider.BioJavaPherogramProvider;
-import info.bioinfweb.libralign.pherogram.provider.PherogramProvider;
-import info.bioinfweb.libralign.pherogram.provider.ReverseComplementPherogramProvider;
-import info.bioinfweb.tic.SWTComponentFactory;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeMap;
-
-import org.biojava.bio.chromatogram.ChromatogramFactory;
-import org.biojava.bio.chromatogram.UnsupportedChromatogramFormatException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.commands.ICommandService;
-import org.eclipse.ui.part.EditorPart;
-
-import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
-import eu.etaxonomy.cdm.model.media.MediaUtils;
-import eu.etaxonomy.cdm.model.molecular.Sequence;
-import eu.etaxonomy.cdm.model.molecular.SequenceString;
-import eu.etaxonomy.cdm.model.molecular.SingleRead;
-import eu.etaxonomy.cdm.model.molecular.SingleReadAlignment;
-import eu.etaxonomy.cdm.model.molecular.SingleReadAlignment.Shift;
-import eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleInsertOverwriteHandler;
-import eu.etaxonomy.taxeditor.editor.handler.alignmenteditor.ToggleLeftRightInsertionHandler;
-import eu.etaxonomy.taxeditor.model.MessagingUtils;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
-
-
-
-/**
- * Editor component to edit a contig alignment used to combine different overlapping pherograms from Sanger sequencing to
- * a consensus sequence.
- * <p>
- * The contained GUI components used to edit the alignment come from <a href="http://bioinfweb.info/LibrAlign/">LibrAlign</a>.
- *
- * @author Ben Stöver
- * @author pplitzner
- * @date 04.08.2014
- */
-public class AlignmentEditor extends EditorPart {
-    public static final String ID = "eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor";
-
-       public static final int READS_AREA_INDEX = 1;
-    public static final int EDITABLE_CONSENSUS_AREA_INDEX = READS_AREA_INDEX + 1;
-    public static final int CONSENSUS_HINT_AREA_INDEX = EDITABLE_CONSENSUS_AREA_INDEX + 1;
-       public static final int PHEROGRAM_AREA_INDEX = 0;
-       public static final int CONSENSUS_DATA_AREA_INDEX = 0;
-       public static final String DEFAULT_READ_NAME_PREFIX = "Read ";
-       public static final String CONSENSUS_NAME = "Consensus";
-
-
-    private final ConversationHolder conversationHolder;
-
-       private final AlignmentModelChangeListener DIRTY_LISTENER = new AlignmentModelChangeListener() {
-                               @Override
-                               public <T> void afterTokenChange(TokenChangeEvent<T> e) {
-                                       setDirty();
-                               }
-
-                               @Override
-                               public <T> void afterSequenceRenamed(SequenceRenamedEvent<T> e) {
-                                       setDirty();
-                               }
-
-                               @Override
-                               public <T> void afterSequenceChange(SequenceChangeEvent<T> e) {
-                                       setDirty();
-                               }
-
-                               @Override
-                               public <T, U> void afterProviderChanged(AlignmentModel<T> oldProvider,
-                                               AlignmentModel<U> newProvider) {  // Not expected.
-
-                                       setDirty();
-                               }
-                       };
-
-    private MultipleAlignmentsContainer alignmentsContainer = null;
-    private final Map<Integer, SingleReadAlignment> cdmMap = new TreeMap<Integer, SingleReadAlignment>();  //TODO Move this to ContigSequenceDataProvider
-    private boolean dirty = false;
-
-
-    public AlignmentEditor() {
-       super();
-       conversationHolder = CdmStore.createConversation();
-       //conversationHolder = null;
-    }
-
-
-    private void refreshToolbarElement(String id) {
-               ICommandService commandService =
-                               (ICommandService)PlatformUI.getWorkbench().getActiveWorkbenchWindow().getService(ICommandService.class);
-               if (commandService != null) {
-                       commandService.refreshElements(id, Collections.EMPTY_MAP);
-               }
-    }
-
-
-    private void registerEditSettingListener(MultipleAlignmentsContainer container) {
-       container.getEditSettings().addListener(new EditSettingsListener() {
-                                       @Override
-                                       public void workingModeChanged(EditSettingsChangeEvent e) {}  // Currently nothing to do
-
-                                       @Override
-                                       public void insertLeftInDataAreaChanged(EditSettingsChangeEvent e) {
-                                               updateStatusBar();
-                                       refreshToolbarElement(ToggleLeftRightInsertionHandler.COMMAND_ID);
-                                       }
-
-                                       @Override
-                                       public void insertChanged(EditSettingsChangeEvent e) {
-                                               updateStatusBar();
-                                       refreshToolbarElement(ToggleInsertOverwriteHandler.COMMAND_ID);
-                                       }
-                               });
-    }
-
-
-  private AlignmentArea createIndexArea(MultipleAlignmentsContainer container, AlignmentArea labeledArea) {
-               AlignmentArea result = new AlignmentArea(container);
-               result.setAllowVerticalScrolling(false);
-               result.getDataAreas().getTopAreas().add(new SequenceIndexArea(result.getContentArea(), labeledArea));
-               return result;
-  }
-
-
-  private AlignmentArea createEditableAlignmentArea(MultipleAlignmentsContainer container, boolean allowVerticalScrolling) {
-               AlignmentArea result = new AlignmentArea(container);
-               result.setAllowVerticalScrolling(allowVerticalScrolling);
-
-               CharacterTokenSet tokenSet = CharacterTokenSet.newDNAInstance();  //TODO Should NUCLEOTIDE be used instead?
-               AlignmentModel<Character> provider = new PackedAlignmentModel<Character>(tokenSet);
-               result.setAlignmentModel(provider, false);
-               provider.getChangeListeners().add(DIRTY_LISTENER);
-               result.getPaintSettings().getTokenPainterList().set(0, new NucleotideTokenPainter());
-
-               return result;
-       }
-
-
-    private AlignmentArea createConsensusHintArea(MultipleAlignmentsContainer container,
-               AlignmentArea labeledArea) {
-
-               AlignmentArea result = new AlignmentArea(container);
-               result.setAllowVerticalScrolling(false);
-               result.getDataAreas().getBottomAreas().add(
-                               new ConsensusSequenceArea(result.getContentArea(), labeledArea));
-               return result;
-         }
-
-
-    private MultipleAlignmentsContainer getAlignmentsContainer() {
-       if (alignmentsContainer == null) {
-               alignmentsContainer = new MultipleAlignmentsContainer();
-
-               AlignmentAreaList list = alignmentsContainer.getAlignmentAreas();
-               AlignmentArea readsArea = createEditableAlignmentArea(alignmentsContainer, true);
-           list.add(createIndexArea(alignmentsContainer, readsArea));
-               list.add(readsArea);  // Make sure READS_AREA_INDEX is correct.
-               list.add(createEditableAlignmentArea(alignmentsContainer, false));  // Make sure COMSENSUS_AREA_INDEX is correct.
-               list.add(createConsensusHintArea(alignmentsContainer, readsArea));
-
-               registerEditSettingListener(alignmentsContainer);
-               }
-               return alignmentsContainer;
-       }
-
-
-    public AlignmentArea getReadsArea() {
-       return getAlignmentsContainer().getAlignmentAreas().get(READS_AREA_INDEX);
-    }
-
-
-    private AlignmentArea getEditableConsensusArea() {
-       return getAlignmentsContainer().getAlignmentAreas().get(EDITABLE_CONSENSUS_AREA_INDEX);
-    }
-
-
-    public boolean hasPherogram(int sequenceID) {
-        return getReadsArea().getDataAreas().getSequenceAreas(sequenceID).size() > PHEROGRAM_AREA_INDEX;
-    }
-
-
-    public PherogramArea getPherogramArea(int sequenceID) {
-        if (hasPherogram(sequenceID)) {
-            return (PherogramArea)getReadsArea().getDataAreas().getSequenceAreas(sequenceID).get(PHEROGRAM_AREA_INDEX);
-        }
-        else {
-            return null;
-        }
-    }
-
-
-    private ConsensusSequenceArea getConsensusHintDataArea() {
-        return (ConsensusSequenceArea)getAlignmentsContainer().getAlignmentAreas().
-                get(CONSENSUS_HINT_AREA_INDEX).getDataAreas().getBottomAreas().
-                get(CONSENSUS_DATA_AREA_INDEX);
-    }
-
-
-    @Deprecated  //TODO Remove as soon as testing period is over
-    private void createTestContents() {
-               // Just for testing:
-               try {
-                       addRead(new File("D:/Users/BenStoever/ownCloud/Dokumente/Projekte/EDITor/Quelltexte/LibrAlign branch/Repository/eu.etaxonomy.taxeditor.editor/src/main/resources/AlignmentTestData/JR430_JR-P01.ab1").toURI(), false);
-            //addRead(new File("D:/Users/BenStoever/ownCloud/Dokumente/Projekte/EDITor/Quelltexte/LibrAlign branch/Repository/eu.etaxonomy.taxeditor.editor/src/main/resources/AlignmentTestData/JR444_JR-P05.ab1").toURI(), false);
-            addRead(new File("D:/Users/BenStoever/ownCloud/Dokumente/Projekte/EDITor/Quelltexte/LibrAlign branch/Repository/eu.etaxonomy.taxeditor.editor/src/main/resources/AlignmentTestData/Test_qualityScore.scf").toURI(), false);
-
-                       // Add test consensus sequence:
-                       AlignmentModel consensusModel = getEditableConsensusArea().getAlignmentModel();
-                       int id = consensusModel.addSequence(CONSENSUS_NAME);
-                       Collection<Object> tokens = new ArrayList<Object>();  // First save tokens in a collection to avoid GUI updated for each token.
-                       tokens.add(consensusModel.getTokenSet().tokenByRepresentation("A"));
-                       tokens.add(consensusModel.getTokenSet().tokenByRepresentation("C"));
-                       tokens.add(consensusModel.getTokenSet().tokenByRepresentation("G"));
-                       tokens.add(consensusModel.getTokenSet().tokenByRepresentation("T"));
-                       consensusModel.insertTokensAt(id, 0, tokens);
-               }
-               catch (Exception e) {
-                       throw new RuntimeException(e);
-               }
-    }
-
-
-    private void readCDMData(Sequence sequenceNode) {
-       //TODO If called from somewhere else than createPartControl() the editorInput needs to be checked and previous contents need to be cleared (or updated).
-
-               // Add reads:
-               for (SingleReadAlignment singleReadAlignment : sequenceNode.getSingleReadAlignments()) {
-                       try {
-                               SingleRead pherogramInfo = singleReadAlignment.getSingleRead();
-                               URI uri = null;
-                               if (pherogramInfo.getPherogram() != null) {
-                                   uri = MediaUtils.getFirstMediaRepresentationPart(pherogramInfo.getPherogram()).getUri();
-                               }
-                               int id = addRead(DerivateLabelProvider.getDerivateText(pherogramInfo, conversationHolder),
-                                               uri,
-                                               singleReadAlignment.isReverseComplement(),
-                                               singleReadAlignment.getEditedSequence(),
-                                               singleReadAlignment.getFirstSeqPosition(),
-                                               singleReadAlignment.getLeftCutPosition(),
-                                               singleReadAlignment.getRightCutPosition(),
-                                               singleReadAlignment.getShifts());
-                               cdmMap.put(id, singleReadAlignment);
-                       }
-                       catch (Exception e) {  // Usually due to an error while trying to read the pherogram (e.g. due to an unsupported format or an invalid URI).
-                MessagingUtils.errorDialog("Error", null, "A single read was skipped because of the following error:\n\n" +
-                        e.getLocalizedMessage(), "eu.etaxonomy.taxeditor.editor", e, false);
-                       }
-               }
-
-               // Set consensus sequence:
-               AlignmentModel consensusProvider = getEditableConsensusArea().getAlignmentModel();
-               int id = consensusProvider.addSequence(CONSENSUS_NAME);
-               consensusProvider.insertTokensAt(id, 0, AlignmentModelUtils.charSequenceToTokenList(
-                               sequenceNode.getConsensusSequence().getString(), consensusProvider.getTokenSet()));
-               //TODO Can the consensus sequence also be null? / Should it be created here, if nothing is in the DB?
-    }
-
-
-       /* (non-Javadoc)
-     * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-     */
-    @Override
-    public void createPartControl(Composite parent) {
-               SWTComponentFactory.getInstance().getSWTComponent(getAlignmentsContainer(), parent, SWT.NONE);
-               updateStatusBar();
-
-               if (getEditorInput() instanceof AlignmentEditorInput) {
-                       if (((AlignmentEditorInput)getEditorInput()).getSequenceNodeUuid() != null) {
-                           Sequence sequenceNode = CdmStore.getService(ISequenceService.class).load(((AlignmentEditorInput)getEditorInput()).getSequenceNodeUuid());
-                       //re-load into the current session if it is already persisted in the DB
-                       if(sequenceNode!=null && sequenceNode.getId()!=0){
-                           sequenceNode = CdmStore.getService(ISequenceService.class).load(sequenceNode.getUuid());
-                       }
-                               readCDMData(sequenceNode);
-                       }
-                       else {
-                               createTestContents();  // This case will removed after the test phase and an exception should probably be thrown.
-                       }
-               }
-               else {
-                       throw new IllegalArgumentException("The editor input must have the type " +
-                                       AlignmentEditorInput.class.getCanonicalName());  //TODO What should be done here?
-               }
-       }
-
-
-    private void updateStatusBar() {
-        IActionBars bars = getEditorSite().getActionBars();
-        bars.getStatusLineManager().setMessage("Edit mode: " +
-                       (getReadsArea().getEditSettings().isInsert() ? "Insert" : "Overwrite") + "  " +
-                       "Insertion in pherogram: " +
-                       (getReadsArea().getEditSettings().isInsertLeftInDataArea() ? "Left" : "Right"));
-    }
-
-
-    private SingleReadAlignment.Shift[] convertToCDMShifts(PherogramAreaModel model) {
-       Iterator<ShiftChange> iterator = model.shiftChangeIterator();
-       List<Shift> shifts = new ArrayList<SingleReadAlignment.Shift>();
-       while (iterator.hasNext()) {
-               ShiftChange shiftChange = iterator.next();
-               shifts.add(new SingleReadAlignment.Shift(shiftChange.getBaseCallIndex(), shiftChange.getShiftChange()));
-       }
-       return shifts.toArray(new Shift[]{});
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void doSave(IProgressMonitor monitor) {
-       if (getEditorInput() instanceof AlignmentEditorInput) {
-               String taskName = "Saving alignment";
-            monitor.beginTask(taskName, 3);
-
-            //re-loading sequence to avoid session conflicts
-               Sequence sequenceNode = CdmStore.getService(ISequenceService.class).load(((AlignmentEditorInput)getEditorInput()).getSequenceNodeUuid());
-               StringAdapter stringProvider = new StringAdapter(getEditableConsensusArea().getAlignmentModel(), false);  // Throws an exception if a token has more than one character.
-
-               // Write consensus sequence:
-               SequenceString consensusSequenceObj = sequenceNode.getConsensusSequence();
-               String newConsensusSequence = stringProvider.getSequence(
-                               getEditableConsensusArea().getAlignmentModel().sequenceIDByName(CONSENSUS_NAME));
-               if (consensusSequenceObj == null) {
-                       sequenceNode.setConsensusSequence(SequenceString.NewInstance(newConsensusSequence));
-               }
-               else {
-                       consensusSequenceObj.setString(newConsensusSequence);
-               }
-
-               // Write single reads:
-               stringProvider.setUnderlyingProvider(getReadsArea().getAlignmentModel());
-               sequenceNode.getSingleReadAlignments().retainAll(cdmMap.values());  // Remove all reads that are not in the alignment anymore.
-               Iterator<Integer> iterator = getReadsArea().getAlignmentModel().sequenceIDIterator();
-               while (iterator.hasNext()) {
-                       int id = iterator.next();
-                       SingleReadAlignment singleRead = cdmMap.get(id);
-                       if (singleRead == null) {
-                           throw new InternalError("Creating new reads from AlignmentEditor not implemented.");
-                               //TODO Create new read object. => Shall it be allowed to add reads in the alignment editor which are not represented in the CDM tree before the alignment editor is saved?
-                               //singleRead = SingleReadAlignment.NewInstance(consensusSequence, singleRead, shifts, editedSequence);
-                       }
-
-                       singleRead.setEditedSequence(stringProvider.getSequence(id));
-
-                       PherogramAreaModel model = getPherogramArea(id).getModel();
-                       singleRead.setReverseComplement(model.getPherogramProvider() instanceof ReverseComplementPherogramProvider);  // Works only if ReverseComplementPherogramProvider instances are not nested.
-                       singleRead.setShifts(convertToCDMShifts(getPherogramArea(id).getModel()));
-                       singleRead.setFirstSeqPosition(model.getFirstSeqPos());
-                       singleRead.setLeftCutPosition(model.getLeftCutPosition());
-                       singleRead.setRightCutPosition(model.getRightCutPosition());
-               }
-
-               if (!conversationHolder.isBound()) {
-                conversationHolder.bind();
-            }
-            monitor.worked(1);
-
-            // Commit the conversation and start a new transaction immediately:
-            conversationHolder.commit(true);
-            monitor.worked(1);
-
-            dirty = false;
-            monitor.worked(1);
-            monitor.done();
-            firePropertyChange(PROP_DIRTY);
-       }
-       else {
-               //TODO Throw exception as soon as testing period which allows unlinked AlignmentEditor is over.
-       }
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#doSaveAs()
-     */
-    @Override
-    public void doSaveAs() {}
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-     */
-    @Override
-    public void init(IEditorSite site, IEditorInput input) throws PartInitException {
-        setSite(site);
-        setInput(input);
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#isDirty()
-     */
-    @Override
-    public boolean isDirty() {
-        return dirty;
-    }
-
-
-    private void setDirty() {
-       dirty = true;
-       firePropertyChange(IEditorPart.PROP_DIRTY);
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
-     */
-    @Override
-    public boolean isSaveAsAllowed() {
-        return false;  // "Save as" not allowed.
-    }
-
-
-    @Override
-    public void setFocus() {
-        if(conversationHolder!=null){
-            conversationHolder.bind();
-        }
-    }
-
-
-    public boolean isInsertMode() {
-        return getAlignmentsContainer().getEditSettings().isInsert();
-    }
-
-
-    public boolean isInsertLeftInPherogram() {
-        return getAlignmentsContainer().getEditSettings().isInsertLeftInDataArea();
-    }
-
-
-    public void toggleLeftRightInsertionInPherogram() {
-       getAlignmentsContainer().getEditSettings().toggleInsertLeftInDataArea();
-    }
-
-
-    public void toggleInsertOverwrite() {
-       getAlignmentsContainer().getEditSettings().toggleInsert();
-    }
-
-
-    private String cutPherogram(boolean left) {
-        SelectionModel selection = getReadsArea().getSelection();
-        if (selection.getCursorHeight() != 1) {
-            return "Cutting pherograms is only possible if exactly one row is selected.";
-        }
-        else {
-            PherogramArea pherogramArea =
-                    getPherogramArea(getReadsArea().getSequenceOrder().idByIndex(selection.getCursorRow()));
-            if (pherogramArea == null) {
-                return "There is no pherogram attached to the current sequence.";
-            }
-            else {
-                if (left) {
-                    if (pherogramArea.setLeftCutPositionBySelection()) {
-                        return null;
-                    }
-                    else {
-                        return "The left end of the selection lies outside the pherogram attached to this sequence.";
-                    }
-                }
-                else {
-                    if (pherogramArea.setRightCutPositionBySelection()) {
-                        return null;
-                    }
-                    else {
-                        return "The right end of the selection lies outside the pherogram attached to this sequence.";
-                    }
-                }
-            }
-        }
-    }
-
-
-    public String cutPherogramLeft() {
-        return cutPherogram(true);
-    }
-
-
-    public String cutPherogramRight() {
-        return cutPherogram(false);
-    }
-
-
-    public void reverseComplementSelectedSequences() {
-       SelectionModel selection = getReadsArea().getSelection();
-       AlignmentModel<?> model = getReadsArea().getAlignmentModel();
-       for (int row = selection.getFirstRow(); row < selection.getFirstRow() + selection.getCursorHeight(); row++) {
-                       int sequenceID = getReadsArea().getSequenceOrder().idByIndex(row);
-                       PherogramArea area = getPherogramArea(sequenceID);
-                       PherogramAreaModel pherogramAlignmentModel = area.getModel();
-                       AlignmentModelUtils.reverseComplement(model, sequenceID,
-                               pherogramAlignmentModel.editableIndexByBaseCallIndex(
-                                       pherogramAlignmentModel.getLeftCutPosition()).getBeforeValidIndex(),
-                               pherogramAlignmentModel.editableIndexByBaseCallIndex(
-                                       pherogramAlignmentModel.getRightCutPosition()).getAfterValidIndex());
-                       pherogramAlignmentModel.reverseComplement();
-               }
-    }
-
-
-    /**
-     * Recreates the whole consensus sequence from all single read sequences. The previous consensus
-     * sequence is overwritte.
-     */
-    @SuppressWarnings("unchecked")
-    public <T> void createConsensusSequence() {
-        ConsensusSequenceArea area = getConsensusHintDataArea();
-        AlignmentModel<T> model = (AlignmentModel<T>)getEditableConsensusArea().getAlignmentModel();
-        int sequenceID = model.sequenceIDIterator().next();  // There is always one sequence contained.
-        int length = getReadsArea().getAlignmentModel().getMaxSequenceLength();
-
-        Collection<T> tokens = new ArrayList<T>(length);
-        for (int column = 0; column < length; column++) {
-            tokens.add(model.getTokenSet().tokenByRepresentation(area.getConsensusToken(column)));
-        }
-
-        model.removeTokensAt(sequenceID, 0, model.getSequenceLength(sequenceID));
-        model.insertTokensAt(sequenceID, 0, tokens);
-    }
-
-
-    /**
-     * Updates the current consensus sequence by replacing gaps by the according consensus tokens
-     * calculated from the single read sequences and extends the consensus sequence if necessary.
-     */
-    @SuppressWarnings("unchecked")
-    public <T> void updateConsensusSequence() {
-        ConsensusSequenceArea area = getConsensusHintDataArea();
-        AlignmentModel<T> model = (AlignmentModel<T>)getEditableConsensusArea().getAlignmentModel();
-        TokenSet<T> tokenSet = model.getTokenSet();
-        int sequenceID = model.sequenceIDIterator().next();  // There is always one sequence contained.
-        int currentConsensusLength = model.getSequenceLength(sequenceID);
-        int overallLength = getReadsArea().getAlignmentModel().getMaxSequenceLength();
-
-        // Replace gaps by new information:
-        for (int column = 0; column < currentConsensusLength; column++) {
-            if (tokenSet.isGapToken(model.getTokenAt(sequenceID, column))) {
-                T newToken = tokenSet.tokenByRepresentation(area.getConsensusToken(column));
-                if (!tokenSet.isGapToken(newToken)) {
-                    model.setTokenAt(sequenceID, column, newToken);
-                }
-            }
-        }
-
-        // Append additional tokens:
-        if (overallLength > currentConsensusLength) {
-            Collection<T> tokens = new ArrayList<T>(overallLength);
-            for (int column = currentConsensusLength; column < overallLength; column++) {
-                tokens.add(tokenSet.tokenByRepresentation(area.getConsensusToken(column)));
-            }
-            model.appendTokens(sequenceID, tokens);
-        }
-    }
-
-
-       public static PherogramProvider readPherogram(URI uri) throws IOException, UnsupportedChromatogramFormatException {
-           PherogramProvider result;
-               InputStream stream = uri.toURL().openStream();
-               try {
-                       result = new BioJavaPherogramProvider(ChromatogramFactory.create(stream));
-               }
-               finally {
-                       stream.close();
-               }
-               return result;
-       }
-
-
-       private String newReadName() {
-               int index = 1;
-               while (getReadsArea().getAlignmentModel().sequenceIDByName(DEFAULT_READ_NAME_PREFIX + index)
-                               != AlignmentModel.NO_SEQUENCE_FOUND) {
-
-                       index++;
-               }
-               return DEFAULT_READ_NAME_PREFIX + index;
-       }
-
-
-    public void addRead(URI pherogramURI, boolean reverseComplemented) throws IOException, UnsupportedChromatogramFormatException {
-       addRead(newReadName(), pherogramURI, reverseComplemented, null, null, null, null, null);
-    }
-
-
-    /**
-     * Adds a new sequence with attached phergram data area to the reads alignment.
-     * <p>
-     * If {@code null} is specified as {@code editedSequence} the base call sequence from the pherogram will
-     * be set as the edited sequence. If {@code null} is specified as {@code shifts} no shifts between the edited
-     * and the base calls sequence are assumed.
-     *
-     * @param name the name of the new sequence
-     * @param pherogramURI the URI where the associated pherogram file is located
-     * @param reverseComplemented Specify {@code true} here, if the reverse complement of the pherogram data should
-     *        be added, {@code false} otherwise.
-     * @param editedSequence the edited version of the base call sequence (May be {@code null}.)
-     * @param shifts the alignment information that links the edited and the base call sequence (May be {@code null}.)
-     * @return the sequence ID of the added read
-     * @throws IOException if an error occurred when trying to read the pherogram file
-     * @throws UnsupportedChromatogramFormatException if the format of the pherogram file is not supported
-     */
-    public int addRead(String name, URI pherogramURI, boolean reverseComplemented, String editedSequence,
-            Integer firstSeqPos, Integer leftCutPos, Integer rightCutPos, SingleReadAlignment.Shift[] shifts)
-            throws IOException, UnsupportedChromatogramFormatException {
-
-               AlignmentModel provider = getReadsArea().getAlignmentModel();
-               PherogramProvider pherogramProvider = null;
-               if (pherogramURI != null) {
-                   pherogramProvider = readPherogram(pherogramURI);  // Must happen before a sequence is added, because it might throw an exception.
-            if (reverseComplemented) {
-                pherogramProvider = new ReverseComplementPherogramProvider(pherogramProvider);
-            }
-               }
-
-        // Create sequence:
-               provider.addSequence(name);
-               int id = provider.sequenceIDByName(name);
-
-               // Set edited sequence:
-               Collection<Object> tokens = null;  // First save tokens in a collection to avoid GUI updated for each token.
-               if (editedSequence != null) {
-                       tokens = AlignmentModelUtils.charSequenceToTokenList(editedSequence, provider.getTokenSet());
-               }
-               else if (pherogramProvider != null) {  // Copy base call sequence into alignment:
-                       tokens = new ArrayList<Object>();
-                       for (int i = 0; i < pherogramProvider.getSequenceLength(); i++) {
-                               tokens.add(provider.getTokenSet().tokenByRepresentation(
-                                       Character.toString(pherogramProvider.getBaseCall(i))));
-                       }
-                       setDirty();
-               }
-
-               if (tokens != null) {  // If either an edited sequence or a pherogram URI was provided.
-                   provider.insertTokensAt(id, 0, tokens);
-               // Create pherogram area:
-               PherogramArea pherogramArea = new PherogramArea(getReadsArea().getContentArea(),
-                       new PherogramAreaModel(pherogramProvider));
-
-               // Set position properties and shifts:
-               PherogramAreaModel model = pherogramArea.getModel();
-               if ((firstSeqPos != null) && (leftCutPos != null)) {
-                   model.setFirstSeqLeftCutPos(firstSeqPos, leftCutPos);
-               }
-               if (rightCutPos != null) {
-                   model.setRightCutPosition(rightCutPos);
-               }
-               if ((shifts != null) && (shifts.length > 0)) {
-                   for (int i = 0; i < shifts.length; i++) {
-                       model.addShiftChange(shifts[i].position, shifts[i].shift);
-                   }
-                   setDirty();
-               }
-
-               // Add pherogram area to GUI:
-               pherogramArea.addMouseListener(new PherogramMouseListener(pherogramArea));
-               getReadsArea().getDataAreas().getSequenceAreas(id).add(pherogramArea);
-               }
-
-               return id;
-       }
-}
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditorInput.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditorInput.java
deleted file mode 100644 (file)
index eea3525..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2014 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.editor.molecular;
-
-
-import java.util.UUID;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-
-
-
-/**
- * @author pplitzner
- * @author Ben Stöver
- * @date 04.08.2014
- */
-public class AlignmentEditorInput implements IEditorInput {
-    private static final String name = "AlignmentEditor";
-
-
-    private final UUID sequenceNodeUuid;
-
-
-    public AlignmentEditorInput(UUID sequenceNodeUuid) {
-               super();
-               this.sequenceNodeUuid = sequenceNodeUuid;
-       }
-
-
-       /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-     */
-    @Override
-    public Object getAdapter(Class adapter) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#exists()
-     */
-    @Override
-    public boolean exists() {
-        // TODO Auto-generated method stub
-        return false;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-     */
-    @Override
-    public ImageDescriptor getImageDescriptor() {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getName()
-     */
-    @Override
-    public String getName() {
-        return name;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getPersistable()
-     */
-    @Override
-    public IPersistableElement getPersistable() {
-        return null;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getToolTipText()
-     */
-    @Override
-    public String getToolTipText() {
-        return name;
-    }
-
-
-       /**
-        * Returns the {@link UUID} of the sequence CDM node that should be edited by the {@link AlignmentEditor} this object
-        * is used with.
-        *
-        * @return the uuid of the CDM node to work on
-        */
-       public UUID getSequenceNodeUuid() {
-               return sequenceNodeUuid;
-       }
-
-
-       @Override
-       public int hashCode() {
-               final int prime = 31;
-               int result = 1;
-               result = prime * result
-                               + ((sequenceNodeUuid == null) ? 0 : sequenceNodeUuid.hashCode());
-               return result;
-       }
-
-
-       @Override
-       public boolean equals(Object obj) {
-               if (this == obj) {
-            return true;
-        }
-               if (obj == null) {
-            return false;
-        }
-               if (getClass() != obj.getClass()) {
-            return false;
-        }
-               AlignmentEditorInput other = (AlignmentEditorInput) obj;
-               if (sequenceNodeUuid == null) {
-                       if (other.sequenceNodeUuid != null) {
-                return false;
-            }
-               } else if (!sequenceNodeUuid.equals(other.sequenceNodeUuid)) {
-            return false;
-        }
-               return true;
-       }
-}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramMouseListener.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramMouseListener.java
deleted file mode 100644 (file)
index 5444215..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.molecular;\r
-\r
-\r
-import info.bioinfweb.libralign.dataarea.implementations.pherogram.PherogramArea;\r
-import info.bioinfweb.tic.input.TICMouseAdapter;\r
-import info.bioinfweb.tic.input.TICMouseEvent;\r
-\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.editor.handler.ShowPherogramHandler;\r
-import eu.etaxonomy.taxeditor.model.MessagingUtils;\r
-\r
-\r
-\r
-/**\r
- * Listens to mouse events on data areas displaying a pherogram in {@link AlignmentEditor}.\r
- *\r
- * @author Ben Stöver\r
- * @date 25.11.2014\r
- */\r
-public class PherogramMouseListener extends TICMouseAdapter {\r
-       private final PherogramArea area;\r
-\r
-\r
-       public PherogramMouseListener(PherogramArea area) {\r
-               super();\r
-               this.area = area;\r
-       }\r
-\r
-\r
-       @Override\r
-       public boolean mousePressed(TICMouseEvent event) {\r
-               if (event.getClickCount() == 2) {  // Double click\r
-                       try {\r
-                           ShowPherogramHandler.showPherogram(area.getModel());\r
-                       }\r
-                       catch (PartInitException e) {\r
-                MessagingUtils.errorDialog("Unable to create pherogram view", null, e.getLocalizedMessage(),\r
-                        "eu.etaxonomy.taxeditor.editor",  e, false);  //TODO set pluginID\r
-                       }\r
-            return true;\r
-               }\r
-               else {\r
-                   return false;\r
-               }\r
-       }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/PherogramViewPart.java
deleted file mode 100644 (file)
index 9d79e27..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy\r
-* http://www.e-taxonomy.eu\r
-*\r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.molecular;\r
-\r
-\r
-import info.bioinfweb.libralign.pherogram.PherogramFormats.QualityOutputType;\r
-import info.bioinfweb.libralign.pherogram.model.PherogramComponentModel;\r
-import info.bioinfweb.libralign.pherogram.view.PherogramView;\r
-import info.bioinfweb.tic.SWTComponentFactory;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.PlatformUI;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-\r
-\r
-/**\r
- * Component that allows to view a pherogram without the distortion due to aligning it to a sequence as in\r
- * {@link AlignmentEditor}.\r
- *\r
- * @author Ben Stöver\r
- * @date Nov 20, 2014\r
- */\r
-public class PherogramViewPart extends ViewPart {\r
-    public static final String ID = "eu.etaxonomy.taxeditor.editor.molecular.PherogramView";\r
-\r
-    private PherogramView pherogramView = null;\r
-\r
-\r
-    public static PherogramViewPart createView(PherogramComponentModel model) throws PartInitException {\r
-        PherogramViewPart view = (PherogramViewPart)PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView(ID);\r
-        view.getPherogramView().getTraceCurveView().setModel(model);\r
-        view.getPherogramView().assignSize();\r
-        return view;\r
-    }\r
-\r
-\r
-       public PherogramView getPherogramView() {\r
-               if (pherogramView == null) {\r
-                       pherogramView = new PherogramView();\r
-                       pherogramView.getTraceCurveView().getFormats().setShowProbabilityValues(true);\r
-                       pherogramView.getTraceCurveView().setHorizontalScale(1);\r
-                       pherogramView.getTraceCurveView().setVerticalScale(100);\r
-                       pherogramView.getTraceCurveView().getFormats().setQualityOutputType(QualityOutputType.NONE);  //TODO Make this user defined\r
-                       pherogramView.getTraceCurveView().getFormats().setShowProbabilityValues(false);\r
-               }\r
-               return pherogramView;\r
-       }\r
-\r
-\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               SWTComponentFactory.getInstance().getSWTComponent(getPherogramView(), parent, SWT.NONE);\r
-               getPherogramView().assignSize();\r
-       }\r
-\r
-\r
-       @Override\r
-       public void setFocus() {}  // nothing to do\r
-}\r